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/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" 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 ]; 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/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 ]; diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix index beaeb890a195..f392fd98c43b 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,14 +69,17 @@ 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 '' + '' 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; { 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 */ 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 = [ 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 ]; }; 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 = [ 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 ]; 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 = [ 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="; 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="; 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" ]; }; } 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; }; } 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; 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/ ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index eed93ea571a5..ae6b68fcc915 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17848,6 +17848,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 { }; @@ -17953,6 +17955,8 @@ in soapyremote = callPackage ../applications/radio/soapyremote { }; + soapysdrplay = callPackage ../applications/radio/soapysdrplay { }; + soapysdr-with-plugins = callPackage ../applications/radio/soapysdr { extraPackages = [ limesuite