From 1a5c9203e174ee0c35e44bea7a3c6bf0715cf7f3 Mon Sep 17 00:00:00 2001 From: Dimitar Nestorov <8790386+dimitarnestorov@users.noreply.github.com> Date: Sat, 18 Jan 2025 18:06:21 +0200 Subject: [PATCH 01/77] cyberduck: 9.0.0.41777 -> 9.1.2.42722 --- pkgs/by-name/cy/cyberduck/package.nix | 38 ++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/cy/cyberduck/package.nix b/pkgs/by-name/cy/cyberduck/package.nix index cec9f93214df..57f71caddbbb 100644 --- a/pkgs/by-name/cy/cyberduck/package.nix +++ b/pkgs/by-name/cy/cyberduck/package.nix @@ -3,34 +3,58 @@ stdenvNoCC, fetchurl, unzip, + makeBinaryWrapper, + versionCheckHook, + writeShellScript, + coreutils, + xcbuild, }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "cyberduck"; - version = "9.0.0.41777"; + version = "9.1.2.42722"; src = fetchurl { url = "https://update.cyberduck.io/Cyberduck-${finalAttrs.version}.zip"; - hash = "sha256-oDTFkoX4uu+X5vLDHn+tGoNB/Pd9ncdFE8dGS6PT5wg="; + hash = "sha256-oGerVv6CteMl+MJ9AfGYmo6Iv6i7BFUCF+E3My6UH6I="; }; sourceRoot = "."; - nativeBuildInputs = [ unzip ]; + nativeBuildInputs = [ + unzip + makeBinaryWrapper + ]; installPhase = '' runHook preInstall mkdir -p $out/Applications cp -r Cyberduck.app $out/Applications + makeWrapper $out/Applications/Cyberduck.app/Contents/MacOS/Cyberduck $out/bin/cyberduck runHook postInstall ''; - meta = with lib; { + nativeInstallCheckInputs = [ versionCheckHook ]; + versionCheckProgram = writeShellScript "version-check" '' + marketing_version=$(${xcbuild}/bin/PlistBuddy -c "Print :CFBundleShortVersionString" "$1" | ${coreutils}/bin/tr -d '"') + build_version=$(${xcbuild}/bin/PlistBuddy -c "Print :CFBundleVersion" "$1") + + echo $marketing_version.$build_version + ''; + versionCheckProgramArg = [ "${placeholder "out"}/Applications/Cyberduck.app/Contents/Info.plist" ]; + doInstallCheck = true; + + meta = { description = "Libre file transfer client for Mac and Windows"; homepage = "https://cyberduck.io"; - license = licenses.gpl3Plus; + changelog = "https://cyberduck.io/changelog/"; + license = lib.licenses.gpl3Plus; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; - maintainers = with maintainers; [ emilytrau ]; - platforms = platforms.darwin; + maintainers = with lib.maintainers; [ + emilytrau + DimitarNestorov + ]; + platforms = lib.platforms.darwin; + mainProgram = "cyberduck"; }; }) From b10f51059783efb00af6d07800d5e196bd5c6554 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 24 Jan 2025 23:58:54 +0000 Subject: [PATCH 02/77] volatility3: 2.8.0 -> 2.11.0 --- pkgs/by-name/vo/volatility3/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/vo/volatility3/package.nix b/pkgs/by-name/vo/volatility3/package.nix index 286c54fae023..db747b0fc29f 100644 --- a/pkgs/by-name/vo/volatility3/package.nix +++ b/pkgs/by-name/vo/volatility3/package.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication rec { pname = "volatility3"; - version = "2.8.0"; + version = "2.11.0"; pyproject = true; src = fetchFromGitHub { owner = "volatilityfoundation"; repo = "volatility3"; tag = "v${version}"; - hash = "sha256-XMoVfT1Wd8r684y4crTOjW9GklSTkivOGv1Ii10KzII="; + hash = "sha256-X2cTZaEUQm7bE0k2ve4vKj0k1N6zeLXfDzhWm32diVY="; }; build-system = with python3.pkgs; [ From ceee3290708d5de52ffd4743afd01bffc17a74e8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 26 Jan 2025 00:50:26 +0000 Subject: [PATCH 03/77] libxisf: 0.2.12 -> 0.2.13 --- pkgs/by-name/li/libxisf/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libxisf/package.nix b/pkgs/by-name/li/libxisf/package.nix index 5087b9529840..60cea171bfde 100644 --- a/pkgs/by-name/li/libxisf/package.nix +++ b/pkgs/by-name/li/libxisf/package.nix @@ -12,14 +12,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "libxisf"; - version = "0.2.12"; + version = "0.2.13"; src = fetchFromGitea { domain = "gitea.nouspiro.space"; owner = "nou"; repo = "libXISF"; rev = "v${finalAttrs.version}"; - hash = "sha256-QhshgKyf9s5U5JMa5TZelIo1tpJGlsOQePPG1kEfbq8="; + hash = "sha256-vc42Jw7kBbQYu+/6jakxFnSuVkS8t6ZyYuSMLGMnEn4="; }; patches = [ From 1fea4dee8b8fe2fde2a58f9fb175240da4f7db05 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 26 Jan 2025 15:28:40 +0000 Subject: [PATCH 04/77] xpra: 6.2.2 -> 6.2.3 --- pkgs/tools/X11/xpra/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix index 156a927527bf..bd43082ba12b 100644 --- a/pkgs/tools/X11/xpra/default.nix +++ b/pkgs/tools/X11/xpra/default.nix @@ -82,7 +82,7 @@ let in buildPythonApplication rec { pname = "xpra"; - version = "6.2.2"; + version = "6.2.3"; stdenv = if withNvenc then cudaPackages.backendStdenv else args.stdenv; @@ -90,7 +90,7 @@ buildPythonApplication rec { owner = "Xpra-org"; repo = "xpra"; rev = "v${version}"; - hash = "sha256-YLz2Ex3gHabicPbGj5BFP1pwU/8K/bu4R7cWi1Fu2oM="; + hash = "sha256-5f6yHz3uc5qsU1F6D8r0KPo8tbrFP4pfxXTvIJYqKuI="; }; patches = [ From 742e2d1f52bc0ed9fe2b75e2617ccf103800a9cf Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 26 Jan 2025 19:54:29 +0000 Subject: [PATCH 05/77] pony-corral: 0.8.1 -> 0.8.2 --- pkgs/development/compilers/ponyc/pony-corral.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/ponyc/pony-corral.nix b/pkgs/development/compilers/ponyc/pony-corral.nix index 980b8e69d666..f56b4d0f5b19 100644 --- a/pkgs/development/compilers/ponyc/pony-corral.nix +++ b/pkgs/development/compilers/ponyc/pony-corral.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "corral"; - version = "0.8.1"; + version = "0.8.2"; src = fetchFromGitHub { owner = "ponylang"; repo = "corral"; rev = finalAttrs.version; - hash = "sha256-cbiw7OaU6HyAp/dHV5FVI7B7mam0GUb95EkR/Grwu0k="; + hash = "sha256-arcMtCSbXFLBT2ygdj44UKMdGStlgHyiBgt5xZpPRhs="; }; strictDeps = true; From bf629069866e66e4e4c3aebf7ef1afe860a59fde Mon Sep 17 00:00:00 2001 From: phanirithvij Date: Mon, 27 Jan 2025 12:43:54 +0530 Subject: [PATCH 06/77] ngrok: 3.18.1 -> 3.19.1 Signed-off-by: phanirithvij --- pkgs/by-name/ng/ngrok/versions.json | 36 ++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/pkgs/by-name/ng/ngrok/versions.json b/pkgs/by-name/ng/ngrok/versions.json index 453116873bed..534f529f3337 100644 --- a/pkgs/by-name/ng/ngrok/versions.json +++ b/pkgs/by-name/ng/ngrok/versions.json @@ -1,38 +1,38 @@ { "linux-386": { "sys": "linux-386", - "url": "https://bin.equinox.io/a/cPMgrL2ncCb/ngrok-v3-3.18.1-linux-386", - "sha256": "f0b85d6a2f7ab3bd48186100e0f619acd18d4bdf56df2cd7044e6b35745c17a4", - "version": "3.18.1" + "url": "https://bin.equinox.io/a/7rWAoLaoN6E/ngrok-v3-3.19.1-linux-386", + "sha256": "ade3cb371e0420b4d314051f702029661ec051158892ae8de87b0dd3fb8c9ae2", + "version": "3.19.1" }, "linux-amd64": { "sys": "linux-amd64", - "url": "https://bin.equinox.io/a/gnpHP5YLEsK/ngrok-v3-3.18.1-linux-amd64", - "sha256": "7d0a1f40bfb10fd7304081dcc27d7b8d2bed86f39cd46825c07679d8c888975f", - "version": "3.18.1" + "url": "https://bin.equinox.io/a/aNKWdiDQehF/ngrok-v3-3.19.1-linux-amd64", + "sha256": "eea9510a71beab13f50024c23938d00ba9cfe4a8b4840030b8432c8637b4427a", + "version": "3.19.1" }, "linux-arm": { "sys": "linux-arm", - "url": "https://bin.equinox.io/a/mke1muTU2zp/ngrok-v3-3.18.1-linux-arm", - "sha256": "6e7b4723a3a2c936157e4ec7be0bcbf95b49c672223ba0621d54165e8009fd78", - "version": "3.18.1" + "url": "https://bin.equinox.io/a/fHwvcnrN4W1/ngrok-v3-3.19.1-linux-arm", + "sha256": "ff1260e987641b0b280e5da3004d020093745a7586ecca65e1025bc3738d55d9", + "version": "3.19.1" }, "linux-arm64": { "sys": "linux-arm64", - "url": "https://bin.equinox.io/a/jYPr353ESuj/ngrok-v3-3.18.1-linux-arm64", - "sha256": "0dbdfdf94b3acb777741e9eeeb27a256cb1975b7d366d1ba404804b863b8fcbb", - "version": "3.18.1" + "url": "https://bin.equinox.io/a/ckBcN6JRV3s/ngrok-v3-3.19.1-linux-arm64", + "sha256": "1f8eec521c00eece4a4a15750927dc492f1243e34598868b15996940ab2bed5b", + "version": "3.19.1" }, "darwin-amd64": { "sys": "darwin-amd64", - "url": "https://bin.equinox.io/a/iTdNrZisjJj/ngrok-v3-3.18.1-darwin-amd64", - "sha256": "9a1319caf566ee7f85c1a9b2982ee95c08bd549e90d56ac99ef863d5da92b4a4", - "version": "3.18.1" + "url": "https://bin.equinox.io/a/yubNbWvsvB/ngrok-v3-3.19.1-darwin-amd64", + "sha256": "4e19fee94598a74164516a8b439742bd8bee8844bfea4e3f41ba33b761323583", + "version": "3.19.1" }, "darwin-arm64": { "sys": "darwin-arm64", - "url": "https://bin.equinox.io/a/6wGwyzYTbRX/ngrok-v3-3.18.1-darwin-arm64", - "sha256": "9cc3fee7d81157e6bc645f160f6aa5562577c4b9f72db8675143e16d07703816", - "version": "3.18.1" + "url": "https://bin.equinox.io/a/iv6WKkDK2i5/ngrok-v3-3.19.1-darwin-arm64", + "sha256": "1da4acdf28b7c64ded056d29a2f3bb452481b4112a04f520f33fcead8794e2a1", + "version": "3.19.1" } } From c8a67eccf353c426044a3f0207f6c152f17a46fc Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 27 Jan 2025 09:35:30 +0000 Subject: [PATCH 07/77] python312Packages.kestra: 0.20.0 -> 0.21.0 --- pkgs/development/python-modules/kestra/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/kestra/default.nix b/pkgs/development/python-modules/kestra/default.nix index 474b7fa0024f..31653a931a3c 100644 --- a/pkgs/development/python-modules/kestra/default.nix +++ b/pkgs/development/python-modules/kestra/default.nix @@ -9,14 +9,14 @@ }: buildPythonPackage rec { pname = "kestra"; - version = "0.20.0"; + version = "0.21.0"; pyproject = true; src = fetchFromGitHub { owner = "kestra-io"; repo = "libs"; - rev = "v${version}"; - hash = "sha256-Ck0eM3YZRRoORN77e46J9CG5Uj6Y7fNdVWAErT7LbpA="; + tag = "v${version}"; + hash = "sha256-WaAw/PKoHPjbNrpCV6CuqUIb2Ysv4rHYFJbgGyU6li0="; }; sourceRoot = "${src.name}/python"; From 56daa4f9cf339cdaa41363e2dbb73516edde539b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 27 Jan 2025 13:22:54 +0000 Subject: [PATCH 08/77] jay: 1.7.0 -> 1.9.0 --- pkgs/by-name/ja/jay/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ja/jay/package.nix b/pkgs/by-name/ja/jay/package.nix index bba163a48873..5312d2d9fa81 100644 --- a/pkgs/by-name/ja/jay/package.nix +++ b/pkgs/by-name/ja/jay/package.nix @@ -15,16 +15,16 @@ rustPlatform.buildRustPackage rec { pname = "jay"; - version = "1.7.0"; + version = "1.9.0"; src = fetchFromGitHub { owner = "mahkoh"; repo = pname; rev = "v${version}"; - sha256 = "sha256-VAg59hmI38hJzkh/Vtv6LjrqQFLaq7rIGtk9sfQe1TA="; + sha256 = "sha256-RGBFIYVeunMhZbpRExKYh7VlhodOsCN7WzN/7UPEJdc="; }; - cargoHash = "sha256-qYyuVNYhsHjR4uGdQq83Ih5TMBdlKmG0l4MxDa9wgD8="; + cargoHash = "sha256-/+BdhSoRgDGibcHb+zqmtGzRHFXEgfavpBD0FQ03kyI="; SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib"; From c71ccc875849799ca61f8593b5918a66b7039441 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 27 Jan 2025 23:47:48 +0000 Subject: [PATCH 09/77] octavePackages.instrument-control: 0.9.3 -> 0.9.4 --- .../development/octave-modules/instrument-control/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/octave-modules/instrument-control/default.nix b/pkgs/development/octave-modules/instrument-control/default.nix index 433bfcf24f6b..34a9644cb1a1 100644 --- a/pkgs/development/octave-modules/instrument-control/default.nix +++ b/pkgs/development/octave-modules/instrument-control/default.nix @@ -6,11 +6,11 @@ buildOctavePackage rec { pname = "instrument-control"; - version = "0.9.3"; + version = "0.9.4"; src = fetchurl { url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-5ZufEs761qz0nKt0YYikJccqEtK+Qs9UcnJlRsW8VCM="; + sha256 = "sha256-AfrQQy1EuMpO6qGYz+sh4EW5eYi6fE6KaRxro0psSN8="; }; meta = with lib; { From a2b950a566790b8af7ad3303ff0d3f1e6400819e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 28 Jan 2025 03:06:16 +0000 Subject: [PATCH 10/77] telepresence2: 2.21.1 -> 2.21.2 --- pkgs/by-name/te/telepresence2/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/te/telepresence2/package.nix b/pkgs/by-name/te/telepresence2/package.nix index 196b04983ca2..7ffb6e724e84 100644 --- a/pkgs/by-name/te/telepresence2/package.nix +++ b/pkgs/by-name/te/telepresence2/package.nix @@ -31,13 +31,13 @@ let in buildGoModule rec { pname = "telepresence2"; - version = "2.21.1"; + version = "2.21.2"; src = fetchFromGitHub { owner = "telepresenceio"; repo = "telepresence"; rev = "v${version}"; - hash = "sha256-YXGhgxpNVk1u8pFJmN194OP8wFVaMfFRiK0yitxFBPo="; + hash = "sha256-Tblba2vSZvnKCKvkp+QczyhiqNBx4Qpj7BfqYkdMd18="; }; propagatedBuildInputs = [ @@ -51,7 +51,7 @@ buildGoModule rec { export CGO_ENABLED=0 ''; - vendorHash = "sha256-7ZMFKApMjxDBGuk5q+Px7ovIPO8SteNuZ1d1IdPtme0="; + vendorHash = "sha256-Halc2oPLYagmI7+vF8LMqBLVEcdjkHdpWYV558jLJjo="; ldflags = [ "-s" From bf16f0ca5bf7a206a4e30a15ca6e87220e080e25 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 28 Jan 2025 13:12:57 +0000 Subject: [PATCH 11/77] redocly: 1.26.0 -> 1.27.2 --- pkgs/by-name/re/redocly/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/re/redocly/package.nix b/pkgs/by-name/re/redocly/package.nix index 1e4f43b3b4d8..ef65d3661471 100644 --- a/pkgs/by-name/re/redocly/package.nix +++ b/pkgs/by-name/re/redocly/package.nix @@ -9,16 +9,16 @@ buildNpmPackage rec { pname = "redocly"; - version = "1.26.0"; + version = "1.27.2"; src = fetchFromGitHub { owner = "Redocly"; repo = "redocly-cli"; rev = "@redocly/cli@${version}"; - hash = "sha256-jBfAMrmJ9+k1Fx2gZoQ8UiTT13tSvxXUKXNCW3vmuUY="; + hash = "sha256-79zB7ydbgS+9us+saFiYBPHILoATP00x+Y1hAgPsPk4="; }; - npmDepsHash = "sha256-IcyX+LmMduE8CY6wNSTv0D4c3vCZu48EXsUSsqfOqFQ="; + npmDepsHash = "sha256-EYhX1zAio+f1PGfQUQIFkc9Ve9jLIG7/1xgOI0JAZ5s="; npmBuildScript = "prepare"; From da96343d0f7121ed4e6f864b5e37fba08d5ccdbe Mon Sep 17 00:00:00 2001 From: Tert0 Date: Thu, 26 Dec 2024 00:35:13 +0100 Subject: [PATCH 12/77] maintainers: add Tert0 --- maintainers/maintainer-list.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index e55b7c07349f..6eb3967855ac 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -22307,6 +22307,13 @@ githubId = 159372832; keys = [ { fingerprint = "6F54 C08C 37C8 EC78 15FA 0D01 A721 8CBA 2D80 15C3"; } ]; }; + Tert0 = { + name = "Tert0"; + github = "Tert0"; + githubId = 62036464; + email = "tert0byte@gmail.com"; + keys = [ { fingerprint = "F899 D3B5 00BF 98AE 9097 F616 7069 D89F 9E5C 97ED"; } ]; + }; tesq0 = { email = "mikolaj.galkowski@gmail.com"; github = "tesq0"; From 5c4924667b87284cd2baf1ac8c2147a48b1ecb73 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 29 Jan 2025 01:23:35 +0000 Subject: [PATCH 13/77] kubefirst: 2.7.9 -> 2.8.0 --- pkgs/by-name/ku/kubefirst/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ku/kubefirst/package.nix b/pkgs/by-name/ku/kubefirst/package.nix index b72db614dfa8..931a8037e435 100644 --- a/pkgs/by-name/ku/kubefirst/package.nix +++ b/pkgs/by-name/ku/kubefirst/package.nix @@ -5,16 +5,16 @@ buildGoModule rec { pname = "kubefirst"; - version = "2.7.9"; + version = "2.8.0"; src = fetchFromGitHub { owner = "konstructio"; repo = "kubefirst"; tag = "v${version}"; - hash = "sha256-nBYwvOgkkx3NXELK+h9SpapoMjAVauI9leCPhKNZfh0="; + hash = "sha256-WggQdhMFbUbJ2bAj2oSveIHMg1HWPj0I14qiE3PTGqE="; }; - vendorHash = "sha256-DYEEkduud1sXVao7xbJoyvmMhfMJUPswIs3v20tncwo="; + vendorHash = "sha256-WjucnfiMxthygFaxseggMmlkF/Oih310O56Y7lW+11E="; ldflags = [ "-s" From eac764ebd85c4b6d9629c636ca93e762cbbd60c1 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 29 Jan 2025 02:04:08 +0000 Subject: [PATCH 14/77] saucectl: 0.191.0 -> 0.192.0 --- pkgs/by-name/sa/saucectl/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/sa/saucectl/package.nix b/pkgs/by-name/sa/saucectl/package.nix index 27551c557dff..237935072cfd 100644 --- a/pkgs/by-name/sa/saucectl/package.nix +++ b/pkgs/by-name/sa/saucectl/package.nix @@ -5,7 +5,7 @@ }: let pname = "saucectl"; - version = "0.191.0"; + version = "0.192.0"; in buildGoModule { inherit pname version; @@ -14,7 +14,7 @@ buildGoModule { owner = "saucelabs"; repo = "saucectl"; tag = "v${version}"; - hash = "sha256-cOgjNoJwcNu04YNqjeVaGIVauApYhFjLTa34HXV78sg="; + hash = "sha256-p7NWIjiaXM96PfmBohkfc1PQ6ZtE0pEeBVLemJiowXg="; }; ldflags = [ @@ -22,7 +22,7 @@ buildGoModule { "-X github.com/saucelabs/saucectl/internal/version.GitCommit=${version}" ]; - vendorHash = "sha256-NJBEIUeTasoIAeaGm+RdmfeELodXcnpxcxxQFaUJf4o="; + vendorHash = "sha256-N8e8k8vAyVY57iqHU6P88hn9NS3Mdfbgx5P8/wDcmMY="; checkFlags = [ "-skip=^TestNewRequestWithContext$" ]; From 54dba7bed8a55b4c352cf311e2c0dfd1ff5bbc79 Mon Sep 17 00:00:00 2001 From: Tert0 Date: Thu, 30 Jan 2025 16:43:51 +0100 Subject: [PATCH 15/77] nixos/restic: nixfmt --- nixos/modules/services/backup/restic.nix | 761 ++++++++++++----------- 1 file changed, 403 insertions(+), 358 deletions(-) diff --git a/nixos/modules/services/backup/restic.nix b/nixos/modules/services/backup/restic.nix index 604f399e0088..9c3a9d2e36ce 100644 --- a/nixos/modules/services/backup/restic.nix +++ b/nixos/modules/services/backup/restic.nix @@ -1,4 +1,10 @@ -{ config, lib, pkgs, utils, ... }: +{ + config, + lib, + pkgs, + utils, + ... +}: let # Type for a valid systemd unit option. Needed for correctly passing "timerConfig" to "systemd.timers" inherit (utils.systemdUtils.unitOptions) unitOption; @@ -8,269 +14,288 @@ in description = '' Periodic backups to create with Restic. ''; - type = lib.types.attrsOf (lib.types.submodule ({ name, ... }: { - options = { - passwordFile = lib.mkOption { - type = lib.types.str; - description = '' - Read the repository password from a file. - ''; - example = "/etc/nixos/restic-password"; - }; + type = lib.types.attrsOf ( + lib.types.submodule ( + { name, ... }: + { + options = { + passwordFile = lib.mkOption { + type = lib.types.str; + description = '' + Read the repository password from a file. + ''; + example = "/etc/nixos/restic-password"; + }; - environmentFile = lib.mkOption { - type = with lib.types; nullOr str; - default = null; - description = '' - file containing the credentials to access the repository, in the - format of an EnvironmentFile as described by {manpage}`systemd.exec(5)` - ''; - }; + environmentFile = lib.mkOption { + type = with lib.types; nullOr str; + default = null; + description = '' + file containing the credentials to access the repository, in the + format of an EnvironmentFile as described by {manpage}`systemd.exec(5)` + ''; + }; - rcloneOptions = lib.mkOption { - type = with lib.types; nullOr (attrsOf (oneOf [ str bool ])); - default = null; - description = '' - Options to pass to rclone to control its behavior. - See for - available options. When specifying option names, strip the - leading `--`. To set a flag such as - `--drive-use-trash`, which does not take a value, - set the value to the Boolean `true`. - ''; - example = { - bwlimit = "10M"; - drive-use-trash = "true"; + rcloneOptions = lib.mkOption { + type = + with lib.types; + nullOr ( + attrsOf (oneOf [ + str + bool + ]) + ); + default = null; + description = '' + Options to pass to rclone to control its behavior. + See for + available options. When specifying option names, strip the + leading `--`. To set a flag such as + `--drive-use-trash`, which does not take a value, + set the value to the Boolean `true`. + ''; + example = { + bwlimit = "10M"; + drive-use-trash = "true"; + }; + }; + + rcloneConfig = lib.mkOption { + type = + with lib.types; + nullOr ( + attrsOf (oneOf [ + str + bool + ]) + ); + default = null; + description = '' + Configuration for the rclone remote being used for backup. + See the remote's specific options under rclone's docs at + . When specifying + option names, use the "config" name specified in the docs. + For example, to set `--b2-hard-delete` for a B2 + remote, use `hard_delete = true` in the + attribute set. + Warning: Secrets set in here will be world-readable in the Nix + store! Consider using the `rcloneConfigFile` + option instead to specify secret values separately. Note that + options set here will override those set in the config file. + ''; + example = { + type = "b2"; + account = "xxx"; + key = "xxx"; + hard_delete = true; + }; + }; + + rcloneConfigFile = lib.mkOption { + type = with lib.types; nullOr path; + default = null; + description = '' + Path to the file containing rclone configuration. This file + must contain configuration for the remote specified in this backup + set and also must be readable by root. Options set in + `rcloneConfig` will override those set in this + file. + ''; + }; + + inhibitsSleep = lib.mkOption { + default = false; + type = lib.types.bool; + example = true; + description = '' + Prevents the system from sleeping while backing up. + ''; + }; + + repository = lib.mkOption { + type = with lib.types; nullOr str; + default = null; + description = '' + repository to backup to. + ''; + example = "sftp:backup@192.168.1.100:/backups/${name}"; + }; + + repositoryFile = lib.mkOption { + type = with lib.types; nullOr path; + default = null; + description = '' + Path to the file containing the repository location to backup to. + ''; + }; + + paths = lib.mkOption { + # This is nullable for legacy reasons only. We should consider making it a pure listOf + # after some time has passed since this comment was added. + type = lib.types.nullOr (lib.types.listOf lib.types.str); + default = [ ]; + description = '' + Which paths to backup, in addition to ones specified via + `dynamicFilesFrom`. If null or an empty array and + `dynamicFilesFrom` is also null, no backup command will be run. + This can be used to create a prune-only job. + ''; + example = [ + "/var/lib/postgresql" + "/home/user/backup" + ]; + }; + + exclude = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + description = '' + Patterns to exclude when backing up. See + https://restic.readthedocs.io/en/latest/040_backup.html#excluding-files for + details on syntax. + ''; + example = [ + "/var/cache" + "/home/*/.cache" + ".git" + ]; + }; + + timerConfig = lib.mkOption { + type = lib.types.nullOr (lib.types.attrsOf unitOption); + default = { + OnCalendar = "daily"; + Persistent = true; + }; + description = '' + When to run the backup. See {manpage}`systemd.timer(5)` for + details. If null no timer is created and the backup will only + run when explicitly started. + ''; + example = { + OnCalendar = "00:05"; + RandomizedDelaySec = "5h"; + Persistent = true; + }; + }; + + user = lib.mkOption { + type = lib.types.str; + default = "root"; + description = '' + As which user the backup should run. + ''; + example = "postgresql"; + }; + + extraBackupArgs = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + description = '' + Extra arguments passed to restic backup. + ''; + example = [ + "--exclude-file=/etc/nixos/restic-ignore" + ]; + }; + + extraOptions = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + description = '' + Extra extended options to be passed to the restic --option flag. + ''; + example = [ + "sftp.command='ssh backup@192.168.1.100 -i /home/user/.ssh/id_rsa -s sftp'" + ]; + }; + + initialize = lib.mkOption { + type = lib.types.bool; + default = false; + description = '' + Create the repository if it doesn't exist. + ''; + }; + + pruneOpts = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + description = '' + A list of options (--keep-\* et al.) for 'restic forget + --prune', to automatically prune old snapshots. The + 'forget' command is run *after* the 'backup' command, so + keep that in mind when constructing the --keep-\* options. + ''; + example = [ + "--keep-daily 7" + "--keep-weekly 5" + "--keep-monthly 12" + "--keep-yearly 75" + ]; + }; + + runCheck = lib.mkOption { + type = lib.types.bool; + default = (builtins.length config.services.restic.backups.${name}.checkOpts > 0); + defaultText = lib.literalExpression ''builtins.length config.services.backups.${name}.checkOpts > 0''; + description = "Whether to run the `check` command with the provided `checkOpts` options."; + example = true; + }; + + checkOpts = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + description = '' + A list of options for 'restic check'. + ''; + example = [ + "--with-cache" + ]; + }; + + dynamicFilesFrom = lib.mkOption { + type = with lib.types; nullOr str; + default = null; + description = '' + A script that produces a list of files to back up. The + results of this command are given to the '--files-from' + option. The result is merged with paths specified via `paths`. + ''; + example = "find /home/matt/git -type d -name .git"; + }; + + backupPrepareCommand = lib.mkOption { + type = with lib.types; nullOr str; + default = null; + description = '' + A script that must run before starting the backup process. + ''; + }; + + backupCleanupCommand = lib.mkOption { + type = with lib.types; nullOr str; + default = null; + description = '' + A script that must run after finishing the backup process. + ''; + }; + + package = lib.mkPackageOption pkgs "restic" { }; + + createWrapper = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Whether to generate and add a script to the system path, that has the same environment variables set + as the systemd service. This can be used to e.g. mount snapshots or perform other opterations, without + having to manually specify most options. + ''; + }; }; - }; - - rcloneConfig = lib.mkOption { - type = with lib.types; nullOr (attrsOf (oneOf [ str bool ])); - default = null; - description = '' - Configuration for the rclone remote being used for backup. - See the remote's specific options under rclone's docs at - . When specifying - option names, use the "config" name specified in the docs. - For example, to set `--b2-hard-delete` for a B2 - remote, use `hard_delete = true` in the - attribute set. - Warning: Secrets set in here will be world-readable in the Nix - store! Consider using the `rcloneConfigFile` - option instead to specify secret values separately. Note that - options set here will override those set in the config file. - ''; - example = { - type = "b2"; - account = "xxx"; - key = "xxx"; - hard_delete = true; - }; - }; - - rcloneConfigFile = lib.mkOption { - type = with lib.types; nullOr path; - default = null; - description = '' - Path to the file containing rclone configuration. This file - must contain configuration for the remote specified in this backup - set and also must be readable by root. Options set in - `rcloneConfig` will override those set in this - file. - ''; - }; - - inhibitsSleep = lib.mkOption { - default = false; - type = lib.types.bool; - example = true; - description = '' - Prevents the system from sleeping while backing up. - ''; - }; - - repository = lib.mkOption { - type = with lib.types; nullOr str; - default = null; - description = '' - repository to backup to. - ''; - example = "sftp:backup@192.168.1.100:/backups/${name}"; - }; - - repositoryFile = lib.mkOption { - type = with lib.types; nullOr path; - default = null; - description = '' - Path to the file containing the repository location to backup to. - ''; - }; - - paths = lib.mkOption { - # This is nullable for legacy reasons only. We should consider making it a pure listOf - # after some time has passed since this comment was added. - type = lib.types.nullOr (lib.types.listOf lib.types.str); - default = [ ]; - description = '' - Which paths to backup, in addition to ones specified via - `dynamicFilesFrom`. If null or an empty array and - `dynamicFilesFrom` is also null, no backup command will be run. - This can be used to create a prune-only job. - ''; - example = [ - "/var/lib/postgresql" - "/home/user/backup" - ]; - }; - - exclude = lib.mkOption { - type = lib.types.listOf lib.types.str; - default = [ ]; - description = '' - Patterns to exclude when backing up. See - https://restic.readthedocs.io/en/latest/040_backup.html#excluding-files for - details on syntax. - ''; - example = [ - "/var/cache" - "/home/*/.cache" - ".git" - ]; - }; - - timerConfig = lib.mkOption { - type = lib.types.nullOr (lib.types.attrsOf unitOption); - default = { - OnCalendar = "daily"; - Persistent = true; - }; - description = '' - When to run the backup. See {manpage}`systemd.timer(5)` for - details. If null no timer is created and the backup will only - run when explicitly started. - ''; - example = { - OnCalendar = "00:05"; - RandomizedDelaySec = "5h"; - Persistent = true; - }; - }; - - user = lib.mkOption { - type = lib.types.str; - default = "root"; - description = '' - As which user the backup should run. - ''; - example = "postgresql"; - }; - - extraBackupArgs = lib.mkOption { - type = lib.types.listOf lib.types.str; - default = [ ]; - description = '' - Extra arguments passed to restic backup. - ''; - example = [ - "--exclude-file=/etc/nixos/restic-ignore" - ]; - }; - - extraOptions = lib.mkOption { - type = lib.types.listOf lib.types.str; - default = [ ]; - description = '' - Extra extended options to be passed to the restic --option flag. - ''; - example = [ - "sftp.command='ssh backup@192.168.1.100 -i /home/user/.ssh/id_rsa -s sftp'" - ]; - }; - - initialize = lib.mkOption { - type = lib.types.bool; - default = false; - description = '' - Create the repository if it doesn't exist. - ''; - }; - - pruneOpts = lib.mkOption { - type = lib.types.listOf lib.types.str; - default = [ ]; - description = '' - A list of options (--keep-\* et al.) for 'restic forget - --prune', to automatically prune old snapshots. The - 'forget' command is run *after* the 'backup' command, so - keep that in mind when constructing the --keep-\* options. - ''; - example = [ - "--keep-daily 7" - "--keep-weekly 5" - "--keep-monthly 12" - "--keep-yearly 75" - ]; - }; - - runCheck = lib.mkOption { - type = lib.types.bool; - default = (builtins.length config.services.restic.backups.${name}.checkOpts > 0); - defaultText = lib.literalExpression ''builtins.length config.services.backups.${name}.checkOpts > 0''; - description = "Whether to run the `check` command with the provided `checkOpts` options."; - example = true; - }; - - checkOpts = lib.mkOption { - type = lib.types.listOf lib.types.str; - default = [ ]; - description = '' - A list of options for 'restic check'. - ''; - example = [ - "--with-cache" - ]; - }; - - dynamicFilesFrom = lib.mkOption { - type = with lib.types; nullOr str; - default = null; - description = '' - A script that produces a list of files to back up. The - results of this command are given to the '--files-from' - option. The result is merged with paths specified via `paths`. - ''; - example = "find /home/matt/git -type d -name .git"; - }; - - backupPrepareCommand = lib.mkOption { - type = with lib.types; nullOr str; - default = null; - description = '' - A script that must run before starting the backup process. - ''; - }; - - backupCleanupCommand = lib.mkOption { - type = with lib.types; nullOr str; - default = null; - description = '' - A script that must run after finishing the backup process. - ''; - }; - - package = lib.mkPackageOption pkgs "restic" { }; - - createWrapper = lib.mkOption { - type = lib.types.bool; - default = true; - description = '' - Whether to generate and add a script to the system path, that has the same environment variables set - as the systemd service. This can be used to e.g. mount snapshots or perform other opterations, without - having to manually specify most options. - ''; - }; - }; - })); + } + ) + ); default = { }; example = { localbackup = { @@ -300,119 +325,139 @@ in assertion = (v.repository == null) != (v.repositoryFile == null); message = "services.restic.backups.${n}: exactly one of repository or repositoryFile should be set"; }) config.services.restic.backups; - systemd.services = - lib.mapAttrs' - (name: backup: - let - extraOptions = lib.concatMapStrings (arg: " -o ${arg}") backup.extraOptions; - inhibitCmd = lib.concatStringsSep " " [ - "${pkgs.systemd}/bin/systemd-inhibit" - "--mode='block'" - "--who='restic'" - "--what='sleep'" - "--why=${lib.escapeShellArg "Scheduled backup ${name}"} " - ]; - resticCmd = "${lib.optionalString backup.inhibitsSleep inhibitCmd}${backup.package}/bin/restic${extraOptions}"; - excludeFlags = lib.optional (backup.exclude != []) "--exclude-file=${pkgs.writeText "exclude-patterns" (lib.concatStringsSep "\n" backup.exclude)}"; - filesFromTmpFile = "/run/restic-backups-${name}/includes"; - doBackup = (backup.dynamicFilesFrom != null) || (backup.paths != null && backup.paths != []); - pruneCmd = lib.optionals (builtins.length backup.pruneOpts > 0) [ - (resticCmd + " forget --prune " + (lib.concatStringsSep " " backup.pruneOpts)) - ]; - checkCmd = lib.optionals backup.runCheck [ - (resticCmd + " check " + (lib.concatStringsSep " " backup.checkOpts)) - ]; - # Helper functions for rclone remotes - rcloneRemoteName = builtins.elemAt (lib.splitString ":" backup.repository) 1; - rcloneAttrToOpt = v: "RCLONE_" + lib.toUpper (builtins.replaceStrings [ "-" ] [ "_" ] v); - rcloneAttrToConf = v: "RCLONE_CONFIG_" + lib.toUpper (rcloneRemoteName + "_" + v); - toRcloneVal = v: if lib.isBool v then lib.boolToString v else v; - in - lib.nameValuePair "restic-backups-${name}" ({ - environment = { + systemd.services = lib.mapAttrs' ( + name: backup: + let + extraOptions = lib.concatMapStrings (arg: " -o ${arg}") backup.extraOptions; + inhibitCmd = lib.concatStringsSep " " [ + "${pkgs.systemd}/bin/systemd-inhibit" + "--mode='block'" + "--who='restic'" + "--what='sleep'" + "--why=${lib.escapeShellArg "Scheduled backup ${name}"} " + ]; + resticCmd = "${lib.optionalString backup.inhibitsSleep inhibitCmd}${backup.package}/bin/restic${extraOptions}"; + excludeFlags = lib.optional ( + backup.exclude != [ ] + ) "--exclude-file=${pkgs.writeText "exclude-patterns" (lib.concatStringsSep "\n" backup.exclude)}"; + filesFromTmpFile = "/run/restic-backups-${name}/includes"; + doBackup = (backup.dynamicFilesFrom != null) || (backup.paths != null && backup.paths != [ ]); + pruneCmd = lib.optionals (builtins.length backup.pruneOpts > 0) [ + (resticCmd + " forget --prune " + (lib.concatStringsSep " " backup.pruneOpts)) + ]; + checkCmd = lib.optionals backup.runCheck [ + (resticCmd + " check " + (lib.concatStringsSep " " backup.checkOpts)) + ]; + # Helper functions for rclone remotes + rcloneRemoteName = builtins.elemAt (lib.splitString ":" backup.repository) 1; + rcloneAttrToOpt = v: "RCLONE_" + lib.toUpper (builtins.replaceStrings [ "-" ] [ "_" ] v); + rcloneAttrToConf = v: "RCLONE_CONFIG_" + lib.toUpper (rcloneRemoteName + "_" + v); + toRcloneVal = v: if lib.isBool v then lib.boolToString v else v; + in + lib.nameValuePair "restic-backups-${name}" ( + { + environment = + { # not %C, because that wouldn't work in the wrapper script RESTIC_CACHE_DIR = "/var/cache/restic-backups-${name}"; RESTIC_PASSWORD_FILE = backup.passwordFile; RESTIC_REPOSITORY = backup.repository; RESTIC_REPOSITORY_FILE = backup.repositoryFile; - } // lib.optionalAttrs (backup.rcloneOptions != null) (lib.mapAttrs' - (name: value: - lib.nameValuePair (rcloneAttrToOpt name) (toRcloneVal value) - ) - backup.rcloneOptions) // lib.optionalAttrs (backup.rcloneConfigFile != null) { + } + // lib.optionalAttrs (backup.rcloneOptions != null) ( + lib.mapAttrs' ( + name: value: lib.nameValuePair (rcloneAttrToOpt name) (toRcloneVal value) + ) backup.rcloneOptions + ) + // lib.optionalAttrs (backup.rcloneConfigFile != null) { RCLONE_CONFIG = backup.rcloneConfigFile; - } // lib.optionalAttrs (backup.rcloneConfig != null) (lib.mapAttrs' - (name: value: - lib.nameValuePair (rcloneAttrToConf name) (toRcloneVal value) - ) - backup.rcloneConfig); - path = [ config.programs.ssh.package ]; - restartIfChanged = false; - wants = [ "network-online.target" ]; - after = [ "network-online.target" ]; - serviceConfig = { + } + // lib.optionalAttrs (backup.rcloneConfig != null) ( + lib.mapAttrs' ( + name: value: lib.nameValuePair (rcloneAttrToConf name) (toRcloneVal value) + ) backup.rcloneConfig + ); + path = [ config.programs.ssh.package ]; + restartIfChanged = false; + wants = [ "network-online.target" ]; + after = [ "network-online.target" ]; + serviceConfig = + { Type = "oneshot"; - ExecStart = (lib.optionals doBackup [ "${resticCmd} backup ${lib.concatStringsSep " " (backup.extraBackupArgs ++ excludeFlags)} --files-from=${filesFromTmpFile}" ]) - ++ pruneCmd ++ checkCmd; + ExecStart = + (lib.optionals doBackup [ + "${resticCmd} backup ${ + lib.concatStringsSep " " (backup.extraBackupArgs ++ excludeFlags) + } --files-from=${filesFromTmpFile}" + ]) + ++ pruneCmd + ++ checkCmd; User = backup.user; RuntimeDirectory = "restic-backups-${name}"; CacheDirectory = "restic-backups-${name}"; CacheDirectoryMode = "0700"; PrivateTmp = true; - } // lib.optionalAttrs (backup.environmentFile != null) { + } + // lib.optionalAttrs (backup.environmentFile != null) { EnvironmentFile = backup.environmentFile; }; - } // lib.optionalAttrs (backup.initialize || doBackup || backup.backupPrepareCommand != null) { - preStart = '' - ${lib.optionalString (backup.backupPrepareCommand != null) '' - ${pkgs.writeScript "backupPrepareCommand" backup.backupPrepareCommand} - ''} - ${lib.optionalString (backup.initialize) '' - ${resticCmd} cat config > /dev/null || ${resticCmd} init - ''} - ${lib.optionalString (backup.paths != null && backup.paths != []) '' - cat ${pkgs.writeText "staticPaths" (lib.concatLines backup.paths)} >> ${filesFromTmpFile} - ''} - ${lib.optionalString (backup.dynamicFilesFrom != null) '' - ${pkgs.writeScript "dynamicFilesFromScript" backup.dynamicFilesFrom} >> ${filesFromTmpFile} - ''} - ''; - } // lib.optionalAttrs (doBackup || backup.backupCleanupCommand != null) { - postStop = '' - ${lib.optionalString (backup.backupCleanupCommand != null) '' - ${pkgs.writeScript "backupCleanupCommand" backup.backupCleanupCommand} - ''} - ${lib.optionalString doBackup '' - rm ${filesFromTmpFile} - ''} - ''; - }) - ) - config.services.restic.backups; - systemd.timers = - lib.mapAttrs' - (name: backup: lib.nameValuePair "restic-backups-${name}" { - wantedBy = [ "timers.target" ]; - timerConfig = backup.timerConfig; - }) - (lib.filterAttrs (_: backup: backup.timerConfig != null) config.services.restic.backups); + } + // lib.optionalAttrs (backup.initialize || doBackup || backup.backupPrepareCommand != null) { + preStart = '' + ${lib.optionalString (backup.backupPrepareCommand != null) '' + ${pkgs.writeScript "backupPrepareCommand" backup.backupPrepareCommand} + ''} + ${lib.optionalString (backup.initialize) '' + ${resticCmd} cat config > /dev/null || ${resticCmd} init + ''} + ${lib.optionalString (backup.paths != null && backup.paths != [ ]) '' + cat ${pkgs.writeText "staticPaths" (lib.concatLines backup.paths)} >> ${filesFromTmpFile} + ''} + ${lib.optionalString (backup.dynamicFilesFrom != null) '' + ${pkgs.writeScript "dynamicFilesFromScript" backup.dynamicFilesFrom} >> ${filesFromTmpFile} + ''} + ''; + } + // lib.optionalAttrs (doBackup || backup.backupCleanupCommand != null) { + postStop = '' + ${lib.optionalString (backup.backupCleanupCommand != null) '' + ${pkgs.writeScript "backupCleanupCommand" backup.backupCleanupCommand} + ''} + ${lib.optionalString doBackup '' + rm ${filesFromTmpFile} + ''} + ''; + } + ) + ) config.services.restic.backups; + systemd.timers = lib.mapAttrs' ( + name: backup: + lib.nameValuePair "restic-backups-${name}" { + wantedBy = [ "timers.target" ]; + timerConfig = backup.timerConfig; + } + ) (lib.filterAttrs (_: backup: backup.timerConfig != null) config.services.restic.backups); # generate wrapper scripts, as described in the createWrapper option - environment.systemPackages = lib.mapAttrsToList (name: backup: let - extraOptions = lib.concatMapStrings (arg: " -o ${arg}") backup.extraOptions; - resticCmd = "${backup.package}/bin/restic${extraOptions}"; - in pkgs.writeShellScriptBin "restic-${name}" '' - set -a # automatically export variables - ${lib.optionalString (backup.environmentFile != null) "source ${backup.environmentFile}"} - # set same environment variables as the systemd service - ${lib.pipe config.systemd.services."restic-backups-${name}".environment [ - (lib.filterAttrs (n: v: v != null && n != "PATH")) - (lib.mapAttrsToList (n: v: "${n}=${v}")) - (lib.concatStringsSep "\n") - ]} - PATH=${config.systemd.services."restic-backups-${name}".environment.PATH}:$PATH + environment.systemPackages = lib.mapAttrsToList ( + name: backup: + let + extraOptions = lib.concatMapStrings (arg: " -o ${arg}") backup.extraOptions; + resticCmd = "${backup.package}/bin/restic${extraOptions}"; + in + pkgs.writeShellScriptBin "restic-${name}" '' + set -a # automatically export variables + ${lib.optionalString (backup.environmentFile != null) "source ${backup.environmentFile}"} + # set same environment variables as the systemd service + ${lib.pipe config.systemd.services."restic-backups-${name}".environment [ + (lib.filterAttrs (n: v: v != null && n != "PATH")) + (lib.mapAttrsToList (n: v: "${n}=${v}")) + (lib.concatStringsSep "\n") + ]} + PATH=${config.systemd.services."restic-backups-${name}".environment.PATH}:$PATH - exec ${resticCmd} "$@" - '') (lib.filterAttrs (_: v: v.createWrapper) config.services.restic.backups); + exec ${resticCmd} "$@" + '' + ) (lib.filterAttrs (_: v: v.createWrapper) config.services.restic.backups); }; } From aca35b7fd69e7236f87046f8cea6c2ed13bad999 Mon Sep 17 00:00:00 2001 From: Tert0 Date: Thu, 30 Jan 2025 15:52:12 +0100 Subject: [PATCH 16/77] nixos/restic: add progressFps option --- nixos/modules/services/backup/restic.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/backup/restic.nix b/nixos/modules/services/backup/restic.nix index 9c3a9d2e36ce..cde2107eb3f4 100644 --- a/nixos/modules/services/backup/restic.nix +++ b/nixos/modules/services/backup/restic.nix @@ -292,6 +292,15 @@ in having to manually specify most options. ''; }; + + progressFps = lib.mkOption { + type = with lib.types; nullOr numbers.nonnegative; + default = null; + description = '' + Controls the frequency of progress reporting. + ''; + example = 0.1; + }; }; } ) @@ -376,7 +385,10 @@ in lib.mapAttrs' ( name: value: lib.nameValuePair (rcloneAttrToConf name) (toRcloneVal value) ) backup.rcloneConfig - ); + ) + // lib.optionalAttrs (backup.progressFps != null) { + RESTIC_PROGRESS_FPS = toString backup.progressFps; + }; path = [ config.programs.ssh.package ]; restartIfChanged = false; wants = [ "network-online.target" ]; From f233c450839401a0daee9264346f7ab373a9f3d3 Mon Sep 17 00:00:00 2001 From: Tert0 Date: Thu, 26 Dec 2024 00:35:34 +0100 Subject: [PATCH 17/77] cups-brother-dcpl3550cdw: init at 1.0.2-0 --- .../cu/cups-brother-dcpl3550cdw/package.nix | 109 ++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 pkgs/by-name/cu/cups-brother-dcpl3550cdw/package.nix diff --git a/pkgs/by-name/cu/cups-brother-dcpl3550cdw/package.nix b/pkgs/by-name/cu/cups-brother-dcpl3550cdw/package.nix new file mode 100644 index 000000000000..b1ff4e01d229 --- /dev/null +++ b/pkgs/by-name/cu/cups-brother-dcpl3550cdw/package.nix @@ -0,0 +1,109 @@ +{ + pkgsi686Linux, + lib, + stdenv, + fetchurl, + dpkg, + makeWrapper, + ghostscript, + file, + gnused, + gnugrep, + coreutils, + which, + perl, +}: +let + version = "1.0.2-0"; + model = "dcpl3550cdw"; + interpreter = "${pkgsi686Linux.stdenv.cc.libc}/lib/ld-linux.so.2"; +in +stdenv.mkDerivation { + pname = "cups-brother-${model}"; + inherit version; + src = fetchurl { + url = "https://download.brother.com/welcome/dlf103919/dcpl3550cdwpdrv-${version}.i386.deb"; + hash = "sha256-FbtqISK3f1q1+JXJ+RP5O/8G0ZW9gcCS7OI0YRljwyY="; + }; + + nativeBuildInputs = [ + dpkg + makeWrapper + ]; + + unpackPhase = '' + runHook preUnpack + + dpkg-deb -x $src $out + + runHook postUnpack + ''; + + installPhase = '' + runHook preInstall + + substituteInPlace $out/opt/brother/Printers/${model}/lpd/filter_${model} \ + --replace-fail /usr/bin/perl ${lib.getExe perl} \ + --replace-fail "PRINTER =~" "PRINTER = \"${model}\"; #" \ + --replace-fail "BR_PRT_PATH =~" "BR_PRT_PATH = \"$out/opt/brother/Printers/${model}/\"; #" + + substituteInPlace $out/opt/brother/Printers/${model}/cupswrapper/brother_lpdwrapper_${model} \ + --replace-fail /usr/bin/perl ${lib.getExe perl} \ + --replace-fail "basedir =~ " "basedir = \"$out/opt/brother/Printers/${model}/\"; #" \ + --replace-fail "PRINTER =~ " "PRINTER = \"${model}\"; #" \ + --replace-fail "LPDCONFIGEXE=" "LPDCONFIGEXE=\"$out/usr/bin/brprintconf_\"; #" + + patchelf --set-interpreter ${interpreter} $out/opt/brother/Printers/${model}/lpd/br${model}filter + patchelf --set-interpreter ${interpreter} $out/usr/bin/brprintconf_${model} + + mkdir -p $out/lib/cups/filter $out/share/cups/model + ln -s $out/opt/brother/Printers/${model}/lpd/filter_${model} $out/lib/cups/filter/brlpdwrapper${model} + ln -s $out/opt/brother/Printers/${model}/cupswrapper/brother_lpdwrapper_${model} $out/lib/cups/filter/brother_lpdwrapper_${model} + ln -s $out/opt/brother/Printers/${model}/cupswrapper/brother_${model}_printer_en.ppd $out/share/cups/model/brother_${model}_printer_en.ppd + + runHook postInstall + ''; + + postFixup = '' + wrapProgram $out/opt/brother/Printers/${model}/lpd/filter_${model} \ + --prefix PATH ":" ${ + lib.makeBinPath [ + ghostscript + file + gnused + gnugrep + coreutils + which + ] + } + wrapProgram $out/opt/brother/Printers/${model}/cupswrapper/brother_lpdwrapper_${model} \ + --prefix PATH ":" ${ + lib.makeBinPath [ + gnugrep + coreutils + ] + } + wrapProgram $out/usr/bin/brprintconf_${model} \ + --set LD_PRELOAD "${pkgsi686Linux.libredirect}/lib/libredirect.so" \ + --set NIX_REDIRECTS /opt=$out/opt + wrapProgram $out/opt/brother/Printers/${model}/lpd/br${model}filter \ + --set LD_PRELOAD "${pkgsi686Linux.libredirect}/lib/libredirect.so" \ + --set NIX_REDIRECTS /opt=$out/opt + ''; + + meta = { + homepage = "https://www.brother.com/"; + downloadPage = "https://support.brother.com/g/b/downloadlist.aspx?c=eu_ot&lang=en&prod=${model}_eu&os=128"; + description = "Brother DCP-L3550CDW printer driver"; + license = with lib.licenses; [ + unfreeRedistributable + gpl2Only + ]; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + platforms = [ + "x86_64-linux" + "i686-linux" + ]; + maintainers = with lib.maintainers; [ Tert0 ]; + }; +} From e82a00718398f3ffeeb0a4d43896e30ed2f43754 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 1 Feb 2025 12:12:43 +0100 Subject: [PATCH 18/77] python313Packages.boto3-stubs: 1.36.10 -> 1.36.11 --- pkgs/development/python-modules/boto3-stubs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/boto3-stubs/default.nix b/pkgs/development/python-modules/boto3-stubs/default.nix index c9b34c0c920b..6663feddc114 100644 --- a/pkgs/development/python-modules/boto3-stubs/default.nix +++ b/pkgs/development/python-modules/boto3-stubs/default.nix @@ -359,7 +359,7 @@ buildPythonPackage rec { pname = "boto3-stubs"; - version = "1.36.10"; + version = "1.36.11"; pyproject = true; disabled = pythonOlder "3.7"; @@ -367,7 +367,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "boto3_stubs"; inherit version; - hash = "sha256-/fgvvifEuQnfEwgJIv4nsuVlv1tUa/7JgF5m6YPBtdk="; + hash = "sha256-tBzTzvXEQvL3fRCkYJ//qowiMjKzYRVK9nT1WWUfcIk="; }; build-system = [ setuptools ]; From 8b55ae776f0611a7802d14bc035451df799e787c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 1 Feb 2025 12:12:46 +0100 Subject: [PATCH 19/77] python313Packages.botocore-stubs: 1.36.10 -> 1.36.11 --- pkgs/development/python-modules/botocore-stubs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/botocore-stubs/default.nix b/pkgs/development/python-modules/botocore-stubs/default.nix index f2893710fa47..6c37fbbf0b33 100644 --- a/pkgs/development/python-modules/botocore-stubs/default.nix +++ b/pkgs/development/python-modules/botocore-stubs/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "botocore-stubs"; - version = "1.36.10"; + version = "1.36.11"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "botocore_stubs"; inherit version; - hash = "sha256-Jubwgr4mJigOgCEAK1u1j4DffOmtXgF5AaAxv0FBe4c="; + hash = "sha256-TBjwmUJURW+DTQEp7R9JQhyM2ABHxOXbkAcPafDm89I="; }; nativeBuildInputs = [ setuptools ]; From 258c90e65ff91eb980db1f4430ac8ffe4117874b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Feb 2025 13:54:32 +0000 Subject: [PATCH 20/77] iosevka: 32.4.0 -> 32.5.0 --- pkgs/by-name/io/iosevka/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/io/iosevka/package.nix b/pkgs/by-name/io/iosevka/package.nix index 7d9cbd545089..a64819d94a95 100644 --- a/pkgs/by-name/io/iosevka/package.nix +++ b/pkgs/by-name/io/iosevka/package.nix @@ -56,16 +56,16 @@ assert (extraParameters != null) -> set != null; buildNpmPackage rec { pname = "Iosevka${toString set}"; - version = "32.4.0"; + version = "32.5.0"; src = fetchFromGitHub { owner = "be5invis"; repo = "iosevka"; rev = "v${version}"; - hash = "sha256-kB4CsC/hHstajLcVYBxO7RD0lsZymrxlUha4cRtQ7Ak="; + hash = "sha256-MzsAkq5l4TP19UJNPW/8hvIqsJd94pADrrv8wLG6NMQ="; }; - npmDepsHash = "sha256-Qr7fN49qyaqaSutrdT7HjWis7jjwYR/S2kxkHs7EhXY="; + npmDepsHash = "sha256-HeqwpZyHLHdMhd/UfXVBonMu+PhStrLCxAMuP/KuTT8="; nativeBuildInputs = [ From 98e5311e92b929f571a3877005182149927ed496 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Feb 2025 18:16:57 +0000 Subject: [PATCH 21/77] cargo-show-asm: 0.2.46 -> 0.2.47 --- pkgs/by-name/ca/cargo-show-asm/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ca/cargo-show-asm/package.nix b/pkgs/by-name/ca/cargo-show-asm/package.nix index e95d1ed9ef07..229f55c258ad 100644 --- a/pkgs/by-name/ca/cargo-show-asm/package.nix +++ b/pkgs/by-name/ca/cargo-show-asm/package.nix @@ -10,14 +10,14 @@ rustPlatform.buildRustPackage rec { pname = "cargo-show-asm"; - version = "0.2.46"; + version = "0.2.47"; src = fetchCrate { inherit pname version; - hash = "sha256-MiODtrEE/arK5SiSs/YuFWBkSQkSUrPqUZcjFd+HNbg="; + hash = "sha256-ZXqcBAB6gxtukQ51JPVl7qUM7eAhiBgmeZZD2pF5q2g="; }; - cargoHash = "sha256-VUqANn4ykAYB4+7h3lHY2UvqduHJPd3P29wsxLpPXFg="; + cargoHash = "sha256-Gd9Zdeww5iBh6N49jBlDVYZFYqhmMlKkuadw83fSYcY="; nativeBuildInputs = [ installShellFiles From 38d77124d7389a1738021db6dbe65d66d83dd322 Mon Sep 17 00:00:00 2001 From: nayeko Date: Sun, 2 Feb 2025 05:31:21 +0800 Subject: [PATCH 22/77] tgpt: 2.7.4 -> 2.9.0 --- pkgs/by-name/tg/tgpt/package.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/tg/tgpt/package.nix b/pkgs/by-name/tg/tgpt/package.nix index 6abb1dd1401d..c0f0a1d3104d 100644 --- a/pkgs/by-name/tg/tgpt/package.nix +++ b/pkgs/by-name/tg/tgpt/package.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "tgpt"; - version = "2.7.4"; + version = "2.9.0"; src = fetchFromGitHub { owner = "aandrew-me"; repo = "tgpt"; tag = "v${version}"; - hash = "sha256-Nk+iLsTXnw6RAc1VztW8ZqeUVsywFjMCOBY2yuWbUXQ="; + hash = "sha256-8R6rb4GvSf4nw78Yxcuh9Vct/qUTkQNatRolT1m7JR4="; }; - vendorHash = "sha256-docq/r6yyMPsuUyFbtCMaYfEVL0gLmyTy4PbrAemR00="; + vendorHash = "sha256-HObEC0SqSHJOgiJxlniN4yJ3U8ksv1HeiMhtOiZRq50="; ldflags = [ "-s" @@ -25,14 +25,15 @@ buildGoModule rec { preCheck = '' # Remove test which need network access rm providers/koboldai/koboldai_test.go + rm providers/phind/phind_test.go ''; - meta = with lib; { + meta = { description = "ChatGPT in terminal without needing API keys"; homepage = "https://github.com/aandrew-me/tgpt"; changelog = "https://github.com/aandrew-me/tgpt/releases/tag/v${version}"; - license = licenses.gpl3Only; - maintainers = with maintainers; [ fab ]; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ fab ]; mainProgram = "tgpt"; }; } From 90d507ae1bc3e6281d4f339bfe24f7d754576545 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Feb 2025 21:49:07 +0000 Subject: [PATCH 23/77] k3s: 1.32.0+k3s1 -> 1.32.1+k3s1 --- .../cluster/k3s/1_32/images-versions.json | 16 ++++++++-------- .../networking/cluster/k3s/1_32/versions.nix | 8 ++++---- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/networking/cluster/k3s/1_32/images-versions.json b/pkgs/applications/networking/cluster/k3s/1_32/images-versions.json index e7a6aa4950ad..cd79731e1bbb 100644 --- a/pkgs/applications/networking/cluster/k3s/1_32/images-versions.json +++ b/pkgs/applications/networking/cluster/k3s/1_32/images-versions.json @@ -1,18 +1,18 @@ { "airgap-images-amd64": { - "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.0%2Bk3s1/k3s-airgap-images-amd64.tar.zst", - "sha256": "0dz8zpb1la98y63x7qs00s28bzn10ycipwsf6a5lvyhzzgpl253a" + "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.1%2Bk3s1/k3s-airgap-images-amd64.tar.zst", + "sha256": "0sn4m1djj8npdx90mny7cwc843ri9q4s0w906rgabjw2v1h56qz0" }, "airgap-images-arm": { - "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.0%2Bk3s1/k3s-airgap-images-arm.tar.zst", - "sha256": "04qsn75xzfl29fksnb0rzcj7cfdi84smmhn9v47l423zbgr30pfv" + "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.1%2Bk3s1/k3s-airgap-images-arm.tar.zst", + "sha256": "1mk8xjc4zj3a6jm53drwicqsipy58faxmq990s14lqvrhh3qjnh4" }, "airgap-images-arm64": { - "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.0%2Bk3s1/k3s-airgap-images-arm64.tar.zst", - "sha256": "1bk8skws87561n06mkwh92c93v5rinf8nmwydn06p8crz9ggp5q6" + "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.1%2Bk3s1/k3s-airgap-images-arm64.tar.zst", + "sha256": "0s1h6lksn83r71ia61h9cjwiqigz9nw9n9jm92749782c8zi918x" }, "images-list": { - "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.0%2Bk3s1/k3s-images.txt", - "sha256": "1gqiaszfw49hsbn7xkkadykaf028vys13ykqvpkqar0f7hwwbja6" + "url": "https://github.com/k3s-io/k3s/releases/download/v1.32.1%2Bk3s1/k3s-images.txt", + "sha256": "08qxykq9aylfgm24g8ybki62r2sdzvnmv72pan4i2nn0js93nnk9" } } diff --git a/pkgs/applications/networking/cluster/k3s/1_32/versions.nix b/pkgs/applications/networking/cluster/k3s/1_32/versions.nix index 1e2c9a4fac75..6a966b4f0ba8 100644 --- a/pkgs/applications/networking/cluster/k3s/1_32/versions.nix +++ b/pkgs/applications/networking/cluster/k3s/1_32/versions.nix @@ -1,8 +1,8 @@ { - k3sVersion = "1.32.0+k3s1"; - k3sCommit = "cca8facaa33a3ec7897349a8740fd96029590c31"; - k3sRepoSha256 = "0l8mciwv2wr266zxv9zc5wpgf92gqvzg4d08z4g63wbvsi7zflzh"; - k3sVendorHash = "sha256-3hY67A6GbzB2ki5GB7GmmmGG5A4cup17zhkUNiN1chk="; + k3sVersion = "1.32.1+k3s1"; + k3sCommit = "6a322f122729e0e668ca67fd9f0e993541bdce49"; + k3sRepoSha256 = "00ljl6mzbyvyy25cz0k511wmm1zhllvz0l2ns72ic4xjg9sxq6zi"; + k3sVendorHash = "sha256-/VQslKifAKFo57Zut9F8jWWNuMRFlMgpGo/FoqutT7Q="; chartVersions = import ./chart-versions.nix; imagesVersions = builtins.fromJSON (builtins.readFile ./images-versions.json); k3sRootVersion = "0.14.1"; From a49761e3f7107466f30622186c3435a538a2e0ca Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 1 Feb 2025 18:15:39 +0200 Subject: [PATCH 24/77] hydra-check: 2.0.1 -> 2.0.2 Diff: https://github.com/nix-community/hydra-check/compare/v2.0.1...v2.0.2 --- pkgs/by-name/hy/hydra-check/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/hy/hydra-check/package.nix b/pkgs/by-name/hy/hydra-check/package.nix index 11bd4c99373f..46823dab7d69 100644 --- a/pkgs/by-name/hy/hydra-check/package.nix +++ b/pkgs/by-name/hy/hydra-check/package.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "hydra-check"; - version = "2.0.1"; + version = "2.0.2"; src = fetchFromGitHub { owner = "nix-community"; repo = "hydra-check"; - rev = "v${version}"; - hash = "sha256-QdCXToHNymOdlTyQjk9eo7LTznGKB+3pIOgjjaGoTXg="; + tag = "v${version}"; + hash = "sha256-FfeT6oxhHORbd4uR4gRNhI6W9YOkG8ieiL0Co3GWzb4="; }; - cargoHash = "sha256-iqFUMok36G1qSUbfY7WD6etY0dtfro3F7mLoOELzxbs="; + cargoHash = "sha256-35e+ACUyp5sQiHz9fgDXXz365XbxHMLcX2aTA41rJN0="; nativeBuildInputs = [ pkg-config From eb1be194c33310eabc1c04a397b4d5cc3b98434b Mon Sep 17 00:00:00 2001 From: normalc Date: Fri, 31 Jan 2025 09:21:49 -0500 Subject: [PATCH 25/77] libmaddy-markdown: init at 1.3.0 --- pkgs/by-name/li/libmaddy-markdown/package.nix | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 pkgs/by-name/li/libmaddy-markdown/package.nix diff --git a/pkgs/by-name/li/libmaddy-markdown/package.nix b/pkgs/by-name/li/libmaddy-markdown/package.nix new file mode 100644 index 000000000000..98a9ee3cff59 --- /dev/null +++ b/pkgs/by-name/li/libmaddy-markdown/package.nix @@ -0,0 +1,40 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, + nix-update-script, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "libmaddy-markdown"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "progsource"; + repo = "maddy"; + tag = finalAttrs.version; + hash = "sha256-sVUXACT94PSPcohnOyIp7KK8baCBuf6ZNMIyk6Cfdjg="; + }; + + dontBuild = true; + dontConfigure = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out/include/maddy + install -Dm444 include/maddy/* -t $out/include/maddy + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "C++ Markdown to HTML header-only parser library"; + homepage = "https://github.com/progsource/maddy"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.normalcea ]; + platforms = lib.platforms.unix; + }; +}) From 05bff2f1eb226eb502688a88186673d0da4691ca Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 2 Feb 2025 02:18:14 +0000 Subject: [PATCH 26/77] natural-docs: 2.3 -> 2.3.1 --- pkgs/by-name/na/natural-docs/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/na/natural-docs/package.nix b/pkgs/by-name/na/natural-docs/package.nix index fcffb10de7df..51fcd609549f 100644 --- a/pkgs/by-name/na/natural-docs/package.nix +++ b/pkgs/by-name/na/natural-docs/package.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "natural-docs"; - version = "2.3"; + version = "2.3.1"; src = fetchzip { url = "https://naturaldocs.org/download/natural_docs/${version}/Natural_Docs_${version}.zip"; - sha256 = "sha256-yk9PxrZ6+ocqGLB+xCBGiQKnHLMdp2r+NuoMhWsr0GM="; + sha256 = "sha256-gjAhS2hdFA8G+E5bJD18BQdb7PrBeRnpBBSlnVJ5hgY="; }; dontPatch = true; From b47982cc709c1da6900926c7bb1518175503f430 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Fri, 24 Jan 2025 22:21:22 +0000 Subject: [PATCH 27/77] diffoscope: 285 -> 287 Changes: - https://diffoscope.org/news/diffoscope-286-released/ - https://diffoscope.org/news/diffoscope-287-released/ --- pkgs/tools/misc/diffoscope/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix index f2846c846abf..6f0efb5fc4ee 100644 --- a/pkgs/tools/misc/diffoscope/default.nix +++ b/pkgs/tools/misc/diffoscope/default.nix @@ -106,11 +106,11 @@ in # Note: when upgrading this package, please run the list-missing-tools.sh script as described below! python.pkgs.buildPythonApplication rec { pname = "diffoscope"; - version = "285"; + version = "287"; src = fetchurl { url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2"; - hash = "sha256-OTS4Lr2OF1mdIAiPGK31Ptc/gr3D216Z1kvKOMNeaJI="; + hash = "sha256-0s7pT8pAMCE+csd9/+Dv4AbCK0qxDacQ9fNcMYCNDbw="; }; outputs = [ From ca8728859a95baf0b74b8c7715f8c68a2ae296ef Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sun, 2 Feb 2025 14:32:13 +0200 Subject: [PATCH 28/77] hydra-check: add versionCheckHook --- pkgs/by-name/hy/hydra-check/package.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/by-name/hy/hydra-check/package.nix b/pkgs/by-name/hy/hydra-check/package.nix index 46823dab7d69..dd1e363c7f1a 100644 --- a/pkgs/by-name/hy/hydra-check/package.nix +++ b/pkgs/by-name/hy/hydra-check/package.nix @@ -6,6 +6,7 @@ openssl, stdenv, installShellFiles, + versionCheckHook, }: rustPlatform.buildRustPackage rec { @@ -37,6 +38,12 @@ rustPlatform.buildRustPackage rec { --zsh <($out/bin/hydra-check --shell-completion zsh) ''; + nativeInstallCheckInputs = [ + versionCheckHook + ]; + + doInstallCheck = true; + meta = { description = "Check hydra for the build status of a package"; homepage = "https://github.com/nix-community/hydra-check"; From 3f52bcfe739001538a970bec06ee7e3ccd895714 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 2 Feb 2025 11:41:24 -0800 Subject: [PATCH 29/77] python313Packages.igloohome-api: init at 0.1.0 --- .../python-modules/igloohome-api/default.nix | 43 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 45 insertions(+) create mode 100644 pkgs/development/python-modules/igloohome-api/default.nix diff --git a/pkgs/development/python-modules/igloohome-api/default.nix b/pkgs/development/python-modules/igloohome-api/default.nix new file mode 100644 index 000000000000..e119d7d8b0f2 --- /dev/null +++ b/pkgs/development/python-modules/igloohome-api/default.nix @@ -0,0 +1,43 @@ +{ + aiohttp, + buildPythonPackage, + dacite, + fetchFromGitHub, + hatchling, + lib, + pyjwt, +}: + +buildPythonPackage rec { + pname = "igloohome-api"; + version = "0.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "keithle888"; + repo = "igloohome-api"; + tag = "v${version}"; + hash = "sha256-CFxVZiga6008oNbacK12t7U8mOvL8YgEgQ82MsvZ46w="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + aiohttp + dacite + pyjwt + ]; + + pythonImportsCheck = [ "igloohome_api" ]; + + # upstream has no tests + doCheck = false; + + meta = { + changelog = "https://github.com/keithle888/igloohome-api/releases/tag/${src.tag}"; + description = "Python package for using igloohome's API"; + homepage = "https://github.com/keithle888/igloohome-api"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fbb6c7877c80..a5f4e5e09ae0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6231,6 +6231,8 @@ self: super: with self; { inherit (pkgs) cgal libxml2; }; + igloohome-api = callPackage ../development/python-modules/igloohome-api { }; + ignite = callPackage ../development/python-modules/ignite { }; igraph = callPackage ../development/python-modules/igraph { From 71311029ce01343287ba763b5dffbfa64a44d7a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 2 Feb 2025 11:48:36 -0800 Subject: [PATCH 30/77] python313Packages.qbusmqttapi: init at 1.2.4 --- .../python-modules/qbusmqttapi/default.nix | 33 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 35 insertions(+) create mode 100644 pkgs/development/python-modules/qbusmqttapi/default.nix diff --git a/pkgs/development/python-modules/qbusmqttapi/default.nix b/pkgs/development/python-modules/qbusmqttapi/default.nix new file mode 100644 index 000000000000..0aaa681a024d --- /dev/null +++ b/pkgs/development/python-modules/qbusmqttapi/default.nix @@ -0,0 +1,33 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + setuptools, +}: + +buildPythonPackage rec { + pname = "qbusmqttapi"; + version = "1.2.4"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Qbus-iot"; + repo = "qbusmqttapi"; + tag = "v${version}"; + hash = "sha256-daa+AwoOLJRaMzaUCai6pbYd8ux9v8NTR/mnsss/r4c="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "qbusmqttapi" ]; + + # upstream has no tests + doCheck = false; + + meta = { + description = "MQTT API for Qbus Home Automation"; + homepage = "https://github.com/Qbus-iot/qbusmqttapi"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fbb6c7877c80..c956361577ce 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13726,6 +13726,8 @@ self: super: with self; { qasync = callPackage ../development/python-modules/qasync { }; + qbusmqttapi = callPackage ../development/python-modules/qbusmqttapi { }; + qcelemental = callPackage ../development/python-modules/qcelemental { }; qcengine = callPackage ../development/python-modules/qcengine { }; From 77da99913c9b5a7d8d5ec16321fcfa9945e02a0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 2 Feb 2025 11:54:00 -0800 Subject: [PATCH 31/77] python313Packages.python-google-drive-api: init at 0.0.2 --- .../python-google-drive-api/default.nix | 42 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/python-google-drive-api/default.nix diff --git a/pkgs/development/python-modules/python-google-drive-api/default.nix b/pkgs/development/python-modules/python-google-drive-api/default.nix new file mode 100644 index 000000000000..1cb239fb79ba --- /dev/null +++ b/pkgs/development/python-modules/python-google-drive-api/default.nix @@ -0,0 +1,42 @@ +{ + aiohttp, + buildPythonPackage, + fetchFromGitHub, + lib, + mashumaro, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "python-google-drive-api"; + version = "0.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tronikos"; + repo = "python-google-drive-api"; + tag = "v${version}"; + hash = "sha256-JvPaMD7UHDqCQCoh1Q8jNFw4R7Jbp2YQDBI3xVp1L1g="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + aiohttp + mashumaro + ]; + + pythonImportsCheck = [ "google_drive_api" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Python client library for Google Drive API"; + homepage = "https://github.com/tronikos/python-google-drive-api"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fbb6c7877c80..51507d777937 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9502,6 +9502,8 @@ self: super: with self; { python-debian = callPackage ../development/python-modules/python-debian { }; + python-google-drive-api = callPackage ../development/python-modules/python-google-drive-api { }; + python-hcl2 = callPackage ../development/python-modules/python-hcl2 { }; python-lorem = callPackage ../development/python-modules/python-lorem { }; From b857181f83c7f5f589a7e108b2a0d1bebca7834a Mon Sep 17 00:00:00 2001 From: normalc Date: Fri, 31 Jan 2025 09:37:45 -0500 Subject: [PATCH 32/77] libxmlxx5: init at 5.4 --- pkgs/by-name/li/libxmlxx5/package.nix | 40 +++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 pkgs/by-name/li/libxmlxx5/package.nix diff --git a/pkgs/by-name/li/libxmlxx5/package.nix b/pkgs/by-name/li/libxmlxx5/package.nix new file mode 100644 index 000000000000..52704f127edb --- /dev/null +++ b/pkgs/by-name/li/libxmlxx5/package.nix @@ -0,0 +1,40 @@ +{ + lib, + stdenv, + fetchurl, + pkg-config, + libxml2, + glibmm, + meson, + ninja, +}: + +stdenv.mkDerivation rec { + pname = "libxmlxx5"; + version = "5.4"; + + src = fetchurl { + url = "https://download.gnome.org/sources/libxml++/${version}/libxml++-${lib.versions.pad 3 version}.tar.xz"; + hash = "sha256-6aI8Q2aGqUaY0hOOa8uvhJEh1jv6D1DcNP77/XlWaEg="; + }; + + nativeBuildInputs = [ + pkg-config + meson + ninja + ]; + + buildInputs = [ glibmm ]; + + propagatedBuildInputs = [ libxml2 ]; + + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + + meta = { + description = "C++ wrapper for the libxml2 XML parser library"; + homepage = "https://libxmlplusplus.sourceforge.net/"; + license = lib.licenses.lgpl2Plus; + maintainers = [ lib.maintainers.normalcea ]; + platforms = lib.platforms.unix; + }; +} From c823d3ae1a9f77c1f3bebb2165dc45f3dd0b6fcd Mon Sep 17 00:00:00 2001 From: normalc Date: Fri, 31 Jan 2025 09:41:06 -0500 Subject: [PATCH 33/77] libnick: init at 2025.1.0 --- pkgs/by-name/li/libnick/package.nix | 83 +++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 pkgs/by-name/li/libnick/package.nix diff --git a/pkgs/by-name/li/libnick/package.nix b/pkgs/by-name/li/libnick/package.nix new file mode 100644 index 000000000000..b33595964c9e --- /dev/null +++ b/pkgs/by-name/li/libnick/package.nix @@ -0,0 +1,83 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + ninja, + pkg-config, + validatePkgConfig, + openssl, + sqlcipher, + boost, + curl, + glib, + libsecret, + libmaddy-markdown, + testers, + nix-update-script, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "libnick"; + version = "2025.1.0"; + + src = fetchFromGitHub { + owner = "NickvisionApps"; + repo = "libnick"; + tag = finalAttrs.version; + hash = "sha256-Y7Vn9KaZjEJ29o2GouNl5B/svAtJ24El9WYgXHhnxho="; + }; + + nativeBuildInputs = + [ + cmake + ninja + ] + ++ lib.optionals stdenv.hostPlatform.isUnix [ + pkg-config + validatePkgConfig + ]; + + buildInputs = + [ + boost + libmaddy-markdown + ] + ++ lib.optionals stdenv.hostPlatform.isUnix [ + glib + openssl + ] + ++ lib.optional stdenv.hostPlatform.isWindows sqlcipher; + + propagatedBuildInputs = [ + curl + libsecret + ]; + + cmakeFlags = [ + (lib.cmakeBool "BUILD_TESTING" finalAttrs.finalPackage.doCheck) + (lib.cmakeFeature "USE_LIBSECRET" "true") + ]; + + postPatch = '' + substituteInPlace cmake/libnick.pc.in \ + --replace-fail 'libdir=''${exec_prefix}/@CMAKE_INSTALL_LIBDIR@' \ + 'libdir=@CMAKE_INSTALL_FULL_LIBDIR@' \ + --replace-fail 'includedir=''${prefix}/@CMAKE_INSTALL_INCLUDEDIR@' \ + 'includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@' + ''; + + passthru = { + tests.pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; }; + updateScript = nix-update-script { }; + }; + + meta = { + description = "Cross-platform development base for native Nickvision applications"; + homepage = "https://github.com/NickvisionApps/libnick"; + license = lib.licenses.gpl3Plus; + maintainers = [ lib.maintainers.normalcea ]; + platforms = lib.platforms.unix ++ lib.platforms.windows; + pkgConfigModules = [ "libnick" ]; + }; +}) From bf730a47d46e9058a4fb72aa0cfb578162f2b466 Mon Sep 17 00:00:00 2001 From: normalc Date: Fri, 31 Jan 2025 09:41:34 -0500 Subject: [PATCH 34/77] parabolic: 2024.5.0 -> 2025.1.4 --- pkgs/by-name/pa/parabolic/deps.json | 237 -------------------------- pkgs/by-name/pa/parabolic/package.nix | 161 ++++++++++------- pkgs/by-name/pa/parabolic/update.sh | 18 -- 3 files changed, 102 insertions(+), 314 deletions(-) delete mode 100644 pkgs/by-name/pa/parabolic/deps.json delete mode 100755 pkgs/by-name/pa/parabolic/update.sh diff --git a/pkgs/by-name/pa/parabolic/deps.json b/pkgs/by-name/pa/parabolic/deps.json deleted file mode 100644 index 3bdb9a2e2489..000000000000 --- a/pkgs/by-name/pa/parabolic/deps.json +++ /dev/null @@ -1,237 +0,0 @@ -[ - { - "pname": "Ace4896.DBus.Services.Secrets", - "version": "1.2.0", - "sha256": "1i1rwv8z2dx0mjib7vair2w7ylngmrcpbd012sdlpvdjpx0af0bn" - }, - { - "pname": "Cake.Tool", - "version": "4.0.0", - "sha256": "11vc5fimi6w465081sqxs4zhw7grr6v8ga7nl1mscdl43wv33ql2" - }, - { - "pname": "GetText.NET", - "version": "1.9.14", - "sha256": "18z4cf0dldcf41z8xgj3gdlvj9w5a9ikgj72623r0i740ndnl094" - }, - { - "pname": "GirCore.Adw-1", - "version": "0.5.0", - "sha256": "130jwgkkphyhsk0c14kqmznx9ywfhiwa37lzjn2qgr68akgd3xd9" - }, - { - "pname": "GirCore.Cairo-1.0", - "version": "0.5.0", - "sha256": "1x9d3jzzpf72gzxq6qf02ih2x79y9m5zqc874drl5wc8p1qbryzn" - }, - { - "pname": "GirCore.FreeType2-2.0", - "version": "0.5.0", - "sha256": "1688rn8dycqcslfk850w8w2pbs4b93nmj1xa6g4n6ncy799780cy" - }, - { - "pname": "GirCore.Gdk-4.0", - "version": "0.5.0", - "sha256": "1v2nl9gh941lqzfvryslhgsx9nwaf91q131xrpilrmk18xn3hpd6" - }, - { - "pname": "GirCore.GdkPixbuf-2.0", - "version": "0.5.0", - "sha256": "0gbmckch435s2fxpxzqjwckfsxqsidv1nz3wil3v1a2iqvk3imnr" - }, - { - "pname": "GirCore.Gio-2.0", - "version": "0.5.0", - "sha256": "1yx23jcyy7pzjkbcf0v0s4nw1n51rcaxf8dg7zqfzhvg9f0k2iwl" - }, - { - "pname": "GirCore.GLib-2.0", - "version": "0.5.0", - "sha256": "169y390cgda0ps60g2j6vf5bkr6bfmxvgzga8k697bsl3dfzkkvv" - }, - { - "pname": "GirCore.GObject-2.0", - "version": "0.5.0", - "sha256": "1w35a1kmn0ggnlwcsib9m4427299f9ylm7xkm69yzswdwzrfv1kj" - }, - { - "pname": "GirCore.Graphene-1.0", - "version": "0.5.0", - "sha256": "16y836gzn9ah963lhg533hik8wh984j33gc60kzn8nziwxl6jplq" - }, - { - "pname": "GirCore.Gsk-4.0", - "version": "0.5.0", - "sha256": "152c839l1lv6qc8pccmkzm72sfh45n9qpyyarxvllnn0lzhd50lf" - }, - { - "pname": "GirCore.Gtk-4.0", - "version": "0.5.0", - "sha256": "0lj69qx9ksz9w94j4ryy8hr0ja60ijvx8wpr4l1i7ic01gsyxprc" - }, - { - "pname": "GirCore.HarfBuzz-0.0", - "version": "0.5.0", - "sha256": "0cnic254jwkndcdg51wvi1vvh4f947ylwg63ag428gfbmx0684c4" - }, - { - "pname": "GirCore.Pango-1.0", - "version": "0.5.0", - "sha256": "0p4ks9yk3d8pl9c58zc1ncdzw45fkkmgpwn29vj1wax73iml1k79" - }, - { - "pname": "GirCore.PangoCairo-1.0", - "version": "0.5.0", - "sha256": "0j532ixh9adk2gwg55w81m5hwy0c6a3307jr4157pbjg2qm1x4mn" - }, - { - "pname": "Markdig", - "version": "0.33.0", - "sha256": "1dj06wgdqmjji4nfr1dysz7hwp5bjgsrk9qjkdq82d7gk6nmhs9r" - }, - { - "pname": "Meziantou.Framework.Win32.CredentialManager", - "version": "1.4.5", - "sha256": "1ikjxj6wir2jcjwlmd4q7zz0b4g40808gx59alvad31sb2aqp738" - }, - { - "pname": "Microsoft.CSharp", - "version": "4.7.0", - "sha256": "0gd67zlw554j098kabg887b5a6pq9kzavpa3jjy5w53ccjzjfy8j" - }, - { - "pname": "Microsoft.Data.Sqlite.Core", - "version": "8.0.0", - "sha256": "05qjnzk1fxybks92y93487l3mj5nghjcwiy360xjgk3jykz3rv39" - }, - { - "pname": "Microsoft.NETCore.Platforms", - "version": "1.1.0", - "sha256": "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm" - }, - { - "pname": "Microsoft.NETCore.Targets", - "version": "5.0.0", - "sha256": "0z3qyv7qal5irvabc8lmkh58zsl42mrzd1i0sssvzhv4q4kl3cg6" - }, - { - "pname": "Microsoft.Win32.SystemEvents", - "version": "8.0.0", - "sha256": "05392f41ijgn17y8pbjcx535l1k09krnq3xdp60kyq568sn6xk2i" - }, - { - "pname": "Nickvision.Aura", - "version": "2023.11.4", - "sha256": "0gasyglp1pgi0s6zqzmbm603j3j36vvr68grv6g93fdj2vjlmkxs" - }, - { - "pname": "Octokit", - "version": "9.0.0", - "sha256": "0kw49w1hxk4d2x9598012z9q1yr3ml5rm06fy1jnmhy44s3d3jp5" - }, - { - "pname": "pythonnet", - "version": "3.0.3", - "sha256": "0qnivddg13vi1fb22z3krsj1gczyyfd56nmk6gas6qrwlxdzhriv" - }, - { - "pname": "SQLitePCLRaw.bundle_e_sqlcipher", - "version": "2.1.6", - "sha256": "15v2x7y4k7cl47a9jccbvgbwngwi5dz6qhv0cxpcasx4v5i9aila" - }, - { - "pname": "SQLitePCLRaw.core", - "version": "2.1.6", - "sha256": "1w8zsgz2w2q0a9cw9cl1rzrpv48a04nhyq67ywan6xlgknds65a7" - }, - { - "pname": "SQLitePCLRaw.lib.e_sqlcipher", - "version": "2.1.6", - "sha256": "0dl5an15whs4yl5hm2wibzbfigzck0flah8a07k99y1bhbmv080z" - }, - { - "pname": "SQLitePCLRaw.provider.e_sqlcipher", - "version": "2.1.6", - "sha256": "1jx8d4dq5w2951b7w722gnxbfgdklwazc48kcbdzylkglwkrqgrq" - }, - { - "pname": "System.CodeDom", - "version": "8.0.0", - "sha256": "0zyzd15v0nf8gla7nz243m1kff8ia6vqp471i3g7xgawgj5n21dv" - }, - { - "pname": "System.Drawing.Common", - "version": "8.0.0", - "sha256": "1j4rsm36bnwqmh5br9mzmj0ikjnc39k26q6l9skjlrnw8hlngwy4" - }, - { - "pname": "System.IO", - "version": "4.3.0", - "sha256": "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f" - }, - { - "pname": "System.IO.Pipelines", - "version": "6.0.0", - "sha256": "08211lvckdsdbd67xz4f6cyk76cli565j0dby1grlc4k9bhwby65" - }, - { - "pname": "System.Management", - "version": "8.0.0", - "sha256": "1zbwj6ii8axa4w8ymjzi9d9pj28nhswygahyqppvzaxypw6my2hz" - }, - { - "pname": "System.Memory", - "version": "4.5.3", - "sha256": "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a" - }, - { - "pname": "System.Memory", - "version": "4.5.5", - "sha256": "08jsfwimcarfzrhlyvjjid61j02irx6xsklf32rv57x2aaikvx0h" - }, - { - "pname": "System.Reflection", - "version": "4.3.0", - "sha256": "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m" - }, - { - "pname": "System.Reflection.Emit", - "version": "4.3.0", - "sha256": "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74" - }, - { - "pname": "System.Reflection.Emit.ILGeneration", - "version": "4.3.0", - "sha256": "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q" - }, - { - "pname": "System.Reflection.Primitives", - "version": "4.3.0", - "sha256": "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276" - }, - { - "pname": "System.Runtime", - "version": "4.3.0", - "sha256": "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7" - }, - { - "pname": "System.Text.Encoding", - "version": "4.3.0", - "sha256": "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr" - }, - { - "pname": "System.Threading.Tasks", - "version": "4.3.0", - "sha256": "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7" - }, - { - "pname": "Tmds.DBus", - "version": "0.15.0", - "sha256": "1bz5j6wfp9hn4fg5vjxl6mr9lva4gx6zqncqyqxrcb8lw7hvhwc6" - }, - { - "pname": "Tmds.DBus.Protocol", - "version": "0.15.0", - "sha256": "0d99kcs7r9cp6gpyc7z230czkkyx4164x86dhy0mca73f2ykc2g2" - } -] diff --git a/pkgs/by-name/pa/parabolic/package.nix b/pkgs/by-name/pa/parabolic/package.nix index 21f6dbe6d38b..308f508604d9 100644 --- a/pkgs/by-name/pa/parabolic/package.nix +++ b/pkgs/by-name/pa/parabolic/package.nix @@ -1,77 +1,120 @@ -{ lib -, buildDotnetModule -, fetchFromGitHub -, dotnetCorePackages -, gtk4 -, libadwaita -, pkg-config -, wrapGAppsHook4 -, glib -, shared-mime-info -, gdk-pixbuf -, blueprint-compiler -, python3 -, ffmpeg +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + gettext, + itstool, + ninja, + yelp-tools, + pkg-config, + libnick, + boost, + glib, + shared-mime-info, + gtk4, + libadwaita, + wrapGAppsHook4, + libxmlxx5, + blueprint-compiler, + qt6, + yt-dlp, + ffmpeg, + aria2, + nix-update-script, + uiPlatform ? "gnome", }: +assert lib.assertOneOf "uiPlatform" uiPlatform [ + "gnome" + "qt" +]; -buildDotnetModule rec { +stdenv.mkDerivation (finalAttrs: { pname = "parabolic"; - version = "2024.5.0"; + version = "2025.1.4"; src = fetchFromGitHub { owner = "NickvisionApps"; repo = "Parabolic"; - rev = version; - hash = "sha256-awbCn7W7RUSuEByXxLGrsmYjmxCrwywhhrMJq/iM1Uc="; - fetchSubmodules = true; + tag = "${finalAttrs.version}"; + hash = "sha256-B8/e5urhy5tAgHNd/PR3HlNQd0M0CxgC56nArFGlQ9c="; }; - dotnet-sdk = dotnetCorePackages.sdk_8_0; - dotnet-runtime = dotnetCorePackages.runtime_8_0; - pythonEnv = python3.withPackages(ps: with ps; [ yt-dlp ]); + nativeBuildInputs = + [ + cmake + gettext + ninja + pkg-config + itstool + yelp-tools + ] + ++ lib.optionals (uiPlatform == "gnome") [ + wrapGAppsHook4 + blueprint-compiler + glib + shared-mime-info + ] + ++ lib.optional (uiPlatform == "qt") qt6.wrapQtAppsHook; - projectFile = "NickvisionTubeConverter.GNOME/NickvisionTubeConverter.GNOME.csproj"; - nugetDeps = ./deps.json; - executables = "NickvisionTubeConverter.GNOME"; + buildInputs = + [ + libnick + boost + ] + ++ lib.optionals (uiPlatform == "qt") [ + qt6.qtbase + qt6.qtsvg + ] + ++ lib.optionals (uiPlatform == "gnome") [ + glib + gtk4 + libadwaita + libxmlxx5 + ]; - nativeBuildInputs = [ - pkg-config - wrapGAppsHook4 - glib - shared-mime-info - gdk-pixbuf - blueprint-compiler + cmakeFlags = [ + (lib.cmakeFeature "UI_PLATFORM" uiPlatform) ]; - buildInputs = [ gtk4 libadwaita ]; + preFixup = + lib.optionalString (uiPlatform == "gnome") "gappsWrapperArgs" + + lib.optionalString (uiPlatform == "qt") "qtWrapperArgs" + + "+=(--prefix PATH : ${ + lib.makeBinPath [ + aria2 + ffmpeg + yt-dlp + ] + })"; - runtimeDeps = [ - gtk4 - libadwaita - glib - gdk-pixbuf - ]; + passthru.updateScript = nix-update-script { }; - postPatch = '' - substituteInPlace NickvisionTubeConverter.Shared/Linux/org.nickvision.tubeconverter.desktop.in --replace '@EXEC@' "NickvisionTubeConverter.GNOME" - ''; + meta = { + description = "Graphical frontend for yt-dlp to download video and audio"; + longDescription = '' + Parabolic is a user-friendly frontend for `yt-dlp` that supports + many features including but limited to: + - Downloading and converting videos and audio using ffmpeg. + - Supporting multiple codecs. + - Offering YouTube sponsorblock support. + - Running multiple downloads at a time. + - Downloading metadata and video subtitles. + - Allowing the use of `aria2` for parallel downloads. + - Offering a graphical keyring to manage account credentials. + - Being available as both a Qt and GNOME application. - postInstall = '' - install -Dm444 NickvisionTubeConverter.Shared/Resources/org.nickvision.tubeconverter.svg -t $out/share/icons/hicolor/scalable/apps/ - install -Dm444 NickvisionTubeConverter.Shared/Resources/org.nickvision.tubeconverter-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/ - install -Dm444 NickvisionTubeConverter.Shared/Linux/org.nickvision.tubeconverter.desktop.in -T $out/share/applications/org.nickvision.tubeconverter.desktop - ''; - - makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ pythonEnv ffmpeg ]}" ]; - - passthru.updateScript = ./update.sh; - - meta = with lib; { - description = "Download web video and audio"; + By default, the GNOME interface is used, but the Qt interface + can be built by overriding the `uiPlatform` argument to `"qt"` + over the default value `"gnome"`. + ''; homepage = "https://github.com/NickvisionApps/Parabolic"; - license = licenses.mit; - maintainers = with maintainers; [ ewuuwe ]; - mainProgram = "NickvisionTubeConverter.GNOME"; - platforms = platforms.linux; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ + normalcea + getchoo + ]; + mainProgram = "org.nickvision.tubeconverter"; + platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/by-name/pa/parabolic/update.sh b/pkgs/by-name/pa/parabolic/update.sh deleted file mode 100755 index 798dba869403..000000000000 --- a/pkgs/by-name/pa/parabolic/update.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts -#shellcheck shell=bash - -set -eu -o pipefail - -version=$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \ - https://api.github.com/repos/NickvisionApps/Parabolic/releases/latest | jq -e -r .tag_name) -old_version=$(nix-instantiate --eval -A parabolic.version | jq -e -r) - -if [[ $version == "$old_version" ]]; then - echo "New version same as old version, nothing to do." >&2 - exit 0 -fi - -update-source-version parabolic "$version" - -$(nix-build -A parabolic.fetch-deps --no-out-link) "$(dirname -- "${BASH_SOURCE[0]}")/deps.nix" From d3c65f06a6853bb504dc36be59b848b19bfc495d Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Sun, 2 Feb 2025 23:14:36 +0100 Subject: [PATCH 35/77] python312Packages.nvidia-ml-py: 12.560.30 -> 12.570.86 --- pkgs/development/python-modules/nvidia-ml-py/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/nvidia-ml-py/default.nix b/pkgs/development/python-modules/nvidia-ml-py/default.nix index 08beac0daf50..f5b4ea48a75d 100644 --- a/pkgs/development/python-modules/nvidia-ml-py/default.nix +++ b/pkgs/development/python-modules/nvidia-ml-py/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "nvidia-ml-py"; - version = "12.560.30"; + version = "12.570.86"; pyproject = true; src = fetchPypi { - inherit pname version; - extension = "tar.gz"; - hash = "sha256-8CVNx0AGR2gKBy7gJQm/1GECtgvf7KMhV21NSBfn/pc="; + pname = "nvidia_ml_py"; + inherit version; + hash = "sha256-BQjUoMe20BXPV0UwuVpi7U/InaO4tH4a7+Z3fbFw7Is="; }; patches = [ From 0e529ab34284f0270140178cfd74ee0cc7bb3af6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 2 Feb 2025 17:30:01 -0800 Subject: [PATCH 36/77] python313Packages.simsimd: 6.2.3 -> 6.3.0 Diff: https://github.com/ashvardanian/simsimd/compare/refs/tags/v6.2.3...v6.3.0 Changelog: https://github.com/ashvardanian/SimSIMD/releases/tag/v6.3.0 --- pkgs/development/python-modules/simsimd/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/simsimd/default.nix b/pkgs/development/python-modules/simsimd/default.nix index 9c03f1bb904b..2dbd8773d86d 100644 --- a/pkgs/development/python-modules/simsimd/default.nix +++ b/pkgs/development/python-modules/simsimd/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "simsimd"; - version = "6.2.3"; + version = "6.3.0"; pyproject = true; src = fetchFromGitHub { owner = "ashvardanian"; repo = "simsimd"; tag = "v${version}"; - hash = "sha256-9+m1NkXwlHtqeXvsyYhhT+7KNZ1aFUxxA/+i3GbQvgs="; + hash = "sha256-RQgPjU2uOxOnDacIARMAkKvnUIHLzRsaxLERmTrLj1Q="; }; build-system = [ From d794669e128db518d2ea24dc3ea1d82cae16dafe Mon Sep 17 00:00:00 2001 From: hacker1024 Date: Thu, 29 Aug 2024 15:10:35 +1000 Subject: [PATCH 37/77] python312Packages.dlib: Inherit build environment from dlib and fix tests --- .../python-modules/dlib/default.nix | 31 ++++++++++++++----- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/dlib/default.nix b/pkgs/development/python-modules/dlib/default.nix index 5faf143daab5..d8b863ade3f8 100644 --- a/pkgs/development/python-modules/dlib/default.nix +++ b/pkgs/development/python-modules/dlib/default.nix @@ -1,21 +1,20 @@ { - stdenv, buildPythonPackage, dlib, - python, pytestCheckHook, more-itertools, - sse4Support ? stdenv.hostPlatform.sse4_1Support, - avxSupport ? stdenv.hostPlatform.avxSupport, }: buildPythonPackage { inherit (dlib) + stdenv pname version src nativeBuildInputs buildInputs + cmakeFlags + passthru meta ; @@ -34,10 +33,26 @@ buildPythonPackage { --replace "pytest==3.8" "pytest" ''; - setupPyBuildFlags = [ - "--set USE_SSE4_INSTRUCTIONS=${if sse4Support then "yes" else "no"}" - "--set USE_AVX_INSTRUCTIONS=${if avxSupport then "yes" else "no"}" - ]; + # Pass CMake flags through to the build script + preConfigure = '' + for flag in $cmakeFlags; do + if [[ "$flag" == -D* ]]; then + setupPyBuildFlags+=" --set ''${flag#-D}" + fi + done + ''; dontUseCmakeConfigure = true; + + doCheck = + !( + # The tests attempt to use CUDA on the build platform. + # https://github.com/NixOS/nixpkgs/issues/225912 + dlib.cudaSupport + + # although AVX can be enabled, we never test with it. Some Hydra machines + # fail because of this, however their build results are probably used on hardware + # with AVX support. + || dlib.avxSupport + ); } From f010978de6e5e14344b427e91b8dad6608971e33 Mon Sep 17 00:00:00 2001 From: Tobias Mayer Date: Mon, 3 Feb 2025 07:48:54 +0100 Subject: [PATCH 38/77] osrm-backend: fix build with boost187 --- pkgs/servers/osrm-backend/boost187-compat.patch | 14 ++++++++++++++ pkgs/servers/osrm-backend/default.nix | 8 ++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 pkgs/servers/osrm-backend/boost187-compat.patch diff --git a/pkgs/servers/osrm-backend/boost187-compat.patch b/pkgs/servers/osrm-backend/boost187-compat.patch new file mode 100644 index 000000000000..4c5aa5eb05a8 --- /dev/null +++ b/pkgs/servers/osrm-backend/boost187-compat.patch @@ -0,0 +1,14 @@ +diff --git a/include/server/server.hpp b/include/server/server.hpp +index 34b8982e67a..02b0dda050d 100644 +--- a/include/server/server.hpp ++++ b/include/server/server.hpp +@@ -53,8 +53,7 @@ class Server + const auto port_string = std::to_string(port); + + boost::asio::ip::tcp::resolver resolver(io_context); +- boost::asio::ip::tcp::resolver::query query(address, port_string); +- boost::asio::ip::tcp::endpoint endpoint = *resolver.resolve(query); ++ boost::asio::ip::tcp::endpoint endpoint = *resolver.resolve(address, port_string).begin(); + + acceptor.open(endpoint.protocol()); + #ifdef SO_REUSEPORT diff --git a/pkgs/servers/osrm-backend/default.nix b/pkgs/servers/osrm-backend/default.nix index 96f7141f953b..ed811594bfc2 100644 --- a/pkgs/servers/osrm-backend/default.nix +++ b/pkgs/servers/osrm-backend/default.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - fetchpatch, cmake, pkg-config, bzip2, @@ -16,7 +15,7 @@ nixosTests, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation { pname = "osrm-backend"; version = "5.27.1-unstable-2024-11-03"; @@ -27,6 +26,11 @@ stdenv.mkDerivation rec { hash = "sha256-iix++G49cC13wZGZIpXu1SWGtVAcqpuX3GhsIaETzUU="; }; + patches = [ + # Taken from https://github.com/Project-OSRM/osrm-backend/pull/7073. + ./boost187-compat.patch + ]; + nativeBuildInputs = [ cmake pkg-config From c397110901d896fa8f7d012136eed54fbeaf34e4 Mon Sep 17 00:00:00 2001 From: Torsten Trautwein Date: Fri, 24 Jan 2025 09:04:40 +0100 Subject: [PATCH 39/77] nixos/immich: Add accelerationDevices configuration option This allows immich to utilize devices for hardware accelerated video transcoding. --- nixos/modules/services/web-apps/immich.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/immich.nix b/nixos/modules/services/web-apps/immich.nix index fa80c47305ba..cc7d5ff6f39e 100644 --- a/nixos/modules/services/web-apps/immich.nix +++ b/nixos/modules/services/web-apps/immich.nix @@ -20,7 +20,8 @@ let NoNewPrivileges = true; PrivateUsers = true; PrivateTmp = true; - PrivateDevices = true; + PrivateDevices = cfg.accelerationDevices == [ ]; + DeviceAllow = mkIf (cfg.accelerationDevices != null) cfg.accelerationDevices; PrivateMounts = true; ProtectClock = true; ProtectControlGroups = true; @@ -161,6 +162,17 @@ in }; }; + accelerationDevices = mkOption { + type = types.nullOr (types.listOf types.str); + default = [ ]; + example = [ "/dev/dri/renderD128" ]; + description = '' + A list of device paths to hardware acceleration devices that immich should + have access to. This is useful when transcoding media files. + The special value `[ ]` will disallow all devices using `PrivateDevices`. `null` will give access to all devices. + ''; + }; + database = { enable = mkEnableOption "the postgresql database for use with immich. See {option}`services.postgresql`" From b309fd081b0bc4c6c1d45d8b533f3ac76170b9f2 Mon Sep 17 00:00:00 2001 From: FliegendeWurst Date: Sun, 2 Feb 2025 21:30:17 +0100 Subject: [PATCH 40/77] python312Packages.enturclient: fix build, misc. cleanup --- .../python-modules/enturclient/default.nix | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/pkgs/development/python-modules/enturclient/default.nix b/pkgs/development/python-modules/enturclient/default.nix index 1b62fc88ef50..372bdf17e075 100644 --- a/pkgs/development/python-modules/enturclient/default.nix +++ b/pkgs/development/python-modules/enturclient/default.nix @@ -6,14 +6,15 @@ fetchFromGitHub, poetry-core, pythonOlder, + unittestCheckHook, }: buildPythonPackage rec { pname = "enturclient"; version = "0.2.4"; - disabled = pythonOlder "3.8"; + pyproject = true; - format = "pyproject"; + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "hfurubotten"; @@ -22,23 +23,27 @@ buildPythonPackage rec { hash = "sha256-Y2sBPikCAxumylP1LUy8XgjBRCWaNryn5XHSrRjJIIo="; }; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; - propagatedBuildInputs = [ + dependencies = [ aiohttp async-timeout ]; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace 'async_timeout = "^3.0.1"' 'async_timeout = ">=3.0.1"' - ''; - - # Project has no tests - doCheck = false; + pythonRelaxDeps = [ + "async_timeout" + ]; pythonImportsCheck = [ "enturclient" ]; + nativeCheckInputs = [ + unittestCheckHook + ]; + + unittestFlagsArray = [ + "tests/dto/" + ]; + meta = with lib; { description = "Python library for interacting with the Entur.org API"; homepage = "https://github.com/hfurubotten/enturclient"; From 249d1d1dd1fcb3317cc06263744f07f32bc6fa4f Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Feb 2025 11:47:28 +0200 Subject: [PATCH 41/77] hydra-check: 2.0.2 -> 2.0.3 Diff: https://github.com/nix-community/hydra-check/compare/refs/tags/v2.0.2...v2.0.3 --- pkgs/by-name/hy/hydra-check/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/hy/hydra-check/package.nix b/pkgs/by-name/hy/hydra-check/package.nix index dd1e363c7f1a..0c4e197dd9a2 100644 --- a/pkgs/by-name/hy/hydra-check/package.nix +++ b/pkgs/by-name/hy/hydra-check/package.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "hydra-check"; - version = "2.0.2"; + version = "2.0.3"; src = fetchFromGitHub { owner = "nix-community"; repo = "hydra-check"; tag = "v${version}"; - hash = "sha256-FfeT6oxhHORbd4uR4gRNhI6W9YOkG8ieiL0Co3GWzb4="; + hash = "sha256-h8bs6oe8zkzEDCoC9F6IzTaTkNf4eAAjt663V0qn73I="; }; - cargoHash = "sha256-35e+ACUyp5sQiHz9fgDXXz365XbxHMLcX2aTA41rJN0="; + cargoHash = "sha256-AUIm8OLN+BgEtlYCFQkozEwkp0Iwfkj+l5ttSAoCz60="; nativeBuildInputs = [ pkg-config From c7c724eb97ea476f94568a2c201b9c80daef2e46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliv=C3=A9r=20Falvai?= Date: Mon, 3 Feb 2025 08:00:41 +0100 Subject: [PATCH 42/77] python312Packages.babelfont: add missing dependency --- pkgs/development/python-modules/babelfont/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/babelfont/default.nix b/pkgs/development/python-modules/babelfont/default.nix index 4cdc2ed2e9d8..48c5211dcdd0 100644 --- a/pkgs/development/python-modules/babelfont/default.nix +++ b/pkgs/development/python-modules/babelfont/default.nix @@ -13,6 +13,7 @@ setuptools, setuptools-scm, ufolib2, + ufomerge, vfblib, }: @@ -42,6 +43,7 @@ buildPythonPackage rec { openstep-plist orjson ufolib2 + ufomerge vfblib ]; From 9bb8bf29f8002afed50432247cff19398ce6e0cb Mon Sep 17 00:00:00 2001 From: Aaron Jheng Date: Mon, 3 Feb 2025 22:42:41 +0800 Subject: [PATCH 43/77] dave: remove --- pkgs/by-name/da/dave/package.nix | 39 -------------------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 39 deletions(-) delete mode 100644 pkgs/by-name/da/dave/package.nix diff --git a/pkgs/by-name/da/dave/package.nix b/pkgs/by-name/da/dave/package.nix deleted file mode 100644 index 638a790dc504..000000000000 --- a/pkgs/by-name/da/dave/package.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - lib, - buildGoModule, - fetchFromGitHub, -}: - -buildGoModule rec { - pname = "dave"; - version = "0.5.0"; - - src = fetchFromGitHub { - owner = "micromata"; - repo = "dave"; - rev = "v${version}"; - hash = "sha256-JgRclcSrdgTXBuU8attSbDhRj4WUGXSpKTrUZ8mP5ns="; - }; - - vendorHash = "sha256-yo6DEvKnCQak+MrpIIDU4DkRhRP+HeJXLV87NRf6g/c="; - - subPackages = [ - "cmd/dave" - "cmd/davecli" - ]; - - ldflags = [ - "-s" - "-w" - "-X main.version=${version}" - "-X main.builtBy=nixpkgs" - ]; - - meta = { - homepage = "https://github.com/micromata/dave"; - description = "Totally simple and very easy to configure stand alone webdav server"; - license = lib.licenses.asl20; - maintainers = with lib.maintainers; [ lunik1 ]; - mainProgram = "dave"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 403a59eaad18..a7f851f9aa2d 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -298,6 +298,7 @@ mapAliases { dart_stable = throw "'dart_stable' has been renamed to/replaced by 'dart'"; # Converted to throw 2024-10-17 dart-sass-embedded = throw "dart-sass-embedded has been removed from nixpkgs, as is now included in Dart Sass itself."; dat = nodePackages.dat; + dave = throw "'dave' has been removed as it has been archived upstream. Consider using 'webdav' instead"; # Added 2025-02-03 dbeaver = throw "'dbeaver' has been renamed to/replaced by 'dbeaver-bin'"; # Added 2024-05-16 dbus-map = throw "'dbus-map' has been dropped as it is unmaintained"; # Added 2024-11-01 deadpixi-sam = deadpixi-sam-unstable; From b4907b78e22575c0d2133153a0bf02fa26541b90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 3 Feb 2025 15:49:00 +0100 Subject: [PATCH 44/77] vaultwarden: 1.33.0 -> 1.33.1 Diff: https://github.com/dani-garcia/vaultwarden/compare/1.33.0...1.33.1 Changelog: https://github.com/dani-garcia/vaultwarden/releases/tag/1.33.1 --- pkgs/tools/security/vaultwarden/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/security/vaultwarden/default.nix b/pkgs/tools/security/vaultwarden/default.nix index 80c11dc3a5d3..4db25b7e25f8 100644 --- a/pkgs/tools/security/vaultwarden/default.nix +++ b/pkgs/tools/security/vaultwarden/default.nix @@ -22,17 +22,17 @@ in rustPlatform.buildRustPackage rec { pname = "vaultwarden"; - version = "1.33.0"; + version = "1.33.1"; src = fetchFromGitHub { owner = "dani-garcia"; repo = "vaultwarden"; rev = version; - hash = "sha256-2lZfPPHHAoY12cXpkeJnvMab+C3T5O7KdmVpKqRQkgQ="; + hash = "sha256-p5SgXqeafEqPQmSKEtcPCHvxODxrEX4gNmpb2ybmpO4="; }; useFetchCargoVendor = true; - cargoHash = "sha256-f+884HV9oopvr/2UfWk0sw2DW2cU3c16F+5vGc6+IL0="; + cargoHash = "sha256-B9RztnkIbYVWdx85p1WEskwTdFrUruD0UJ7qFIg8vy8="; # used for "Server Installed" version in admin panel env.VW_VERSION = version; From ad0af4d8d155b75f0c3541fbd3070c40cd5b0d12 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Feb 2025 16:12:27 +0100 Subject: [PATCH 45/77] checkov: 3.2.360 -> 3.2.361 Diff: https://github.com/bridgecrewio/checkov/compare/refs/tags/3.2.360...3.2.361 Changelog: https://github.com/bridgecrewio/checkov/releases/tag/3.2.361 --- pkgs/development/tools/analysis/checkov/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix index f7c8af22db8e..5a48bb73d802 100644 --- a/pkgs/development/tools/analysis/checkov/default.nix +++ b/pkgs/development/tools/analysis/checkov/default.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication rec { pname = "checkov"; - version = "3.2.360"; + version = "3.2.361"; pyproject = true; src = fetchFromGitHub { owner = "bridgecrewio"; repo = "checkov"; tag = version; - hash = "sha256-kFLtEVbj0XTa19MOS0di6bHBMHeHH4b9+H/iHqV39kU="; + hash = "sha256-7w8oAIBAgYH/TXNnAVKC6E3AT37WJDSSgnpAeRfY4vA="; }; patches = [ ./flake8-compat-5.x.patch ]; From c4e076079c160a3710880fb532a563f366cced3c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Feb 2025 16:24:23 +0100 Subject: [PATCH 46/77] python313Packages.aiosmtplib: 3.0.2 -> 4.0.0 Diff: https://github.com/cole/aiosmtplib/compare/refs/tags/v3.0.2...v4.0.0 Changelog: https://github.com/cole/aiosmtplib/releases/tag/v4.0.0 --- pkgs/development/python-modules/aiosmtplib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiosmtplib/default.nix b/pkgs/development/python-modules/aiosmtplib/default.nix index 12c49c681005..b737d7135306 100644 --- a/pkgs/development/python-modules/aiosmtplib/default.nix +++ b/pkgs/development/python-modules/aiosmtplib/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "aiosmtplib"; - version = "3.0.2"; + version = "4.0.0"; pyproject = true; disabled = pythonOlder "3.7"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "cole"; repo = "aiosmtplib"; tag = "v${version}"; - hash = "sha256-1GuxlgNvzVv6hEQY1Mkv7NxAoOik9gpIS90a6flfC+k="; + hash = "sha256-Bj5wkNaNm9ojjffsS4nNKUucwbitvApIK1Ux88MSOoE="; }; build-system = [ hatchling ]; From cf3d305b41e25d73ec3c6a4718086b770e9a3047 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Feb 2025 16:29:29 +0100 Subject: [PATCH 47/77] python313Packages.aiosmtplib: refactor --- pkgs/development/python-modules/aiosmtplib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiosmtplib/default.nix b/pkgs/development/python-modules/aiosmtplib/default.nix index b737d7135306..bf3346f83183 100644 --- a/pkgs/development/python-modules/aiosmtplib/default.nix +++ b/pkgs/development/python-modules/aiosmtplib/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { version = "4.0.0"; pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "cole"; @@ -41,7 +41,7 @@ buildPythonPackage rec { description = "Module which provides a SMTP client"; homepage = "https://github.com/cole/aiosmtplib"; changelog = "https://github.com/cole/aiosmtplib/releases/tag/v${version}"; - license = with licenses; [ mit ]; + license = licenses.mit; maintainers = with maintainers; [ fab ]; }; } From 637c4028827a34081b2b9aa97ffaef4df307fc0c Mon Sep 17 00:00:00 2001 From: Guanran Wang Date: Tue, 4 Feb 2025 00:14:00 +0800 Subject: [PATCH 48/77] dbip-asn-lite: 2025-01 -> 2025-02 --- pkgs/by-name/db/dbip-asn-lite/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/db/dbip-asn-lite/package.nix b/pkgs/by-name/db/dbip-asn-lite/package.nix index b5ca33f49906..65ab3c92477f 100644 --- a/pkgs/by-name/db/dbip-asn-lite/package.nix +++ b/pkgs/by-name/db/dbip-asn-lite/package.nix @@ -5,11 +5,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "dbip-asn-lite"; - version = "2025-01"; + version = "2025-02"; src = fetchurl { url = "https://download.db-ip.com/free/dbip-asn-lite-${finalAttrs.version}.mmdb.gz"; - hash = "sha256-cRlhlP5ml+swBZGiLpVH5s7nvPiHUi7qxM2GajoeK+Y="; + hash = "sha256-lQmBPlaUib2NDLNmrB7x2HiSRXcIi3uC8wxEEBtbecI="; }; dontUnpack = true; From 08b3fe383a92adee9c76449c12ea0f588b18161b Mon Sep 17 00:00:00 2001 From: Guanran Wang Date: Tue, 4 Feb 2025 00:14:07 +0800 Subject: [PATCH 49/77] dbip-city-lite: 2025-01 -> 2025-02 --- pkgs/by-name/db/dbip-city-lite/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/db/dbip-city-lite/package.nix b/pkgs/by-name/db/dbip-city-lite/package.nix index 521d3cebf20e..444be2d9244d 100644 --- a/pkgs/by-name/db/dbip-city-lite/package.nix +++ b/pkgs/by-name/db/dbip-city-lite/package.nix @@ -5,11 +5,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "dbip-city-lite"; - version = "2025-01"; + version = "2025-02"; src = fetchurl { url = "https://download.db-ip.com/free/dbip-city-lite-${finalAttrs.version}.mmdb.gz"; - hash = "sha256-fBS2JASkZaLNCjNAadNkrctixTkDvpkTUYP0yUHBXnw="; + hash = "sha256-p0cLbcLeoqemY4zhK7tNP//9H27BV6YOLBTgDqdcI7Q="; }; dontUnpack = true; From f33bc85c065258552fa235029014f2a55691c39c Mon Sep 17 00:00:00 2001 From: Guanran Wang Date: Tue, 4 Feb 2025 00:14:35 +0800 Subject: [PATCH 50/77] dbip-country-lite: 2025-01 -> 2025-02 --- pkgs/by-name/db/dbip-country-lite/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/db/dbip-country-lite/package.nix b/pkgs/by-name/db/dbip-country-lite/package.nix index 00f29f3674d7..17e7bf41777f 100644 --- a/pkgs/by-name/db/dbip-country-lite/package.nix +++ b/pkgs/by-name/db/dbip-country-lite/package.nix @@ -5,11 +5,11 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "dbip-country-lite"; - version = "2025-01"; + version = "2025-02"; src = fetchurl { url = "https://download.db-ip.com/free/dbip-country-lite-${finalAttrs.version}.mmdb.gz"; - hash = "sha256-PVpqo1t6V0kdVqA1aEgU0UqwhzmLLMHYB6gyoMusVv8="; + hash = "sha256-/VsGdiiDkY13fyfLoa3N1nVJEVUrqRPNFg3Bs6MVkLY="; }; dontUnpack = true; From e3fbae9767d446b31ec385d487dade8f5a5ada09 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Tue, 4 Feb 2025 02:54:49 +1000 Subject: [PATCH 51/77] androidStudioPackages.canary: 2024.3.2.1 -> 2024.3.2.2 (#379108) --- pkgs/applications/editors/android-studio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index 9a10067fe1e7..98eaa59575bb 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -17,8 +17,8 @@ let sha256Hash = "sha256-UxxofUCJGhQTLMwHGaSdNDqWnjkpRVwm2oqLLp3jR8E="; }; latestVersion = { - version = "2024.3.2.1"; # "Android Studio Meerkat Feature Drop | 2024.3.2 Canary 1" - sha256Hash = "sha256-qJKkuB8v4wOqEQwnDyMegLbRLzxVwCq/hS1TQ3lhBKk="; + version = "2024.3.2.2"; # "Android Studio Meerkat Feature Drop | 2024.3.2 Canary 2" + sha256Hash = "sha256-P0yBlqcuTSmJ4gmSvSCW31ARqDBC3NC8PozQHIXPS8Y="; }; in { # Attributes are named by their corresponding release channels From 8f46a94aa6eb8c0c7eb55ade0ee660c850c00198 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 16:43:05 +0100 Subject: [PATCH 52/77] twitch-hls-client: useFetchCargoVendor Cargo 1.84.0 seems to have changed the output format of cargo vendor again, once again invalidating fetchCargoTarball FOD hashes. It's time to fix this once and for all, switching across the board to fetchCargoVendor, which is not dependent on cargo vendor's output format. --- pkgs/by-name/tw/twitch-hls-client/package.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/tw/twitch-hls-client/package.nix b/pkgs/by-name/tw/twitch-hls-client/package.nix index 0bdc151acd48..d1ba72addbcc 100644 --- a/pkgs/by-name/tw/twitch-hls-client/package.nix +++ b/pkgs/by-name/tw/twitch-hls-client/package.nix @@ -17,7 +17,8 @@ rustPlatform.buildRustPackage rec { hash = "sha256-H446qXFwRGippLMZemkW8sVhTV3YGpKmAvD8QBamAlo="; }; - cargoHash = "sha256-PK6x7xRUSbOFEAhw22T/zbMlqcS5ZQd2bpMp9OFIiUc="; + useFetchCargoVendor = true; + cargoHash = "sha256-sqhB2Lj3RK1OyXy87Be9aOkfcksqz+5VfRTlKuswerU="; buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security From 40e2d8c24ed0c26ad547d9274b6e7eb98eb27d77 Mon Sep 17 00:00:00 2001 From: Sandro Date: Mon, 3 Feb 2025 18:07:56 +0100 Subject: [PATCH 53/77] parabolic: cleanup string interpolation --- pkgs/by-name/pa/parabolic/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/pa/parabolic/package.nix b/pkgs/by-name/pa/parabolic/package.nix index 308f508604d9..093e8f024ba2 100644 --- a/pkgs/by-name/pa/parabolic/package.nix +++ b/pkgs/by-name/pa/parabolic/package.nix @@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchFromGitHub { owner = "NickvisionApps"; repo = "Parabolic"; - tag = "${finalAttrs.version}"; + tag = finalAttrs.version; hash = "sha256-B8/e5urhy5tAgHNd/PR3HlNQd0M0CxgC56nArFGlQ9c="; }; From 41ada88aeb2850f3d013fdd3c8e447bd66e6faab Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Feb 2025 19:26:02 +0200 Subject: [PATCH 54/77] hydra-check: useFetchCargoVendor See #378288 --- pkgs/by-name/hy/hydra-check/package.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/hy/hydra-check/package.nix b/pkgs/by-name/hy/hydra-check/package.nix index 0c4e197dd9a2..6ea49fc8983f 100644 --- a/pkgs/by-name/hy/hydra-check/package.nix +++ b/pkgs/by-name/hy/hydra-check/package.nix @@ -20,7 +20,8 @@ rustPlatform.buildRustPackage rec { hash = "sha256-h8bs6oe8zkzEDCoC9F6IzTaTkNf4eAAjt663V0qn73I="; }; - cargoHash = "sha256-AUIm8OLN+BgEtlYCFQkozEwkp0Iwfkj+l5ttSAoCz60="; + useFetchCargoVendor = true; + cargoHash = "sha256-aV4URx9bGAOLWRh/kFDU67GiXk7RdCqfahG+fZPfdUo="; nativeBuildInputs = [ pkg-config From c1a8aafda762958faef1721cd83ba9e4968f1198 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 16:43:31 +0100 Subject: [PATCH 55/77] yek: useFetchCargoVendor Cargo 1.84.0 seems to have changed the output format of cargo vendor again, once again invalidating fetchCargoTarball FOD hashes. It's time to fix this once and for all, switching across the board to fetchCargoVendor, which is not dependent on cargo vendor's output format. --- pkgs/by-name/ye/yek/package.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ye/yek/package.nix b/pkgs/by-name/ye/yek/package.nix index 9c0f2b58df2c..6c23ee43b4f7 100644 --- a/pkgs/by-name/ye/yek/package.nix +++ b/pkgs/by-name/ye/yek/package.nix @@ -20,7 +20,8 @@ rustPlatform.buildRustPackage { tag = "v${version}"; hash = "sha256-dboKZuY6mlFZu/xCoLXFJ4ARXyYs5/yOYeGkAnUKRX4="; }; - cargoHash = "sha256-3+jTzYwu9eHji8o4abLiiJGXtZYPfXtXeiZEZajxrVo="; + useFetchCargoVendor = true; + cargoHash = "sha256-/J+11PRCWn0rzq3nILJYd3V8cxmwDegArUDp8i5rsTY="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ]; From 3f2aff1378879a8baf91c04bc19ce1163439bc9e Mon Sep 17 00:00:00 2001 From: Thomas Gerbet Date: Mon, 3 Feb 2025 19:00:51 +0100 Subject: [PATCH 56/77] yara-x: 0.12.0 -> 0.13.0 https://github.com/VirusTotal/yara-x/releases/tag/v0.13.0 --- pkgs/by-name/ya/yara-x/package.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/ya/yara-x/package.nix b/pkgs/by-name/ya/yara-x/package.nix index 050c331e002d..d3c00c58559f 100644 --- a/pkgs/by-name/ya/yara-x/package.nix +++ b/pkgs/by-name/ya/yara-x/package.nix @@ -3,7 +3,6 @@ stdenv, fetchFromGitHub, rustPlatform, - cmake, installShellFiles, testers, yara-x, @@ -11,19 +10,18 @@ rustPlatform.buildRustPackage rec { pname = "yara-x"; - version = "0.12.0"; + version = "0.13.0"; src = fetchFromGitHub { owner = "VirusTotal"; repo = "yara-x"; tag = "v${version}"; - hash = "sha256-gIYqWRJI/IZwEyc1Fke/CD8PPoSZvwtvOT0rnK+LFIo="; + hash = "sha256-ZSJHvpRZO6Tbw7Ct4oD6QmuV4mJ4RGW5gnT6PTX+nC8="; }; - cargoHash = "sha256-hlwHF6ESrRpXduXZmC/svldzYuoIwwOllf5pSbvEpCM="; + cargoHash = "sha256-IK6EAN0vn2V4GEOhDRFfGbehHELWQglFJVTlTonSka4="; nativeBuildInputs = [ - cmake installShellFiles ]; From 6eb36d071d986ef0fe20e9be9d41e3232b4df854 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 2 Feb 2025 21:19:01 +0100 Subject: [PATCH 57/77] himalaya: fix useFetchCargoVendor The script I ran to bulk migrate packages didn't account for cargoHash being in a let, so here it just introduced an unused useFetchCargoVendor binding rather than passing it to buildRustPackage. Fixes: 63bff8c132d1 ("treewide: migrate to fetchCargoVendor, batch 1") --- pkgs/by-name/hi/himalaya/package.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/hi/himalaya/package.nix b/pkgs/by-name/hi/himalaya/package.nix index 1368b9da32d6..6badfc8ccfb4 100644 --- a/pkgs/by-name/hi/himalaya/package.nix +++ b/pkgs/by-name/hi/himalaya/package.nix @@ -19,8 +19,7 @@ let version = "1.1.0"; hash = "sha256-gdrhzyhxRHZkALB3SG/aWOdA5iMYkel3Cjk5VBy3E4M="; - useFetchCargoVendor = true; - cargoHash = "sha256-1KtS/lzVUEDiDCo3b8RFDYeTMsbHk2tIdniFZfoTxYk="; + cargoHash = "sha256-ulqMjpW3UI509vs3jVHXAEQUhxU/f/hN8XiIo8UBRq8="; noDefaultFeatures = lib.warnIf (args ? buildNoDefaultFeatures) @@ -45,6 +44,8 @@ rustPlatform.buildRustPackage { rev = "v${version}"; }; + useFetchCargoVendor = true; + buildNoDefaultFeatures = noDefaultFeatures; buildFeatures = features; From 2352d56aa0ba67f7d6dffe34eb5f503980c4ad3d Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 11:11:13 +0100 Subject: [PATCH 58/77] lorri: fix useFetchCargoVendor The script I ran to bulk migrate packages didn't account for cargoHash being in a let, so here it just introduced an unused useFetchCargoVendor binding rather than passing it to buildRustPackage. Fixes: c597750454b1 ("treewide: migrate to fetchCargoVendor, batch 2") --- pkgs/tools/misc/lorri/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/lorri/default.nix b/pkgs/tools/misc/lorri/default.nix index 715eea7768d7..a0febe773a63 100644 --- a/pkgs/tools/misc/lorri/default.nix +++ b/pkgs/tools/misc/lorri/default.nix @@ -17,8 +17,7 @@ let # Also don’t forget to run `nix-build -A lorri.tests` version = "1.7.1"; sha256 = "sha256-dEdKMgE4Jd8CCvtGQDZNDCYOomZAV8aR7Cmtyn8RfTo="; - useFetchCargoVendor = true; - cargoHash = "sha256-d1kXwb2WsF3J5AyD8wrrnGtCMYQ4P2mtiuJLMyCDPdM="; + cargoHash = "sha256-pRtc0cDVIBqbCbC1weFOhZP29rKAE1XdmM6HE5nJKRU="; in (rustPlatform.buildRustPackage rec { @@ -38,6 +37,7 @@ in "doc" ]; + useFetchCargoVendor = true; inherit cargoHash; doCheck = false; From 7853e33c5a2dffc1f0dbc009ac7f7b99096a193c Mon Sep 17 00:00:00 2001 From: Linus Karl Date: Sun, 2 Feb 2025 13:16:27 +0100 Subject: [PATCH 59/77] linuxKernel.kernels.linux_zen: 6.12.10-zen1 -> 6.13.1-zen1 --- pkgs/os-specific/linux/kernel/zen-kernels.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix index de14f7f5d31f..b3c123022de9 100644 --- a/pkgs/os-specific/linux/kernel/zen-kernels.nix +++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix @@ -12,9 +12,9 @@ let variants = { # ./update-zen.py zen zen = { - version = "6.12.10"; # zen + version = "6.13.1"; # zen suffix = "zen1"; # zen - sha256 = "1kd3bcnhlarnrpl87mrdb5r9k2jdq7m8607ai847dkmncw7q2d1q"; # zen + sha256 = "1n22hsjl77qby2s4wf9y6z3kbcw7yziiniv2x43xixgkl12ajvk5"; # zen isLqx = false; }; # ./update-zen.py lqx From d11a0d47cd456d46537ee74fc8e62571763d18e3 Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Mon, 3 Feb 2025 12:38:01 -0600 Subject: [PATCH 60/77] vimPlugins.blink-cmp-spell: init at 2025-02-01 --- pkgs/applications/editors/vim/plugins/generated.nix | 12 ++++++++++++ .../editors/vim/plugins/vim-plugin-names | 1 + 2 files changed, 13 insertions(+) diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 2f724348c701..f68e38d634b7 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -1302,6 +1302,18 @@ final: prev: meta.homepage = "https://github.com/giuxtaposition/blink-cmp-copilot/"; }; + blink-cmp-spell = buildVimPlugin { + pname = "blink-cmp-spell"; + version = "2025-02-01"; + src = fetchFromGitHub { + owner = "ribru17"; + repo = "blink-cmp-spell"; + rev = "38d6797dea6f72baa6e8b3bfca6da96d8fcac64d"; + sha256 = "19pnasa446iiapgsr3z2fpk0nnrzh8g5wrzrq8n0y4q0z6spc9f6"; + }; + meta.homepage = "https://github.com/ribru17/blink-cmp-spell/"; + }; + blink-compat = buildVimPlugin { pname = "blink.compat"; version = "2025-01-20"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 812b04c932fb..88fe6203cdd3 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -106,6 +106,7 @@ https://github.com/max397574/better-escape.nvim/,, https://github.com/LunarVim/bigfile.nvim/,, https://github.com/APZelos/blamer.nvim/,HEAD, https://github.com/giuxtaposition/blink-cmp-copilot/,HEAD, +https://github.com/ribru17/blink-cmp-spell/,HEAD, https://github.com/fang2hou/blink-copilot/,HEAD, https://github.com/moyiz/blink-emoji.nvim/,HEAD, https://github.com/mikavilpas/blink-ripgrep.nvim/,HEAD, From 6a92422184eaeb0bfc33e5e0318a42e6279c39c7 Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Mon, 3 Feb 2025 12:43:01 -0600 Subject: [PATCH 61/77] vimPlugins.ctags-lsp-nvim: init at 2024-12-08 --- pkgs/applications/editors/vim/plugins/generated.nix | 12 ++++++++++++ .../editors/vim/plugins/vim-plugin-names | 1 + 2 files changed, 13 insertions(+) diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 2f724348c701..891680e449d2 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -3007,6 +3007,18 @@ final: prev: meta.homepage = "https://github.com/hat0uma/csvview.nvim/"; }; + ctags-lsp-nvim = buildVimPlugin { + pname = "ctags-lsp.nvim"; + version = "2024-12-08"; + src = fetchFromGitHub { + owner = "netmute"; + repo = "ctags-lsp.nvim"; + rev = "aaae7b5d8dc7aeb836c63301b8eb7311af49bb2a"; + sha256 = "06h388vkp8nv15wbh96pza85994xf979s7kjqrli4s6y5ygw6m02"; + }; + meta.homepage = "https://github.com/netmute/ctags-lsp.nvim/"; + }; + ctrlp-cmatcher = buildVimPlugin { pname = "ctrlp-cmatcher"; version = "2015-10-15"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 812b04c932fb..3b96955440fb 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -248,6 +248,7 @@ https://github.com/Decodetalkers/csharpls-extended-lsp.nvim/,HEAD, https://github.com/davidmh/cspell.nvim/,HEAD, https://github.com/chrisbra/csv.vim/,, https://github.com/hat0uma/csvview.nvim/,HEAD, +https://github.com/netmute/ctags-lsp.nvim/,HEAD, https://github.com/JazzCore/ctrlp-cmatcher/,, https://github.com/FelikZ/ctrlp-py-matcher/,, https://github.com/amiorin/ctrlp-z/,, From 9bc77ee0d73159e24e2a264d7e1abf3af756e8ae Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 31 Jan 2025 15:49:25 +0100 Subject: [PATCH 62/77] rustPlatform.fetchCargoTarball: deprecate --- doc/release-notes/rl-2505.section.md | 4 + .../rust/fetch-cargo-tarball/default.nix | 152 +++++++++--------- 2 files changed, 84 insertions(+), 72 deletions(-) diff --git a/doc/release-notes/rl-2505.section.md b/doc/release-notes/rl-2505.section.md index 437e4187fc3f..9c3a264db53e 100644 --- a/doc/release-notes/rl-2505.section.md +++ b/doc/release-notes/rl-2505.section.md @@ -8,6 +8,10 @@ - `services.rippleDataApi` has been removed, as `ripple-data-api` was broken and had not been updated since 2022. +- The `rustPlatform.fetchCargoTarball` function is deprecated, because it relied on `cargo vendor` not changing its output format to keep fixed-output derivation hashes the same, which is a Nix invariant, and Cargo 1.84.0 changed `cargo vendor`'s output format. + It should generally be replaced with `rustPlatform.fetchCargoVendor`, but `rustPlatform.importCargoLock` may also be appropriate in some circumstances. + `rustPlatform.buildRustPackage` users must set `useFetchCargoVendor` to `true` and regenerate the `cargoHash`. + ### Titanium removed {#sec-nixpkgs-release-25.05-incompatibilities-titanium-removed} diff --git a/pkgs/build-support/rust/fetch-cargo-tarball/default.nix b/pkgs/build-support/rust/fetch-cargo-tarball/default.nix index 0821592e1fe1..c477262968af 100644 --- a/pkgs/build-support/rust/fetch-cargo-tarball/default.nix +++ b/pkgs/build-support/rust/fetch-cargo-tarball/default.nix @@ -69,94 +69,102 @@ let else throw "fetchCargoTarball requires a hash for ${name}"; in -stdenv.mkDerivation ( - { - name = "${name}-vendor.tar.gz"; - nativeBuildInputs = [ - cacert - git - cargo-vendor-normalise - cargo - ] ++ nativeBuildInputs; +lib.warn + '' + rustPlatform.fetchCargoTarball is deprecated in favor of rustPlatform.fetchCargoVendor. + If you are using buildRustPackage, try setting useFetchCargoVendor = true and regenerating cargoHash. + See the 25.05 release notes for more information. + '' + ( + stdenv.mkDerivation ( + { + name = "${name}-vendor.tar.gz"; + nativeBuildInputs = [ + cacert + git + cargo-vendor-normalise + cargo + ] ++ nativeBuildInputs; - dontConfigure = true; - buildPhase = '' - runHook preBuild + dontConfigure = true; + buildPhase = '' + runHook preBuild - # Ensure deterministic Cargo vendor builds - export SOURCE_DATE_EPOCH=1 + # Ensure deterministic Cargo vendor builds + export SOURCE_DATE_EPOCH=1 - if [ -n "''${cargoRoot-}" ]; then - cd "$cargoRoot" - fi + if [ -n "''${cargoRoot-}" ]; then + cd "$cargoRoot" + fi - if [[ ! -f Cargo.lock ]]; then - echo - echo "ERROR: The Cargo.lock file doesn't exist" - echo - echo "Cargo.lock is needed to make sure that cargoHash/cargoSha256 doesn't change" - echo "when the registry is updated." - echo + if [[ ! -f Cargo.lock ]]; then + echo + echo "ERROR: The Cargo.lock file doesn't exist" + echo + echo "Cargo.lock is needed to make sure that cargoHash/cargoSha256 doesn't change" + echo "when the registry is updated." + echo - exit 1 - fi + exit 1 + fi - # Keep the original around for copyLockfile - cp Cargo.lock Cargo.lock.orig + # Keep the original around for copyLockfile + cp Cargo.lock Cargo.lock.orig - export CARGO_HOME=$(mktemp -d cargo-home.XXX) - CARGO_CONFIG=$(mktemp cargo-config.XXXX) + export CARGO_HOME=$(mktemp -d cargo-home.XXX) + CARGO_CONFIG=$(mktemp cargo-config.XXXX) - if [[ -n "$NIX_CRATES_INDEX" ]]; then - cat >$CARGO_HOME/config.toml <$CARGO_HOME/config.toml < $CARGO_CONFIG + cargo vendor $name --respect-source-config | cargo-vendor-normalise > $CARGO_CONFIG - # Create an empty vendor directory when there is no dependency to vendor - mkdir -p $name - # Add the Cargo.lock to allow hash invalidation - cp Cargo.lock.orig $name/Cargo.lock + # Create an empty vendor directory when there is no dependency to vendor + mkdir -p $name + # Add the Cargo.lock to allow hash invalidation + cp Cargo.lock.orig $name/Cargo.lock - # Packages with git dependencies generate non-default cargo configs, so - # always install it rather than trying to write a standard default template. - install -D $CARGO_CONFIG $name/.cargo/config + # Packages with git dependencies generate non-default cargo configs, so + # always install it rather than trying to write a standard default template. + install -D $CARGO_CONFIG $name/.cargo/config - runHook postBuild - ''; + runHook postBuild + ''; - # Build a reproducible tar, per instructions at https://reproducible-builds.org/docs/archives/ - installPhase = '' - tar --owner=0 --group=0 --numeric-owner --format=gnu \ - --sort=name --mtime="@$SOURCE_DATE_EPOCH" \ - -czf $out $name - ''; + # Build a reproducible tar, per instructions at https://reproducible-builds.org/docs/archives/ + installPhase = '' + tar --owner=0 --group=0 --numeric-owner --format=gnu \ + --sort=name --mtime="@$SOURCE_DATE_EPOCH" \ + -czf $out $name + ''; - inherit (hash_) outputHashAlgo outputHash; + inherit (hash_) outputHashAlgo outputHash; - impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [ "NIX_CRATES_INDEX" ]; - } - // (removeAttrs args removedArgs) -) + impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [ "NIX_CRATES_INDEX" ]; + } + // (removeAttrs args removedArgs) + ) + ) From 2c3fc4c71575868b72aa4c82a777fa5710c2b9ed Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 20:05:48 +0100 Subject: [PATCH 63/77] linux/common-config: update for 6.14 > Existing users of CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y should use > CONFIG_MHP_DEFAULT_ONLINE_TYPE_ONLINE_AUTO. Link: https://git.kernel.org/linus/44d46b76c3a4b514a0cc9dab147ed430e5c1d699 --- pkgs/os-specific/linux/kernel/common-config.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 4c9e256a8dcb..0f7606c79b53 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -1342,7 +1342,8 @@ let ACPI_HOTPLUG_CPU = yes; ACPI_HOTPLUG_MEMORY = yes; MEMORY_HOTPLUG = yes; - MEMORY_HOTPLUG_DEFAULT_ONLINE = yes; + MEMORY_HOTPLUG_DEFAULT_ONLINE = whenOlder "6.14" yes; + MHP_DEFAULT_ONLINE_TYPE_ONLINE_AUTO = whenAtLeast "6.14" yes; MEMORY_HOTREMOVE = yes; HOTPLUG_CPU = yes; MIGRATION = yes; From 580ccd0ecc820494a77ec52c2e6e402cca180573 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 19:39:32 +0100 Subject: [PATCH 64/77] linux_testing: 6.13-rc7 -> 6.14-rc1 --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 5ab026e291b8..5488bb52e1d7 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -1,7 +1,7 @@ { "testing": { - "version": "6.13-rc7", - "hash": "sha256:12c9bd0ikppkdpqmvg7g2062s60ks9p0qxx1jis29wl9swr74120" + "version": "6.14-rc1", + "hash": "sha256:0schcgij7kdzj0zb6g3sjf32mq7s388hysrfzjzi5g1y3py21igk" }, "6.1": { "version": "6.1.128", From e9c363c6285a8d767dd51b96fba8bfe7c7985d96 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 19:42:38 +0100 Subject: [PATCH 65/77] linux-rt_5_10: 5.10.231-rt123 -> 5.10.233-rt125 --- pkgs/os-specific/linux/kernel/linux-rt-5.10.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix index a56dcefd49a9..db1cef1ae7c7 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix @@ -10,7 +10,7 @@ }@args: let - version = "5.10.231-rt123"; # updated by ./update-rt.sh + version = "5.10.233-rt125"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in @@ -25,7 +25,7 @@ buildLinux ( src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; - sha256 = "0xcnlz5ib4b368z5cyp4qwys3jsbm18wlvwn73rzj2j6rj1lhnjn"; + sha256 = "0lkz2g8r032f027j3gih3f7crx991mrpng9qgqc5k4cc1wl5g7i3"; }; kernelPatches = @@ -34,7 +34,7 @@ buildLinux ( name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "01ibh8krzmwdh7229fc3ajbg1mlmd4sv969px6nh7z8fvpb60lfn"; + sha256 = "1cx91p88h169v69lxz7vbjjnxdzdz9v28liypz099xghibwhcwfh"; }; }; in From 1017c9f0ccf263fed38516f6f439d7f9a76306e6 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 19:44:09 +0100 Subject: [PATCH 66/77] linux-rt_5_15: 5.15.173-rt82 -> 5.15.177-rt83 --- pkgs/os-specific/linux/kernel/linux-rt-5.15.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix index 648938217933..ec8816894f78 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix @@ -10,7 +10,7 @@ }@args: let - version = "5.15.173-rt82"; # updated by ./update-rt.sh + version = "5.15.177-rt83"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in @@ -29,7 +29,7 @@ buildLinux ( src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; - sha256 = "1a3x3ld6g7ny0hdfqfvj5j2i5sx5l5p236pdnsr0icn9ri3jljwa"; + sha256 = "1q56w3lqwi3ynny6z7siqzv3h8nryksyw70r3fhghca2il4bi7pa"; }; kernelPatches = @@ -38,7 +38,7 @@ buildLinux ( name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "1xykbqkj4pqd7rdqnjk91mbdia3lxlng3c2nz7lnhhjnbva6b3vw"; + sha256 = "1rc0cbc5jkgr3q3q2syqidak744lxcq3f5zdq6si2rsfxjz45www"; }; }; in From 32c81b7581b19fc3fa35049cdc0194b66a012537 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 19:48:07 +0100 Subject: [PATCH 67/77] linux-rt_6_1: 6.1.120-rt47 -> 6.1.127-rt48 --- pkgs/os-specific/linux/kernel/linux-rt-6.1.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix b/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix index 78f1c77db53c..088c7ef0fe50 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix @@ -10,7 +10,7 @@ }@args: let - version = "6.1.120-rt47"; # updated by ./update-rt.sh + version = "6.1.127-rt48"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in @@ -29,7 +29,7 @@ buildLinux ( src = fetchurl { url = "mirror://kernel/linux/kernel/v6.x/linux-${kversion}.tar.xz"; - sha256 = "06gp5fdq0bc39hd8mf9mrdrygdybdr3nzsb58lcapf5vmjw9gjb1"; + sha256 = "0xkqpwhvz6qhaxzg1j993lv1iyvb2zydgq6d8mhdbfkz38fx9c0q"; }; kernelPatches = @@ -38,7 +38,7 @@ buildLinux ( name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "0nq8diqbanlkglb0liva3s43wx8g6pr9znvl9cq6df093by4gcya"; + sha256 = "1sq79iibjsph3jmmihabamzmm4sr68sw87jqqa3khzq7f2s6cwmg"; }; }; in From faf8bf712dd8839b68d7853b73c311ad1eb6dca4 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 19:48:56 +0100 Subject: [PATCH 68/77] linux-rt_6_6: 6.6.65-rt47 -> 6.6.74-rt48 --- pkgs/os-specific/linux/kernel/linux-rt-6.6.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix b/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix index 15f738348095..3210da6a022b 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix @@ -10,7 +10,7 @@ }@args: let - version = "6.6.65-rt47"; # updated by ./update-rt.sh + version = "6.6.74-rt48"; # updated by ./update-rt.sh branch = lib.versions.majorMinor version; kversion = builtins.elemAt (lib.splitString "-" version) 0; in @@ -29,7 +29,7 @@ buildLinux ( src = fetchurl { url = "mirror://kernel/linux/kernel/v6.x/linux-${kversion}.tar.xz"; - sha256 = "1q53xiwnszchl9c4g4yfxyzk4nffzgb4a7aq9rsyg1jcidp4gqbs"; + sha256 = "0ka9snxl0y57fajy8vszwa4ggn48pid8m1879d4vl3mbicd2nppi"; }; kernelPatches = @@ -38,7 +38,7 @@ buildLinux ( name = "rt"; patch = fetchurl { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; - sha256 = "1sb6mmbiwh7kijb2bxhlz09dgvd2hpxh6rxghwi1d4cg2151jsr5"; + sha256 = "1rpbbm9fln2v6xigxrsajivr4zmh0nika3nmm1y7ws31njkg57gq"; }; }; in From b49bd29d0fb39731fb06a78e487cd45015841813 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Feb 2025 19:49:03 +0100 Subject: [PATCH 69/77] linux_latest-libre: 19683 -> 19707 --- pkgs/os-specific/linux/kernel/linux-libre.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix index 0e541e127cae..6dcf421c690f 100644 --- a/pkgs/os-specific/linux/kernel/linux-libre.nix +++ b/pkgs/os-specific/linux/kernel/linux-libre.nix @@ -5,8 +5,8 @@ linux, scripts ? fetchsvn { url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; - rev = "19683"; - sha256 = "1xp4vslbvvwys2pmms3y9phxwc7gnar3zvbwbgbp9vgjq0bsadjw"; + rev = "19707"; + sha256 = "1ixvavd9rhhwfnyvkdnyyjwckdijh02xppl0sjv1vw9i0jn1s1l2"; }, ... }@args: From 5c1fa4a4381c2e2e11a848bacf7184cd76800931 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sun, 5 Jan 2025 22:52:18 +0100 Subject: [PATCH 70/77] python312Packages.pynfsclient: init at 0.1.5 Pure python NFS client https://pypi.org/project/pyNfsClient/ --- .../python-modules/pynfsclient/default.nix | 38 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/development/python-modules/pynfsclient/default.nix diff --git a/pkgs/development/python-modules/pynfsclient/default.nix b/pkgs/development/python-modules/pynfsclient/default.nix new file mode 100644 index 000000000000..cda64710c0c5 --- /dev/null +++ b/pkgs/development/python-modules/pynfsclient/default.nix @@ -0,0 +1,38 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, +}: + +buildPythonPackage rec { + pname = "pynfsclient"; + version = "0.1.5"; + pyproject = true; + + src = fetchPypi { + pname = "pyNfsClient"; + inherit version; + hash = "sha256-xgZL08NlMCpSkALQwklh7Xq16bK2Sm2hAynbrIWsgaU="; + }; + + postPatch = '' + # HISTORY.md is missing + substituteInPlace setup.py \ + --replace-fail "HISTORY.md" "README.rst" + ''; + + build-system = [ setuptools ]; + + # Module has no tests + doCheck = false; + + pythonImportsCheck = [ "pyNfsClient" ]; + + meta = { + description = "Pure python NFS client"; + homepage = "https://pypi.org/project/pyNfsClient/"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 68d4ddea886b..79c239dfbc38 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10699,6 +10699,8 @@ self: super: with self; { pylsl = callPackage ../development/python-modules/pylsl { }; + pynfsclient = callPackage ../development/python-modules/pynfsclient { }; + pyngo = callPackage ../development/python-modules/pyngo { }; pyngrok = callPackage ../development/python-modules/pyngrok { }; From efe51355b4732aff65c99d75133fb7d9aa3690f0 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 6 Jan 2025 00:53:29 +0100 Subject: [PATCH 71/77] netexec: 1.1.0-unstable-2024-01-15 -> 1.3.0 Diff: https://github.com/Pennyw0rth/NetExec/compare/refs/tags/v1.1.0...v1.3.0 Changelog: https://github.com/Pennyw0rth/NetExec/releases/tag/v1.3.0 --- pkgs/tools/security/netexec/default.nix | 42 ++++++++++++++----------- 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/pkgs/tools/security/netexec/default.nix b/pkgs/tools/security/netexec/default.nix index 81659210895c..f3145427148f 100644 --- a/pkgs/tools/security/netexec/default.nix +++ b/pkgs/tools/security/netexec/default.nix @@ -27,32 +27,35 @@ let in python.pkgs.buildPythonApplication rec { pname = "netexec"; - version = "1.1.0-unstable-2024-01-15"; + version = "1.3.0"; pyproject = true; + + src = fetchFromGitHub { + owner = "Pennyw0rth"; + repo = "NetExec"; + tag = "v${version}"; + hash = "sha256-Pub7PAw6CTN4c/PHTPE9KcnDR2a6hSza1ODp3EWMOH0="; + }; + pythonRelaxDeps = true; + pythonRemoveDeps = [ # Fail to detect dev version requirement "neo4j" ]; - src = fetchFromGitHub { - owner = "Pennyw0rth"; - repo = "NetExec"; - rev = "9df72e2f68b914dfdbd75b095dd8f577e992615f"; - hash = "sha256-oQHtTE5hdlxHX4uc412VfNUrN0UHVbwI0Mm9kmJpNW4="; - }; - postPatch = '' substituteInPlace pyproject.toml \ - --replace '{ git = "https://github.com/Pennyw0rth/impacket.git", branch = "gkdi" }' '"*"' \ - --replace '{ git = "https://github.com/Pennyw0rth/oscrypto" }' '"*"' + --replace-fail '{ git = "https://github.com/fortra/impacket.git" }' '"*"' \ + --replace-fail '{ git = "https://github.com/Pennyw0rth/NfsClient" }' '"*"' ''; - nativeBuildInputs = with python.pkgs; [ + build-system = with python.pkgs; [ poetry-core + poetry-dynamic-versioning ]; - propagatedBuildInputs = with python.pkgs; [ + dependencies = with python.pkgs; [ aardwolf aioconsole aiosqlite @@ -67,13 +70,15 @@ python.pkgs.buildPythonApplication rec { masky minikerberos msgpack + msldap neo4j - oscrypto paramiko pyasn1-modules pylnk3 + pynfsclient pypsrp pypykatz + python-dateutil python-libnmap pywerview requests @@ -84,9 +89,10 @@ python.pkgs.buildPythonApplication rec { xmltodict ]; - nativeCheckInputs = with python.pkgs; [ - pytestCheckHook - ]; + nativeCheckInputs = with python.pkgs; [ pytestCheckHook ]; + + # Tests no longer works out-of-box with 1.3.0 + doCheck = false; preCheck = '' export HOME=$(mktemp -d) @@ -96,9 +102,9 @@ python.pkgs.buildPythonApplication rec { description = "Network service exploitation tool (maintained fork of CrackMapExec)"; homepage = "https://github.com/Pennyw0rth/NetExec"; changelog = "https://github.com/Pennyw0rth/NetExec/releases/tag/v${version}"; - license = with licenses; [ bsd2 ]; - mainProgram = "nxc"; + license = licenses.bsd2; maintainers = with maintainers; [ vncsb ]; + mainProgram = "nxc"; # FIXME: failing fixupPhase: # $ Rewriting #!/nix/store/-python3-3.11.7/bin/python3.11 to #!/nix/store/-python3-3.11.7 # $ /nix/store/-wrap-python-hook/nix-support/setup-hook: line 65: 47758 Killed: 9 sed -i "$f" -e "1 s^#!/nix/store/-python3-3.11.7^#!/nix/store/-python3-3.11.7^" From 9398c621bed20e7d9e65bcc0bd62f9ef4de0d85f Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Mon, 3 Feb 2025 12:56:30 -0600 Subject: [PATCH 72/77] vimPlugins.blink-cmp-git: init at 2025-01-27 --- pkgs/applications/editors/vim/plugins/generated.nix | 12 ++++++++++++ pkgs/applications/editors/vim/plugins/overrides.nix | 4 ++++ .../editors/vim/plugins/vim-plugin-names | 1 + 3 files changed, 17 insertions(+) diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index f68e38d634b7..20b536396919 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -1314,6 +1314,18 @@ final: prev: meta.homepage = "https://github.com/ribru17/blink-cmp-spell/"; }; + blink-cmp-git = buildVimPlugin { + pname = "blink-cmp-git"; + version = "2025-01-27"; + src = fetchFromGitHub { + owner = "Kaiser-Yang"; + repo = "blink-cmp-git"; + rev = "7c6cfa3d427f50a6eae5c38628b31b8675bab05d"; + sha256 = "08hfwnjgsl88bkphpdxkdswdnc10mlxpsrk084kgzk4j19w55gyq"; + }; + meta.homepage = "https://github.com/Kaiser-Yang/blink-cmp-git/"; + }; + blink-compat = buildVimPlugin { pname = "blink.compat"; version = "2025-01-20"; diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix index bd9f3940bf2a..953d95428e5d 100644 --- a/pkgs/applications/editors/vim/plugins/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/overrides.nix @@ -296,6 +296,10 @@ in dependencies = [ self.blink-cmp ]; }; + blink-cmp-git = super.blink-cmp-git.overrideAttrs { + dependencies = [ self.plenary-nvim ]; + }; + bluloco-nvim = super.bluloco-nvim.overrideAttrs { dependencies = [ self.lush-nvim ]; }; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 88fe6203cdd3..1acdec95428e 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -106,6 +106,7 @@ https://github.com/max397574/better-escape.nvim/,, https://github.com/LunarVim/bigfile.nvim/,, https://github.com/APZelos/blamer.nvim/,HEAD, https://github.com/giuxtaposition/blink-cmp-copilot/,HEAD, +https://github.com/Kaiser-Yang/blink-cmp-git/,HEAD, https://github.com/ribru17/blink-cmp-spell/,HEAD, https://github.com/fang2hou/blink-copilot/,HEAD, https://github.com/moyiz/blink-emoji.nvim/,HEAD, From ddc4da2c8ba0e7fff69575bf6a0930a491e810de Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Feb 2025 20:17:13 +0100 Subject: [PATCH 73/77] python313Packages.pynfsclient: disable on > 3.13 --- pkgs/development/python-modules/pynfsclient/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/pynfsclient/default.nix b/pkgs/development/python-modules/pynfsclient/default.nix index cda64710c0c5..11b0d47f2939 100644 --- a/pkgs/development/python-modules/pynfsclient/default.nix +++ b/pkgs/development/python-modules/pynfsclient/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchPypi, + pythonAtLeast, setuptools, }: @@ -10,6 +11,8 @@ buildPythonPackage rec { version = "0.1.5"; pyproject = true; + disabled = pythonAtLeast "3.13"; + src = fetchPypi { pname = "pyNfsClient"; inherit version; From 3e85aef925bc624e19188b4028956a7349e918d6 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 3 Feb 2025 20:22:53 +0100 Subject: [PATCH 74/77] python313Packages.dsmr-parser: fix dependency relaxation The dependency name needs to match the representation in the wheel metadata. --- pkgs/development/python-modules/dsmr-parser/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/dsmr-parser/default.nix b/pkgs/development/python-modules/dsmr-parser/default.nix index 44199f7c56dc..f69ea095a286 100644 --- a/pkgs/development/python-modules/dsmr-parser/default.nix +++ b/pkgs/development/python-modules/dsmr-parser/default.nix @@ -27,7 +27,7 @@ buildPythonPackage rec { hash = "sha256-NfleByW9MF7FS4n/cMv297382LucP6Z629CuA6chm20="; }; - pythonRelaxDeps = [ "dlms-cosem" ]; + pythonRelaxDeps = [ "dlms_cosem" ]; build-system = [ setuptools ]; From eb3431789cef743af9dace58eb2ba7b33a332b56 Mon Sep 17 00:00:00 2001 From: FliegendeWurst Date: Wed, 29 Jan 2025 10:17:09 +0100 Subject: [PATCH 75/77] systemd: add missing patch for Musl For context, see https://github.com/systemd/systemd/issues/35755. Musl defines fork and setsid only if unistd.h is included. --- pkgs/os-specific/linux/systemd/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 59ecbb865ef9..11492bd163e3 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -17,6 +17,7 @@ getent, glibcLocales, autoPatchelfHook, + fetchpatch, # glib is only used during tests (test-bus-gvariant, test-bus-marshal) glib, @@ -281,6 +282,14 @@ stdenv.mkDerivation (finalAttrs: { "0025-adjust-header-inclusion-order-to-avoid-redeclaration.patch" "0026-build-path.c-avoid-boot-time-segfault-for-musl.patch" ] + ++ [ + # add a missing include + (fetchpatch { + url = "https://github.com/systemd/systemd/commit/34fcd3638817060c79e1186b370e46d9b3a7409f.patch"; + hash = "sha256-Uaewo3jPrZGJttlLcqO6cCj1w3IGZmvbur4+TBdIPxc="; + excludes = [ "src/udev/udevd.c" ]; + }) + ] ); postPatch = From 77e81653a4a83550af96a965bb7175e9613ff2a6 Mon Sep 17 00:00:00 2001 From: Connor Baker Date: Thu, 30 Jan 2025 17:58:23 +0000 Subject: [PATCH 76/77] doc: add redirect for no-broken-symlinks.sh (cherry picked from commit b9f7683ecc09e11102839f9e8b5b37dddd798f8c) --- doc/redirects.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/redirects.json b/doc/redirects.json index 5065007b0ae9..8444bb6bff92 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -20,6 +20,9 @@ "nixpkgs-manual": [ "index.html#nixpkgs-manual" ], + "no-broken-symlinks.sh": [ + "index.html#no-broken-symlinks.sh" + ], "preface": [ "index.html#preface" ], From e543b8a4a12b4b439d01fe18ac898efa7b35abab Mon Sep 17 00:00:00 2001 From: raf Date: Mon, 3 Feb 2025 20:03:01 +0000 Subject: [PATCH 77/77] soteria: update hash after upstream re-tag (#379135) Enable `useFetchCargoVendor` --- pkgs/by-name/so/soteria/package.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/so/soteria/package.nix b/pkgs/by-name/so/soteria/package.nix index 1b32e51d4595..f815d91a4ab4 100644 --- a/pkgs/by-name/so/soteria/package.nix +++ b/pkgs/by-name/so/soteria/package.nix @@ -22,10 +22,11 @@ rustPlatform.buildRustPackage { owner = "imvaskel"; repo = "soteria"; tag = "v${version}"; - hash = "sha256-CinJEzH4GsCAzU8FiInulPHLm73KI4nLlAcskkjgeJM="; + hash = "sha256-T6bJOXSXFWZYAxZ+nTDu+H8Wi75QRKddXkXdSOPwHbI="; }; - cargoHash = "sha256-vv7gK0ZfwO2AHXXQcXfkne9wZl+8JH9h8vELdRjg8WM="; + useFetchCargoVendor = true; + cargoHash = "sha256-5f915lrymOwg5bPsTp6sxKikCcTpbeia1fQzKnLYGOs="; nativeBuildInputs = [ pkg-config