From 9e0ed182aa86add5fecf6d575405687eb7c61f70 Mon Sep 17 00:00:00 2001 From: pmenke Date: Mon, 24 May 2021 17:12:31 +0200 Subject: [PATCH 01/18] sdrplay: init at 3.07.1 this adds support for software defined radio (SDR) devices by SDRplay. SDRplay provides an unfree binary library and api-service as well as a MIT licensed adapter library for SoapySDR for integration with many popular SDR applications. --- nixos/modules/module-list.nix | 1 + nixos/modules/services/misc/sdrplay.nix | 35 +++++++++++++ pkgs/applications/radio/sdrplay/default.nix | 51 +++++++++++++++++++ .../radio/soapysdrplay/default.nix | 29 +++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 5 files changed, 120 insertions(+) create mode 100644 nixos/modules/services/misc/sdrplay.nix create mode 100644 pkgs/applications/radio/sdrplay/default.nix create mode 100644 pkgs/applications/radio/soapysdrplay/default.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index aa4e2ccc46bc..e51c833a01ca 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -547,6 +547,7 @@ ./services/misc/ripple-data-api.nix ./services/misc/serviio.nix ./services/misc/safeeyes.nix + ./services/misc/sdrplay.nix ./services/misc/sickbeard.nix ./services/misc/siproxd.nix ./services/misc/snapper.nix diff --git a/nixos/modules/services/misc/sdrplay.nix b/nixos/modules/services/misc/sdrplay.nix new file mode 100644 index 000000000000..2801108f0828 --- /dev/null +++ b/nixos/modules/services/misc/sdrplay.nix @@ -0,0 +1,35 @@ +{ config, lib, pkgs, ... }: +with lib; +{ + options.services.sdrplayApi = { + enable = mkOption { + default = false; + example = true; + description = '' + Whether to enable the SDRplay API service and udev rules. + + + To enable integration with SoapySDR and GUI applications like gqrx create an overlay containing + soapysdr-with-plugins = super.soapysdr.override { extraPackages = [ super.soapysdrplay ]; }; + + ''; + type = lib.types.bool; + }; + }; + + config = mkIf config.services.sdrplayApi.enable { + systemd.services.sdrplayApi = { + description = "SDRplay API Service"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${pkgs.sdrplay}/bin/sdrplay_apiService"; + DynamicUser = true; + Restart = "on-failure"; + RestartSec = "1s"; + }; + }; + services.udev.packages = [ pkgs.sdrplay ]; + + }; +} diff --git a/pkgs/applications/radio/sdrplay/default.nix b/pkgs/applications/radio/sdrplay/default.nix new file mode 100644 index 000000000000..d12b12ecc13c --- /dev/null +++ b/pkgs/applications/radio/sdrplay/default.nix @@ -0,0 +1,51 @@ +{ stdenv, lib, fetchurl, autoPatchelfHook, udev }: +let + arch = if stdenv.isx86_64 then "x86_64" + else if stdenv.isi686 then "i686" + else throw "unsupported architecture"; +in stdenv.mkDerivation rec { + name = "sdrplay"; + version = "3.07.1"; + + src = fetchurl { + url = "https://www.sdrplay.com/software/SDRplay_RSP_API-Linux-${version}.run"; + sha256 = "1a25c7rsdkcjxr7ffvx2lwj7fxdbslg9qhr8ghaq1r53rcrqgzmf"; + }; + + nativeBuildInputs = [ autoPatchelfHook ]; + + buildInputs = [ udev stdenv.cc.cc.lib ]; + + unpackPhase = '' + sh "$src" --noexec --target source + ''; + + sourceRoot = "source"; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/{bin,lib,include,lib/udev/rules.d} + majorVersion="${lib.concatStringsSep "." (lib.take 1 (builtins.splitVersion version))}" + majorMinorVersion="${lib.concatStringsSep "." (lib.take 2 (builtins.splitVersion version))}" + libName="libsdrplay_api" + cp "${arch}/$libName.so.$majorMinorVersion" $out/lib/ + ln -s "$out/lib/$libName.so.$majorMinorVersion" "$out/lib/$libName.so.$majorVersion" + ln -s "$out/lib/$libName.so.$majorVersion" "$out/lib/$libName.so" + cp "${arch}/sdrplay_apiService" $out/bin/ + cp -r inc/* $out/include/ + cp 66-mirics.rules $out/lib/udev/rules.d/ + ''; + + meta = with lib; { + description = "SDRplay API"; + longDescription = '' + Proprietary library and api service for working with SDRplay devices. For documentation and licensing details see + https://www.sdrplay.com/docs/SDRplay_API_Specification_v${lib.concatStringsSep "." (lib.take 2 (builtins.splitVersion version))}.pdf + ''; + homepage = "https://www.sdrplay.com/downloads/"; + license = licenses.unfree; + maintainers = [ maintainers.pmenke ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/radio/soapysdrplay/default.nix b/pkgs/applications/radio/soapysdrplay/default.nix new file mode 100644 index 000000000000..dbee593bd0d6 --- /dev/null +++ b/pkgs/applications/radio/soapysdrplay/default.nix @@ -0,0 +1,29 @@ +{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, soapysdr, sdrplay }: + +stdenv.mkDerivation { + name = "soapysdr-sdrplay3"; + version = "20210425"; + + src = fetchFromGitHub { + owner = "pothosware"; + repo = "SoapySDRPlay3"; + rev = "e6fdb719b611b1dfb7f26c56a4df1e241bd10129"; + sha256 = "0rrylp3ikrva227hjy60v4n6d6yvdavjsad9kszw9s948mwiashi"; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + + buildInputs = [ soapysdr sdrplay ]; + + cmakeFlags = [ + "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" + ]; + + meta = with lib; { + description = "Soapy SDR module for SDRplay"; + homepage = "https://github.com/pothosware/SoapySDRPlay3"; + license = licenses.mit; + maintainers = [ maintainers.pmenke ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 470034df6d21..f2800b031f56 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17833,6 +17833,8 @@ in sdnotify-wrapper = skawarePackages.sdnotify-wrapper; + sdrplay = callPackage ../applications/radio/sdrplay {}; + sblim-sfcc = callPackage ../development/libraries/sblim-sfcc {}; selinux-sandbox = callPackage ../os-specific/linux/selinux-sandbox { }; @@ -17938,6 +17940,8 @@ in soapyremote = callPackage ../applications/radio/soapyremote { }; + soapysdrplay = callPackage ../applications/radio/soapysdrplay { }; + soapysdr-with-plugins = callPackage ../applications/radio/soapysdr { extraPackages = [ limesuite From 724ed08df02546fea2ab38613d615dd47461528c Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 29 May 2021 00:18:32 +0200 Subject: [PATCH 02/18] nixos/wordpress: regenerate secret keys if misspelled key name is found A secret key generated by the nixos module was misspelled, which could possibly impact the security of session cookies. To recover from this situation we will wipe all security keys that were previously generated by the NixOS module, when the misspelled one is found. This will result in all session cookies being invalidated. This is confirmed by the wordpress documentation: > You can change these at any point in time to invalidate all existing > cookies. This does mean that all users will have to login again. https://wordpress.org/support/article/editing-wp-config-php/#security-keys Meanwhile this issue shouldn't be too grave, since the salting function of wordpress will rely on the concatenation of both the user-provided and automatically generated values, that are stored in the database. > Secret keys are located in two places: in the database and in the > wp-config.php file. The secret key in the database is randomly > generated and will be appended to the secret keys in wp-config.php. https://developer.wordpress.org/reference/functions/wp_salt/ Fixes: 2adb03fdaea6186299c6ff578bb6814d8f3bb30b ("nixos/wordpress: generate secrets locally") Reported-by: Moritz Hedtke --- nixos/modules/services/web-apps/wordpress.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/wordpress.nix b/nixos/modules/services/web-apps/wordpress.nix index f251cfe32db6..775ecb3acaf0 100644 --- a/nixos/modules/services/web-apps/wordpress.nix +++ b/nixos/modules/services/web-apps/wordpress.nix @@ -61,8 +61,10 @@ let ?> ''; - secretsVars = [ "AUTH_KEY" "SECURE_AUTH_KEY" "LOOGGED_IN_KEY" "NONCE_KEY" "AUTH_SALT" "SECURE_AUTH_SALT" "LOGGED_IN_SALT" "NONCE_SALT" ]; + secretsVars = [ "AUTH_KEY" "SECURE_AUTH_KEY" "LOGGED_IN_KEY" "NONCE_KEY" "AUTH_SALT" "SECURE_AUTH_SALT" "LOGGED_IN_SALT" "NONCE_SALT" ]; secretsScript = hostStateDir: '' + # The match in this line is not a typo, see https://github.com/NixOS/nixpkgs/pull/124839 + grep -q "LOOGGED_IN_KEY" "${hostStateDir}/secret-keys.php" && rm "${hostStateDir}/secret-keys.php" if ! test -e "${hostStateDir}/secret-keys.php"; then umask 0177 echo "> "${hostStateDir}/secret-keys.php" From 91b22b4917b23e729651a2f59eab07c48d14b90e Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sat, 29 May 2021 04:18:30 +0000 Subject: [PATCH 03/18] fly: 7.3.0 -> 7.3.1 --- pkgs/development/tools/continuous-integration/fly/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/continuous-integration/fly/default.nix b/pkgs/development/tools/continuous-integration/fly/default.nix index b34e1514750d..a4769b10b352 100644 --- a/pkgs/development/tools/continuous-integration/fly/default.nix +++ b/pkgs/development/tools/continuous-integration/fly/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "fly"; - version = "7.3.0"; + version = "7.3.1"; src = fetchFromGitHub { owner = "concourse"; repo = "concourse"; rev = "v${version}"; - sha256 = "sha256-Hj6MqDTXGFuKNuG+bV154WnTR3BRnh9JcBuMecMKPY8="; + sha256 = "sha256-JtzJDbln+n05oJjA/ydZWaH4dIPLL/ZsNg+Gr+YBcng="; }; vendorSha256 = "sha256-30rrRkPIH0sr8koKRLs1Twe6Z55+lr9gkgUDrY+WOTw="; From e88d1aedfa43d6b7026048ef1510540aef45ca58 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 29 May 2021 12:02:54 +0200 Subject: [PATCH 04/18] python3Packages.evohome-async: 0.3.8 -> 0.3.15 --- pkgs/development/python-modules/evohome-async/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/evohome-async/default.nix b/pkgs/development/python-modules/evohome-async/default.nix index 0f38faf57340..908d68dd27e9 100644 --- a/pkgs/development/python-modules/evohome-async/default.nix +++ b/pkgs/development/python-modules/evohome-async/default.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "evohome-async"; - version = "0.3.8"; + version = "0.3.15"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "zxdavb"; repo = pname; rev = version; - sha256 = "04xy72k79cnb8pc19v5jzkc0djazfm6pbm10ysphx06ndwvxr9mn"; + sha256 = "sha256-/dZRlcTcea26FEpw/XDItKh4ncr/eEFQcdfIE2KIMo8="; }; propagatedBuildInputs = [ From af44c17b5db241c547536ce16341c84dc247c035 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Sat, 29 May 2021 21:20:19 +0200 Subject: [PATCH 05/18] welle-io: 2.2 -> 2.3 --- pkgs/applications/radio/welle-io/default.nix | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/radio/welle-io/default.nix b/pkgs/applications/radio/welle-io/default.nix index 97bf84a2bf39..cfd339c2d1ea 100644 --- a/pkgs/applications/radio/welle-io/default.nix +++ b/pkgs/applications/radio/welle-io/default.nix @@ -1,20 +1,17 @@ { mkDerivation, lib, fetchFromGitHub, cmake, pkg-config , qtbase, qtcharts, qtmultimedia, qtquickcontrols, qtquickcontrols2, qtgraphicaleffects -, faad2, rtl-sdr, soapysdr-with-plugins, libusb-compat-0_1, fftwSinglePrec, lame, mpg123 }: -let - - version = "2.2"; - -in mkDerivation { +, faad2, rtl-sdr, soapysdr-with-plugins, libusb-compat-0_1, fftwSinglePrec, lame, mpg123 +} : +mkDerivation rec { pname = "welle-io"; - inherit version; + version = "2.3"; src = fetchFromGitHub { owner = "AlbrechtL"; repo = "welle.io"; rev = "v${version}"; - sha256 = "04fpm6sc431dl9i5h53xpd6k85j22sv8aawl7b6wv2fzpfsd9fwa"; + sha256 = "1xl1lanw0xgmgks67dbfb2h52jxnrd1i2zik56v0q8dwsr7f0daw"; }; nativeBuildInputs = [ cmake pkg-config ]; From 0853275727138c6bb9ade80aa8d2e0f298044f47 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Sat, 29 May 2021 21:31:32 +0200 Subject: [PATCH 06/18] mpich: 3.4.1 -> 3.4.2 --- pkgs/development/libraries/mpich/default.nix | 22 +------ .../libraries/mpich/jsonc-test.patch | 62 ------------------- 2 files changed, 3 insertions(+), 81 deletions(-) delete mode 100644 pkgs/development/libraries/mpich/jsonc-test.patch diff --git a/pkgs/development/libraries/mpich/default.nix b/pkgs/development/libraries/mpich/default.nix index d2cbee14c3a0..9227cd705430 100644 --- a/pkgs/development/libraries/mpich/default.nix +++ b/pkgs/development/libraries/mpich/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchurl, perl, gfortran -, openssh, hwloc, autoconf, automake, libtool +, openssh, hwloc # either libfabric or ucx work for ch4backend on linux. On darwin, neither of # these libraries currently build so this argument is ignored on Darwin. , ch4backend @@ -11,29 +11,13 @@ assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric"); stdenv.mkDerivation rec { pname = "mpich"; - version = "3.4.1"; + version = "3.4.2"; src = fetchurl { url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz"; - sha256 = "09wpfw9lsrc84vcmfw94razd4xv4znx4mmg7rqmljvgg0jc96dl8"; + sha256 = "1gw7qpb27mhsj7ip0hhljshgpwvz2hmyhizhlp6793afp2lbw6aw"; }; - patches = [ - # Reverts an upstream change that causes json-c test to fail - ./jsonc-test.patch - ]; - - # Required for the json-c patch - nativeBuildInputs = [ autoconf automake libtool ]; - - # Update configure after patch - postPatch = '' - cd modules/json-c - ./autogen.sh - cd ../.. - ''; - - configureFlags = [ "--enable-shared" "--enable-sharedlib" diff --git a/pkgs/development/libraries/mpich/jsonc-test.patch b/pkgs/development/libraries/mpich/jsonc-test.patch deleted file mode 100644 index 2f8d87b409b4..000000000000 --- a/pkgs/development/libraries/mpich/jsonc-test.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- b/modules/json-c/configure.ac -+++ a/modules/json-c/configure.ac -@@ -75,7 +75,7 @@ - AC_FUNC_VPRINTF - AC_FUNC_MEMCMP - AC_CHECK_FUNCS([realloc]) -+AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open strncasecmp setlocale) --AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf open strncasecmp setlocale) - AC_CHECK_DECLS([INFINITY], [], [], [[#include ]]) - AC_CHECK_DECLS([nan], [], [], [[#include ]]) - AC_CHECK_DECLS([isnan], [], [], [[#include ]]) ---- b/modules/json-c/json_pointer.c -+++ a/modules/json-c/json_pointer.c -@@ -208,7 +208,7 @@ - } - - va_start(args, path_fmt); -+ rc = vasprintf(&path_copy, path_fmt, args); -- rc = json_vasprintf(&path_copy, path_fmt, args); - va_end(args); - - if (rc < 0) -@@ -287,7 +287,7 @@ - - /* pass a working copy to the recursive call */ - va_start(args, path_fmt); -+ rc = vasprintf(&path_copy, path_fmt, args); -- rc = json_vasprintf(&path_copy, path_fmt, args); - va_end(args); - - if (rc < 0) ---- b/modules/json-c/printbuf.c -+++ a/modules/json-c/printbuf.c -@@ -129,7 +129,7 @@ - would have been written - this code handles both cases. */ - if(size == -1 || size > 127) { - va_start(ap, msg); -+ if((size = vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; } -- if((size = json_vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; } - va_end(ap); - printbuf_memappend(p, t, size); - free(t); ---- b/modules/json-c/vasprintf_compat.h -+++ a/modules/json-c/vasprintf_compat.h -@@ -8,8 +8,9 @@ - - #include "snprintf_compat.h" - -+#if !defined(HAVE_VASPRINTF) - /* CAW: compliant version of vasprintf */ -+static int vasprintf(char **buf, const char *fmt, va_list ap) --static int json_vasprintf(char **buf, const char *fmt, va_list ap) - { - #ifndef WIN32 - static char _T_emptybuffer = '\0'; -@@ -40,5 +41,6 @@ - - return chars; - } -+#endif /* !HAVE_VASPRINTF */ - - #endif /* __vasprintf_compat_h */ From 5a8cd34dba52fc35d25e24f41a17069e2254e609 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sat, 29 May 2021 22:48:50 +0200 Subject: [PATCH 07/18] gotty: 2.0.0-alpha.3 -> 1.2.0 new upstream, versioning scheme changed back to v 1.x --- pkgs/servers/gotty/default.nix | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/pkgs/servers/gotty/default.nix b/pkgs/servers/gotty/default.nix index 7bd09569248f..58335c79fe95 100644 --- a/pkgs/servers/gotty/default.nix +++ b/pkgs/servers/gotty/default.nix @@ -1,23 +1,29 @@ -{ lib, buildGoPackage, fetchFromGitHub }: +{ lib +, buildGoModule +, fetchFromGitHub +}: -buildGoPackage rec { +buildGoModule rec { pname = "gotty"; - version = "2.0.0-alpha.3"; - rev = "v${version}"; - - goPackagePath = "github.com/yudai/gotty"; + version = "1.2.0"; src = fetchFromGitHub { - inherit rev; - owner = "yudai"; + owner = "sorenisanerd"; repo = "gotty"; - sha256 = "1vhhs7d4k1vpkf2k69ai2r3bp3zwnwa8l9q7vza0rck69g4nmz7a"; + rev = "v${version}"; + sha256 = "06ngxnblwkmiln9bxikg9q2wdlh45481pnz87bpsw2r7hc69bv9n"; }; + vendorSha256 = "0mzf5209r3fzqf9q98j3b2cdzvfa3kg62xn0spx5zr6nabmhaa79"; + + # upstream did not update the tests, so they are broken now + # https://github.com/sorenisanerd/gotty/issues/13 + doCheck = false; + meta = with lib; { description = "Share your terminal as a web application"; - homepage = "https://github.com/yudai/gotty"; - maintainers = with maintainers; [ ]; + homepage = "https://github.com/sorenisanerd/gotty"; + maintainers = with maintainers; [ prusnak ]; license = licenses.mit; }; } From 966188ff80f5c4b808f0144c3effd64c5db5b593 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 27 May 2021 23:13:52 +0200 Subject: [PATCH 08/18] openvpn-auth-ldap: 2.0.3+deb6.1 -> 2.0.4 --- .../networking/openvpn/openvpn-auth-ldap.nix | 63 +++++++------------ 1 file changed, 24 insertions(+), 39 deletions(-) diff --git a/pkgs/tools/networking/openvpn/openvpn-auth-ldap.nix b/pkgs/tools/networking/openvpn/openvpn-auth-ldap.nix index bb06479be30e..70dacddafc37 100644 --- a/pkgs/tools/networking/openvpn/openvpn-auth-ldap.nix +++ b/pkgs/tools/networking/openvpn/openvpn-auth-ldap.nix @@ -1,65 +1,50 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, - autoreconfHook, re2c, openldap, openvpn, gnustep, check +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, gnustep +, re2c +, openldap +, openssl +, openvpn }: -let - srcName = "openvpn-auth-ldap"; - srcVersion = "2.0.3"; - debianRev = "6.1"; - - fetchPatchFromDebian = - {patch, sha256}: - fetchpatch { - inherit sha256; - url = "http://sources.debian.net/data/main/o/${srcName}/${srcVersion}-${debianRev}/debian/patches/${patch}"; - }; -in - stdenv.mkDerivation rec { - name = "${srcName}-${version}"; - version = "${srcVersion}+deb${debianRev}"; + pname = "openvpn-auth-ldap"; + version = "2.0.4"; src = fetchFromGitHub { owner = "threerings"; - repo = srcName; - rev = "auth-ldap-${srcVersion}"; - sha256 = "1v635ylzf5x3l3lirf3n6173q1w8g0ssjjkf27qqw98c3iqp63sq"; + repo = "openvpn-auth-ldap"; + rev = "auth-ldap-${version}"; + sha256 = "1j30sygj8nm8wjqxzpb7pfzr3dxqxggswzxd7z5yk7y04c0yp1hb"; }; - patches = map fetchPatchFromDebian [ - {patch = "STARTTLS_before_auth.patch"; - sha256 = "02kky73mgx9jf16lpabppl271zyjn4a1160k8b6a0fax5ic8gbwk";} - {patch = "gobjc_4.7_runtime.patch"; - sha256 = "0ljmdn70g5xp4kjcv59wg2wnqaifjdfdv1wlj356d10a7fzvxc76";} - {patch = "openvpn_ldap_simpler_add_handler_4"; - sha256 = "0nha9mazp3dywbs1ywj8xi4ahzsjsasyrcic87v8c0x2nwl9kaa0";} - {patch = "auth-ldap-gnustep.patch"; - sha256 = "053jni1s3pacpi2s43dkmk95j79ifh8rybjly13yy2dqffbasr31";} - ]; - nativeBuildInputs = [ autoreconfHook - ]; - - buildInputs = [ - check gnustep.base gnustep.libobjc gnustep.make - openldap - openvpn re2c ]; + buildInputs = [ + openldap + openssl + openvpn + ]; + configureFlags = [ - "--with-objc-runtime=modern" + "--with-objc-runtime=GNU" "--with-openvpn=${openvpn}/include" "--libdir=$(out)/lib/openvpn" ]; + doCheck = true; + preInstall = '' mkdir -p $out/lib/openvpn $out/share/doc/openvpn/examples - cp README $out/share/doc/openvpn/ + cp README.md $out/share/doc/openvpn/ cp auth-ldap.conf $out/share/doc/openvpn/examples/ ''; From f35c86dc1d00187129937bbc28f88cee42aa8991 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 29 May 2021 11:29:10 +0200 Subject: [PATCH 09/18] python3Packages.pyrituals: 0.0.2 -> 0.0.3 --- pkgs/development/python-modules/pyrituals/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyrituals/default.nix b/pkgs/development/python-modules/pyrituals/default.nix index 84bf62ff6d3b..f9f556dba52b 100644 --- a/pkgs/development/python-modules/pyrituals/default.nix +++ b/pkgs/development/python-modules/pyrituals/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "pyrituals"; - version = "0.0.2"; + version = "0.0.3"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -15,7 +15,7 @@ buildPythonPackage rec { owner = "milanmeu"; repo = pname; rev = version; - sha256 = "0hrwhk3kpvdg78fgnvhmnnh3wprdv10j8jqjm4ly64chr8cdi6f2"; + sha256 = "sha256-oAxQRGP6GxiidnGshSJZEh2RD3XsZ/7kFGwcqaYaBnM="; }; propagatedBuildInputs = [ aiohttp ]; From 793a73a7684b0931934c70fe3deca720be19ed03 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 29 May 2021 11:15:24 +0200 Subject: [PATCH 10/18] python3Packages.smhi-pkg: 1.0.14 -> 1.0.15 --- pkgs/development/python-modules/smhi-pkg/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/smhi-pkg/default.nix b/pkgs/development/python-modules/smhi-pkg/default.nix index 3308697cf549..f6693da46be7 100644 --- a/pkgs/development/python-modules/smhi-pkg/default.nix +++ b/pkgs/development/python-modules/smhi-pkg/default.nix @@ -8,13 +8,13 @@ buildPythonPackage rec { pname = "smhi-pkg"; - version = "1.0.14"; + version = "1.0.15"; src = fetchFromGitHub { owner = "joysoftware"; repo = "pypi_smhi"; rev = version; - sha256 = "186xwrg3hvr0hszq2kxvygd241q2sp11gfk6mwj9z4zqywwfcbn3"; + sha256 = "sha256-tBNmfn2hBkS36B9zKDP+TgqeumbgzBVDiJ5L54RaSc8="; }; propagatedBuildInputs = [ From 6ee94fc354cb75fe55b7ee6b7cf0ad6d95568264 Mon Sep 17 00:00:00 2001 From: Karl Meakin Date: Thu, 27 May 2021 01:02:02 +0100 Subject: [PATCH 11/18] runelite: 2.0.0 -> 2.1.5 --- pkgs/games/runelite/default.nix | 41 ++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/pkgs/games/runelite/default.nix b/pkgs/games/runelite/default.nix index e9e77e275dc7..9a2ce6314cd1 100644 --- a/pkgs/games/runelite/default.nix +++ b/pkgs/games/runelite/default.nix @@ -1,12 +1,12 @@ -{ stdenv, fetchurl, makeWrapper, jre, makeDesktopItem, lib }: +{ pkgs, lib, stdenv, makeDesktopItem, fetchurl, unzip, makeWrapper, xorg, jre, }: stdenv.mkDerivation rec { pname = "runelite"; - version = "2.0.0"; + version = "2.1.5"; - src = fetchurl { + jar = fetchurl { url = "https://github.com/runelite/launcher/releases/download/${version}/RuneLite.jar"; - sha256 = "0q0x8g43ggkvp5fgnymgygx59xfhnyyrhpi6ha333gqg97rr0rvw"; + sha256 = "4BX188QIjIFTxng2ktqlKn7AqQ9tdBcKWmgOj/5yd10="; }; icon = fetchurl { @@ -14,6 +14,17 @@ stdenv.mkDerivation rec { sha256 = "04fcjm7p546gr82g0jbh497j7rnh70lrvas0k171bff4v3knrjw1"; }; + # The `.so` files provided by these two jars aren't detected by RuneLite for some reason, so we have to provide them manually + jogl = fetchurl { + url = "https://repo.runelite.net/net/runelite/jogl/jogl-all/2.4.0-rc-20200429/jogl-all-2.4.0-rc-20200429-natives-linux-amd64.jar"; + sha256 = "S60qxyWY9RfyhLFygn/OxZFWnc8qVRtTFdWMbdu+2U0="; + }; + gluegen = fetchurl { + url = "https://repo.runelite.net/net/runelite/gluegen/gluegen-rt/2.4.0-rc-20200429/gluegen-rt-2.4.0-rc-20200429-natives-linux-amd64.jar"; + sha256 = "eF8S5sQkJFDtW8rcVBKIyeyKm5Ze5rXK5r/yosZcHjU="; + }; + dontUnpack = true; + desktop = makeDesktopItem { name = "RuneLite"; type = "Application"; @@ -24,23 +35,25 @@ stdenv.mkDerivation rec { desktopName = "RuneLite"; genericName = "Oldschool Runescape"; categories = "Game"; - startupNotify = null; }; - nativeBuildInputs = [ makeWrapper ]; - - # colon is bash form of no-op (do nothing) - dontUnpack = true; - + nativeBuildInputs = [ makeWrapper unzip ]; installPhase = '' mkdir -p $out/share/runelite mkdir -p $out/share/applications + mkdir -p $out/natives - ln -s ${src} $out/share/runelite/RuneLite.jar - ln -s ${desktop}/share/applications/* $out/share/applications + unzip ${jogl} 'natives/*' -d $out + unzip ${gluegen} 'natives/*' -d $out + ln -s ${jar} $out/share/runelite/RuneLite.jar + ln -s ${desktop}/share/applications/RuneLite.desktop $out/share/applications/RuneLite.desktop + + # RuneLite looks for `.so` files in $PWD/natives, so ensure that we set the PWD to the right place makeWrapper ${jre}/bin/java $out/bin/runelite \ - --add-flags "-jar $out/share/runelite/RuneLite.jar" + --run "cd $out" \ + --prefix LD_LIBRARY_PATH : "${xorg.libXxf86vm}/lib" \ + --add-flags "-jar $out/share/runelite/RuneLite.jar" ''; meta = with lib; { @@ -48,6 +61,6 @@ stdenv.mkDerivation rec { homepage = "https://runelite.net/"; license = licenses.bsd2; maintainers = with maintainers; [ kmeakin ]; - platforms = platforms.all; + platforms = [ "x86_64-linux" ]; }; } From 99c80ee729b405c575acf4dfdd2033bb8f9b5568 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 29 May 2021 20:17:57 +0200 Subject: [PATCH 12/18] python3Packages.flametree: enable tests --- .../python-modules/flametree/default.nix | 34 +++++++++++++++---- 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/flametree/default.nix b/pkgs/development/python-modules/flametree/default.nix index d4cba69afcb0..b4311eeb7cd6 100644 --- a/pkgs/development/python-modules/flametree/default.nix +++ b/pkgs/development/python-modules/flametree/default.nix @@ -1,25 +1,45 @@ { lib , buildPythonPackage -, fetchPypi +, fetchFromGitHub +, fontconfig +, matplotlib +, pandas +, pytestCheckHook +, weasyprint }: buildPythonPackage rec { pname = "flametree"; version = "0.1.11"; - src = fetchPypi { - inherit pname version; - sha256 = "c8eb81dea8c7f8261a2aa03d2bac98b1d21ebceec9c67efaac423f7c1b4fe061"; + src = fetchFromGitHub { + owner = "Edinburgh-Genome-Foundry"; + repo = "Flametree"; + rev = "v${version}"; + sha256 = "1ynrk1ivl1vjiga0ayl8k89vs5il7i0pf9jz2ycn771c47szwk4x"; }; - # no tests in tarball - doCheck = false; + checkInputs = [ + matplotlib + pandas + pytestCheckHook + weasyprint + ]; + + preCheck = '' + export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf + ''; + + disabledTests = [ + # AssertionError, https://github.com/Edinburgh-Genome-Foundry/Flametree/issues/9 + "test_weasyprint" + ]; pythonImportsCheck = [ "flametree" ]; meta = with lib; { - homepage = "https://github.com/Edinburgh-Genome-Foundry/Flametree"; description = "Python file and zip operations made easy"; + homepage = "https://github.com/Edinburgh-Genome-Foundry/Flametree"; license = licenses.mit; maintainers = with maintainers; [ prusnak ]; }; From 9d75ca7054fa5eb7d372295cc79ad88567908a02 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 29 May 2021 23:42:58 +0200 Subject: [PATCH 13/18] python3Packages.pyialarm: 1.5 -> 1.7 --- pkgs/development/python-modules/pyialarm/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyialarm/default.nix b/pkgs/development/python-modules/pyialarm/default.nix index 6a35445fca16..977fbcd323cf 100644 --- a/pkgs/development/python-modules/pyialarm/default.nix +++ b/pkgs/development/python-modules/pyialarm/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "pyialarm"; - version = "1.5"; + version = "1.7"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "RyuzakiKK"; repo = pname; rev = "v${version}"; - sha256 = "0vpscc2h13mmwscvjpm0bfd80x94mzh4d204v6n421mdz3ddhjqp"; + sha256 = "sha256-Gk5kWOqsPyq/0Vc+jdRRyj+ko3CpmqQ6/McvJYAGjLY="; }; propagatedBuildInputs = [ From 645446afa518ac7ef939bab4393d74d8bf24a7e2 Mon Sep 17 00:00:00 2001 From: xfnw Date: Sat, 29 May 2021 23:45:42 +0000 Subject: [PATCH 14/18] catgirl: 1.7 -> 1.8 --- pkgs/applications/networking/irc/catgirl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/irc/catgirl/default.nix b/pkgs/applications/networking/irc/catgirl/default.nix index afc308039de1..d2e8e93d8534 100644 --- a/pkgs/applications/networking/irc/catgirl/default.nix +++ b/pkgs/applications/networking/irc/catgirl/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "catgirl"; - version = "1.7"; + version = "1.8"; src = fetchurl { url = "https://git.causal.agency/catgirl/snapshot/${pname}-${version}.tar.gz"; - sha256 = "sha256-3shSdeq4l6Y5DEJZEVMHAngp6vjnkPjzpLpcp407X/0="; + sha256 = "0svpd2nqsr55ac98vczyhihs6pvgw7chspf6bdlwl98gch39dxif"; }; nativeBuildInputs = [ ctags pkg-config ]; From 364ae13471c3844500befc9d6dda9a38f98142c3 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sat, 22 May 2021 03:12:27 +0000 Subject: [PATCH 15/18] esbuild: 0.12.0 -> 0.12.1 --- pkgs/development/tools/esbuild/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix index 5c32caad5b56..2dfb58013dd7 100644 --- a/pkgs/development/tools/esbuild/default.nix +++ b/pkgs/development/tools/esbuild/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "esbuild"; - version = "0.12.0"; + version = "0.12.1"; src = fetchFromGitHub { owner = "evanw"; repo = "esbuild"; rev = "v${version}"; - sha256 = "sha256-JRGRm6fiJ3VIzcwoQOvqiN15vhSYuxGdZrLAH8FiC7g="; + sha256 = "sha256-X+mWuGm6hpTofoZSpM9U2GmYlETMH7MuYwk4ahFSyVE="; }; vendorSha256 = "sha256-2ABWPqhK2Cf4ipQH7XvRrd+ZscJhYPc3SV2cGT0apdg="; From 6ab535aade04127f151570c43922f3472da2c2a7 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sat, 29 May 2021 12:37:44 +0000 Subject: [PATCH 16/18] dua: 2.11.3 -> 2.12.0 --- pkgs/tools/misc/dua/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/dua/default.nix b/pkgs/tools/misc/dua/default.nix index f69d13d04556..d53676f91d6f 100644 --- a/pkgs/tools/misc/dua/default.nix +++ b/pkgs/tools/misc/dua/default.nix @@ -2,7 +2,7 @@ rustPlatform.buildRustPackage rec { pname = "dua"; - version = "2.11.3"; + version = "2.12.0"; buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; @@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec { owner = "Byron"; repo = "dua-cli"; rev = "v${version}"; - sha256 = "sha256-rwbeWjYhAgZhQDg1/Pux08Kw+7NQG7dJlhZnwlaEjJ4="; + sha256 = "sha256-YCpWi5+p+d9YG8YEKRbppcX5/IizI1FnUfcnaoCGZNM="; # Remove unicode file names which leads to different checksums on HFS+ # vs. other filesystems because of unicode normalisation. extraPostFetch = '' @@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec { ''; }; - cargoSha256 = "sha256-ta5mHTfSs72HUz3ezZhVvU61ECvyWY3Sba7/UoJGc8U="; + cargoSha256 = "sha256-WFxDY4K257QE/tH4B2c3qOzVG3t1RUh4lWRMzqyBC14="; doCheck = false; From e1d59ae8d4c839542607b76218bd9a66ce3f4e20 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Wed, 26 May 2021 23:53:52 +0800 Subject: [PATCH 17/18] Revert "podman: add systemd to LD_LIBRARY_PATH for journald log driver" This reverts commit b71086499de8644780bbe59dd31d1eb3d04f3c06. --- pkgs/applications/virtualization/podman/default.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix index beaeb890a195..c8b8467def5c 100644 --- a/pkgs/applications/virtualization/podman/default.nix +++ b/pkgs/applications/virtualization/podman/default.nix @@ -3,7 +3,6 @@ , fetchFromGitHub , pkg-config , installShellFiles -, makeWrapper , buildGoModule , gpgme , lvm2 @@ -37,7 +36,7 @@ buildGoModule rec { outputs = [ "out" "man" ]; - nativeBuildInputs = [ pkg-config go-md2man installShellFiles makeWrapper ]; + nativeBuildInputs = [ pkg-config go-md2man installShellFiles ]; buildInputs = lib.optionals stdenv.isLinux [ btrfs-progs @@ -70,8 +69,6 @@ buildGoModule rec { installShellCompletion --zsh completions/zsh/* MANDIR=$man/share/man make install.man-nobuild '' + lib.optionalString stdenv.isLinux '' - wrapProgram $out/bin/podman \ - --prefix LD_LIBRARY_PATH : "${lib.getLib systemd}/lib" install -Dm644 contrib/tmpfile/podman.conf -t $out/lib/tmpfiles.d install -Dm644 contrib/systemd/system/podman.{socket,service} -t $out/lib/systemd/system '' + '' From ada45ac3aee664265759611d09443d549250bd70 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Wed, 26 May 2021 23:56:20 +0800 Subject: [PATCH 18/18] podman: add systemd to rpath --- pkgs/applications/virtualization/podman/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix index c8b8467def5c..f392fd98c43b 100644 --- a/pkgs/applications/virtualization/podman/default.nix +++ b/pkgs/applications/virtualization/podman/default.nix @@ -75,6 +75,11 @@ buildGoModule rec { runHook postInstall ''; + postFixup = lib.optionalString stdenv.isLinux '' + RPATH=$(patchelf --print-rpath $out/bin/podman) + patchelf --set-rpath "${lib.makeLibraryPath [ systemd ]}":$RPATH $out/bin/podman + ''; + passthru.tests = { inherit (nixosTests) podman; }; meta = with lib; {