From f337efba641f79ae3b8d7bc14adfd522eb2e4ec1 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Sun, 12 Jan 2025 17:28:02 +0000 Subject: [PATCH 001/284] python312Packages.pycparser: fix tests for clang stdenv --- pkgs/development/python-modules/pycparser/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pycparser/default.nix b/pkgs/development/python-modules/pycparser/default.nix index 4372afb0efe1..fc1188d2ac2b 100644 --- a/pkgs/development/python-modules/pycparser/default.nix +++ b/pkgs/development/python-modules/pycparser/default.nix @@ -1,5 +1,6 @@ { lib, + stdenv, buildPythonPackage, fetchPypi, setuptools, @@ -22,6 +23,10 @@ buildPythonPackage rec { nativeCheckInputs = [ unittestCheckHook ]; disabled = pythonOlder "3.8"; + preCheck = '' + substituteInPlace examples/using_gcc_E_libc.py \ + --replace-fail "'gcc'" "'${stdenv.cc.targetPrefix}cc'" + ''; unittestFlagsArray = [ "-s" "tests" From 8748d67aacde4401fc446ebea9e541ff76a3910c Mon Sep 17 00:00:00 2001 From: Wroclaw Date: Mon, 24 Feb 2025 14:25:04 +0100 Subject: [PATCH 002/284] makeScriptWrapper: warn if target file does not exist --- pkgs/build-support/setup-hooks/make-wrapper.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index cba158bd31ea..1ba5a2a9c0c7 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -3,6 +3,8 @@ # assertExecutable FILE assertExecutable() { local file="$1" + [[ -e "$file" ]] || \ + die "Cannot wrap '$file' because it does not exist" [[ -f "$file" && -x "$file" ]] || \ die "Cannot wrap '$file' because it is not an executable file" } From bd17e51cdeb7fcf0143b773ab0c4010ea4a011fc Mon Sep 17 00:00:00 2001 From: Wroclaw Date: Mon, 24 Feb 2025 14:25:17 +0100 Subject: [PATCH 003/284] makeBinaryWrapper: warn if target file does not exist --- pkgs/by-name/ma/makeBinaryWrapper/make-binary-wrapper.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/ma/makeBinaryWrapper/make-binary-wrapper.sh b/pkgs/by-name/ma/makeBinaryWrapper/make-binary-wrapper.sh index 3948342a36fc..f846a9fa0885 100644 --- a/pkgs/by-name/ma/makeBinaryWrapper/make-binary-wrapper.sh +++ b/pkgs/by-name/ma/makeBinaryWrapper/make-binary-wrapper.sh @@ -6,6 +6,8 @@ set -euo pipefail # assertExecutable FILE assertExecutable() { local file="$1" + [[ -e "$file" ]] || \ + die "Cannot wrap '$file' because it does not exist" [[ -f "$file" && -x "$file" ]] || \ die "Cannot wrap '$file' because it is not an executable file" } From 3d38015f9045a45b81bdcd32b17dee20de4bcc5a Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Thu, 8 Jan 2026 22:46:44 +0100 Subject: [PATCH 004/284] libajantv2: correctly generate pc module for the dev output Signed-off-by: Marcin Serwin --- pkgs/by-name/li/libajantv2/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/li/libajantv2/package.nix b/pkgs/by-name/li/libajantv2/package.nix index 2044db178b6a..383cce7df67c 100644 --- a/pkgs/by-name/li/libajantv2/package.nix +++ b/pkgs/by-name/li/libajantv2/package.nix @@ -47,11 +47,11 @@ stdenv.mkDerivation rec { ]; postInstall = '' - mkdir -p "$out/lib/pkgconfig" - cat >"$out/lib/pkgconfig/libajantv2.pc" <"$dev/lib/pkgconfig/libajantv2.pc" < Date: Sun, 5 Apr 2026 17:53:57 +0200 Subject: [PATCH 005/284] pcre2: modernize --- pkgs/development/libraries/pcre2/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix index 88d6cedb39f5..89fdc25b7982 100644 --- a/pkgs/development/libraries/pcre2/default.nix +++ b/pkgs/development/libraries/pcre2/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { version = "10.46"; src = fetchurl { - url = "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-${version}/pcre2-${version}.tar.bz2"; + url = "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-${version}/pcre2-${version}.tar.bz2"; hash = "sha256-FfvFq6a+7gsXrssEYCrjlDI5OroevY45t8q/fbiDKZ8="; }; @@ -43,6 +43,7 @@ stdenv.mkDerivation rec { meta = { homepage = "https://www.pcre.org/"; + changelog = "https://github.com/PCRE2Project/pcre2/releases/tag/pcre2-${version}"; description = "Perl Compatible Regular Expressions"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ ttuegel ]; From 4564ed7a7618d93e986d0d11393b260c67d9af2e Mon Sep 17 00:00:00 2001 From: Hythera <87016780+Hythera@users.noreply.github.com> Date: Sun, 5 Apr 2026 17:56:00 +0200 Subject: [PATCH 006/284] pcre2: 10.46 -> 10.47 changelog: https://github.com/PCRE2Project/pcre2/releases/tag/pcre2-10.47 diff: https://github.com/PCRE2Project/pcre2/compare/pcre2-10.46...pcre2-10.47 --- pkgs/development/libraries/pcre2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix index 89fdc25b7982..362f78bad0e3 100644 --- a/pkgs/development/libraries/pcre2/default.nix +++ b/pkgs/development/libraries/pcre2/default.nix @@ -10,11 +10,11 @@ stdenv.mkDerivation rec { pname = "pcre2"; - version = "10.46"; + version = "10.47"; src = fetchurl { url = "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-${version}/pcre2-${version}.tar.bz2"; - hash = "sha256-FfvFq6a+7gsXrssEYCrjlDI5OroevY45t8q/fbiDKZ8="; + hash = "sha256-R/6MmUYSUNQviebo/a66naBXhV0G63/AjZygP9CNe8c="; }; nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ]; From e749b0a6c79dd13e42d84ad26f6761518d8bf1bd Mon Sep 17 00:00:00 2001 From: Lily Ballard Date: Tue, 14 Apr 2026 21:40:50 -0700 Subject: [PATCH 007/284] cargo: remove runtime references to cargo-bootstrap The shell completions were being generated by cargo-bootstrap instead of by the just-built cargo, which meant they were embedding the cargo-bootstrap path and causing it to be part of the runtime closure. --- pkgs/development/compilers/rust/cargo.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix index a86e4a3d186d..87903ed443d5 100644 --- a/pkgs/development/compilers/rust/cargo.nix +++ b/pkgs/development/compilers/rust/cargo.nix @@ -80,9 +80,9 @@ rustPlatform.buildRustPackage.override if stdenv.buildPlatform.canExecute stdenv.hostPlatform then '' installShellCompletion --cmd cargo \ - --bash <(CARGO_COMPLETE=bash cargo) \ - --fish <(CARGO_COMPLETE=fish cargo) \ - --zsh <(CARGO_COMPLETE=zsh cargo) + --bash <(CARGO_COMPLETE=bash $out/bin/cargo) \ + --fish <(CARGO_COMPLETE=fish $out/bin/cargo) \ + --zsh <(CARGO_COMPLETE=zsh $out/bin/cargo) '' else '' From 8eb3c82575d6ea29bb031db9ac450847d73069f9 Mon Sep 17 00:00:00 2001 From: Lily Ballard Date: Wed, 15 Apr 2026 21:28:26 -0700 Subject: [PATCH 008/284] rustPlatform.rust: undeprecate These attributes were deprecated in #230951 because they confused things with splicing, e.g. passing `rustPlatform.rust.rustc` to `nativeBuildInputs` would get the wrong derivation when cross-compiling. This was a consequence of the fact that they come from the buildPackages set. But we still want to expose these packages as otherwise Rust packages have no way to reference the rustc and cargo that build them, which means they can't e.g. use `disallowedReferences` to ensure they don't end up in the runtime closure. Just as `stdenv.cc` itself isn't spliced, we can solve this problem by unsplicing the packages. --- .../compilers/rust/make-rust-platform.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/rust/make-rust-platform.nix b/pkgs/development/compilers/rust/make-rust-platform.nix index 1f69bb92e213..254ae918bbf6 100644 --- a/pkgs/development/compilers/rust/make-rust-platform.nix +++ b/pkgs/development/compilers/rust/make-rust-platform.nix @@ -72,14 +72,16 @@ maturinBuildHook bindgenHook ; + + # Let packages reference the build derivations, e.g. for disallowedReferences. + # Get rid of the splicing though, so `nativeBuildInputs = [ rustPlatform.rust.rustc ]` works. + rust = { + rustc = rustc.__spliced.hostTarget or rustc; + cargo = cargo.__spliced.hostTarget or cargo; + }; }; }) // lib.optionalAttrs config.allowAliases { - rust = { - rustc = lib.warn "rustPlatform.rust.rustc is deprecated. Use rustc instead." rustc; - cargo = lib.warn "rustPlatform.rust.cargo is deprecated. Use cargo instead." cargo; - }; - # Added in 25.05. fetchCargoTarball = throw "`rustPlatform.fetchCargoTarball` has been removed in 25.05, use `rustPlatform.fetchCargoVendor` instead"; } From 126bd3b578fdeedd9af7887e028dfdfbf4a223dd Mon Sep 17 00:00:00 2001 From: Lily Ballard Date: Tue, 14 Apr 2026 21:39:14 -0700 Subject: [PATCH 009/284] cargo: disallow references to bootstrap cargo, rustc cargo recently accidentally gained a runtime dependency on cargo-bootstrap, we don't want to let that happen again. --- pkgs/development/compilers/rust/cargo.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix index 87903ed443d5..3fb4f948a223 100644 --- a/pkgs/development/compilers/rust/cargo.nix +++ b/pkgs/development/compilers/rust/cargo.nix @@ -109,6 +109,13 @@ rustPlatform.buildRustPackage.override runHook postInstallCheck ''; + # Make sure our build rustc/cargo never make it into our runtime closure + disallowedReferences = [ + rustPlatform.rust.cargo + rustPlatform.rust.rustc + rustPlatform.rust.rustc.unwrapped + ]; + meta = { homepage = "https://crates.io"; description = "Downloads your Rust project's dependencies and builds your project"; From 19d080de23ecc22a508509f0f6734c972a785e62 Mon Sep 17 00:00:00 2001 From: Lily Ballard Date: Wed, 15 Apr 2026 22:44:18 -0700 Subject: [PATCH 010/284] rustc-unwrapped: disallow references to build rustc/cargo --- pkgs/development/compilers/rust/rustc.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 8b816b08f9b2..2419ab02c761 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -443,6 +443,12 @@ stdenv.mkDerivation (finalAttrs: { requiredSystemFeatures = [ "big-parallel" ]; + # Make sure our bootstrap packages don't end up in our runtime closure + disallowedReferences = [ + cargo + rustc + ]; + passthru = { llvm = llvmShared; inherit llvmPackages; From cf414a6ba870d43b7778da985b82ef6b8cbefebf Mon Sep 17 00:00:00 2001 From: Cameron Brown Date: Sat, 9 May 2026 14:17:35 -0400 Subject: [PATCH 011/284] python3Packages.isort: 7.0.0 -> 8.0.1 --- pkgs/development/python-modules/isort/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/isort/default.nix b/pkgs/development/python-modules/isort/default.nix index 3e79a6888b69..6d404805eb06 100644 --- a/pkgs/development/python-modules/isort/default.nix +++ b/pkgs/development/python-modules/isort/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "isort"; - version = "7.0.0"; + version = "8.0.1"; pyproject = true; src = fetchFromGitHub { owner = "PyCQA"; repo = "isort"; tag = version; - hash = "sha256-GN76dLk+Ju+Do/BymIuHD/9KAjYZ3sKvfz2cvNEnF5U="; + hash = "sha256-adEAWbRY+bCji4TfnS8W5p5KvuSjmLQrqhi+n8mSQPA="; }; build-system = [ From e8372172633233072f78e86b325b4526557eac8c Mon Sep 17 00:00:00 2001 From: Philipp Aigner Date: Tue, 12 May 2026 13:16:02 +0200 Subject: [PATCH 012/284] auto-patchelf: catch OSError for ZSTD-compressed ELF sections pyelftools raises OSError: [Errno 22] Invalid argument (not ELFError) when calling stream.seek() on ZSTD-compressed ELF sections (SHF_COMPRESSED). This breaks builds of packages like vscode >= 1.118 that ship such binaries. Extend the except clauses in populate_cache and auto_patchelf_file to also catch OSError, consistent with the existing intent of skipping non-parseable files. Fixes #519275 --- pkgs/by-name/au/auto-patchelf/source/auto-patchelf.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/by-name/au/auto-patchelf/source/auto-patchelf.py b/pkgs/by-name/au/auto-patchelf/source/auto-patchelf.py index 33813168f560..bda5329a1df3 100644 --- a/pkgs/by-name/au/auto-patchelf/source/auto-patchelf.py +++ b/pkgs/by-name/au/auto-patchelf/source/auto-patchelf.py @@ -1,6 +1,7 @@ #!/usr/bin/env python3 import argparse +import errno import os import pprint import subprocess @@ -195,6 +196,12 @@ def populate_cache(initial: list[Path], recursive: bool =False) -> None: except ELFError: # Not an ELF file in the right format pass + except OSError as e: + if e.errno == errno.EINVAL: + # pyelftools can raise EINVAL for certain compressed sections. + pass + else: + raise def find_dependency(soname: str, soarch: str, soabi: str) -> Optional[Path]: @@ -343,6 +350,10 @@ def auto_patchelf_file(logger: Logger, path: Path, runtime_deps: list[Path], app except ELFError: return [] + except OSError as e: + if e.errno == errno.EINVAL: + return [] + raise # these platforms are packaged in nixpkgs with ld.so in a separate derivation # than libc.so and friends. keep_libc is mandatory. From f52e868a2efa822f943113badb06dad709ade9c1 Mon Sep 17 00:00:00 2001 From: Ross Smyth <18294397+RossSmyth@users.noreply.github.com> Date: Wed, 13 May 2026 16:05:47 -0400 Subject: [PATCH 013/284] buildGoModule: supported structuredAttrs with subPackages --- pkgs/build-support/go/module.nix | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/go/module.nix b/pkgs/build-support/go/module.nix index ea266422c6d8..a98f89f5e730 100644 --- a/pkgs/build-support/go/module.nix +++ b/pkgs/build-support/go/module.nix @@ -320,10 +320,15 @@ lib.extendMkDerivation { } getGoDirs() { - local type; - type="$1" - if [ -n "$subPackages" ]; then - echo "$subPackages" | sed "s,\(^\| \),\1./,g" + local -r type="$1" + + # Support strucuredAttrs, they are not space seperated + local -a subPackagesArray + concatTo subPackagesArray subPackages + + # Outputs each element prefixed with './' if the array is not empty + if [[ ''${#subPackagesArray[@]} -gt 0 ]]; then + echo "''${subPackagesArray[*]/#/./}" else find . -type f -name \*$type.go -exec dirname {} \; | grep -v "/vendor/" | sort --unique | grep -v "$exclude" fi From 4f7994e44a1e5893a8400dd97e26b2ed2c523f72 Mon Sep 17 00:00:00 2001 From: Ross Smyth <18294397+RossSmyth@users.noreply.github.com> Date: Wed, 13 May 2026 16:08:13 -0400 Subject: [PATCH 014/284] neo-cowsaw: to __structuredAttrs = true test for structuredAttrs & subPackages --- pkgs/by-name/ne/neo-cowsay/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/ne/neo-cowsay/package.nix b/pkgs/by-name/ne/neo-cowsay/package.nix index efcb0d4c60b8..209951938481 100644 --- a/pkgs/by-name/ne/neo-cowsay/package.nix +++ b/pkgs/by-name/ne/neo-cowsay/package.nix @@ -15,6 +15,7 @@ buildGoModule (finalAttrs: { hash = "sha256-DmIjqBTIzwkQ8aJ6xCgIwjDtczlTH5AKbPKFUGx3qQ8="; }; + __structuredAttrs = true; vendorHash = "sha256-gBURmodXkod4fukw6LWEY+MBxPcf4vn/f6K78UR77n0="; modRoot = "./cmd"; From 3cb487b5a903b0f20e76344ccf3e3784ad4ca0d0 Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Fri, 15 May 2026 18:40:37 +0200 Subject: [PATCH 015/284] icu: advance the default to icu78 Signed-off-by: Marcin Serwin --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 28b84eabe323..7c5b9beceb6e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6411,7 +6411,7 @@ with pkgs; icu78 ; - icu = icu76; + icu = icu78; idasen = with python3Packages; toPythonApplication idasen; From c81dbffc4ffdd566c712d9652d9ef34613fd1abe Mon Sep 17 00:00:00 2001 From: Francesco Gazzetta Date: Fri, 24 Apr 2026 18:10:14 +0200 Subject: [PATCH 016/284] tclPackages.expect: 5.45.4 -> 6.0a1 * Change src to maintained fork * Upstreamed some patches * Unbreaks build with Tcl 9 --- .../0004-enable-cross-compilation.patch | 295 ------------------ .../ex/expect/fix-build-time-run-tcl.patch | 24 +- .../ex/expect/fix-darwin-bsd-clang16.patch | 36 --- .../tcl-modules/by-name/ex/expect/package.nix | 48 +-- 4 files changed, 27 insertions(+), 376 deletions(-) delete mode 100644 pkgs/development/tcl-modules/by-name/ex/expect/0004-enable-cross-compilation.patch delete mode 100644 pkgs/development/tcl-modules/by-name/ex/expect/fix-darwin-bsd-clang16.patch diff --git a/pkgs/development/tcl-modules/by-name/ex/expect/0004-enable-cross-compilation.patch b/pkgs/development/tcl-modules/by-name/ex/expect/0004-enable-cross-compilation.patch deleted file mode 100644 index c09623d292b2..000000000000 --- a/pkgs/development/tcl-modules/by-name/ex/expect/0004-enable-cross-compilation.patch +++ /dev/null @@ -1,295 +0,0 @@ -From: Andrew Ruder -Subject: [PATCH] enable cross compilation for expect - -This patch was created by running ./configure on a modern Linux machine -and inserting the results into the cross compilation section of -each AC_MSG_CHECKING that bombed out with an error. - -Signed-off-by: Andrew Ruder - --- - -The original patch, and description above, is originally from -https://github.com/buildroot/buildroot/blob/master/package/expect/0001-enable-cross-compilation.patch - -This patch has been further modified to not hard-code Linux assumptions. - ---- - -Index: expect-5.45/configure.in -=================================================================== ---- expect-5.45.orig/configure.in 2013-11-14 07:59:58.732100595 -0600 -+++ expect-5.45/configure.in 2013-11-14 07:59:58.732100595 -0600 -@@ -6,10 +6,12 @@ - AC_INIT([expect],[5.45.4]) - - TEA_INIT([3.9]) - - AC_CONFIG_AUX_DIR(tclconfig) -+ -+AC_LANG([C]) - - #-------------------------------------------------------------------- - # Configure script for package 'Expect'. - # TEA compliant. - #-------------------------------------------------------------------- -@@ -465,26 +467,20 @@ - # Some systems only define WNOHANG if _POSIX_SOURCE is defined - # The following merely tests that sys/wait.h can be included - # and if so that WNOHANG is not defined. The only place I've - # seen this is ISC. - AC_MSG_CHECKING([if WNOHANG requires _POSIX_SOURCE]) --AC_TRY_RUN([ -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - #include --int --main() { - #ifndef WNOHANG -- return 0; --#else -- return 1; -+# error "WNOHANG requires _POSIX_SOURCE to be defined" - #endif --}], -+]])], - AC_MSG_RESULT(yes) - AC_DEFINE(WNOHANG_REQUIRES_POSIX_SOURCE) - , - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - AC_MSG_CHECKING([if any value exists for WNOHANG]) - rm -rf wnohang - AC_TRY_RUN([ -@@ -504,11 +501,12 @@ - rm -f wnohang - , - AC_MSG_RESULT(no) - AC_DEFINE(WNOHANG_BACKUP_VALUE, 1) - , -- AC_MSG_ERROR([Expect can't be cross compiled]) -+ AC_MSG_RESULT(yes) -+ AC_DEFINE(WNOHANG_BACKUP_VALUE, 1) - ) - - # - # check how signals work - # -@@ -572,11 +570,11 @@ - }], - AC_MSG_RESULT(yes) - AC_DEFINE(REARM_SIG) - , - AC_MSG_RESULT(no) --, AC_MSG_WARN([Expect can't be cross compiled]) -+, AC_MSG_RESULT(no) - ) - - # HPUX7 has trouble with the big cat so split it - # Owen Rees 29Mar93 - SEDDEFS="${SEDDEFS}CONFEOF -@@ -710,25 +708,19 @@ - AC_DEFINE(POSIX) - fi - - # first check for the pure bsd - AC_MSG_CHECKING([for struct sgttyb]) --AC_TRY_RUN([ -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - #include --int --main() --{ -- struct sgttyb tmp; -- return 0; --}], -+static struct sgttyb tmp; -+]])], - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_SGTTYB) - PTY_TYPE=sgttyb - , - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - # mach systems have include files for unimplemented features - # so avoid doing following test on those systems - if test $mach -eq 0 ; then -@@ -735,116 +728,88 @@ - # next check for the older style ttys - # note that if we detect termio.h (only), we still set PTY_TYPE=termios - # since that just controls which of pty_XXXX.c file is use and - # pty_termios.c is set up to handle pty_termio. - AC_MSG_CHECKING([for struct termio]) -- AC_TRY_RUN([#include -- int -- main() -- { -- struct termio tmp; -- return 0; -- }], -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ -+#include -+static struct termio tmp; -+]])], - AC_DEFINE(HAVE_TERMIO) - PTY_TYPE=termios - AC_MSG_RESULT(yes) - , - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - # now check for the new style ttys (not yet posix) - AC_MSG_CHECKING([for struct termios]) -- AC_TRY_RUN([ -- /* including termios.h on Solaris 5.6 fails unless inttypes.h included */ --# ifdef HAVE_INTTYPES_H -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ -+/* including termios.h on Solaris 5.6 fails unless inttypes.h included */ -+#ifdef HAVE_INTTYPES_H - # include --# endif --# include -- int -- main() -- { -- struct termios tmp; -- return 0; -- }], -+#endif -+#include -+static struct termios tmp; -+]])], - AC_DEFINE(HAVE_TERMIOS) - PTY_TYPE=termios - AC_MSG_RESULT(yes) - , - AC_MSG_RESULT(no) -- , -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - fi - - AC_MSG_CHECKING([if TCGETS or TCGETA in termios.h]) --AC_TRY_RUN([ -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - /* including termios.h on Solaris 5.6 fails unless inttypes.h included */ - #ifdef HAVE_INTTYPES_H --#include -+# include - #endif - #include --int --main() { --#if defined(TCGETS) || defined(TCGETA) -- return 0; --#else -- return 1; -+# -+#if !(defined(TCGETS) || defined(TCGETA)) -+# error "missing both of TCGETS and TCGETA" - #endif --}], -+]])], - AC_DEFINE(HAVE_TCGETS_OR_TCGETA_IN_TERMIOS_H) - AC_MSG_RESULT(yes) - , - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - AC_MSG_CHECKING([if TIOCGWINSZ in termios.h]) --AC_TRY_RUN([ -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - /* including termios.h on Solaris 5.6 fails unless inttypes.h included */ - #ifdef HAVE_INTTYPES_H --#include -+# include - #endif - #include --int --main() { --#ifdef TIOCGWINSZ -- return 0; --#else -- return 1; -+ -+#ifndef TIOCGWINSZ -+# error "missing TIOCGWINSZ" - #endif --}], -+]])], - AC_DEFINE(HAVE_TIOCGWINSZ_IN_TERMIOS_H) - AC_MSG_RESULT(yes) - , - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - # finally check for Cray style ttys - AC_MSG_CHECKING([for Cray-style ptys]) - SETUID=":" --AC_TRY_RUN([ --int --main(){ --#ifdef CRAY -- return 0; --#else -- return 1; -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ -+#ifndef CRAY -+# error "CRAY is not defined" - #endif --} --], -+]])], - PTY_TYPE=unicos - SETUID="chmod u+s" - AC_MSG_RESULT(yes) - , - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - # - # Check for select and/or poll. If both exist, we prefer select. - # if neither exists, define SIMPLE_EVENT. -@@ -873,26 +842,24 @@ - - # - # check for timezones - # - AC_MSG_CHECKING([for SV-style timezone]) --AC_TRY_RUN([ -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - extern char *tzname[2]; - extern int daylight; - int - main() - { - int *x = &daylight; - char **y = tzname; - - return 0; --}], -+}]])], - AC_DEFINE(HAVE_SV_TIMEZONE) - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no) --, -- AC_MSG_ERROR([Expect can't be cross compiled]) - ) - - - # Following comment stolen from Tcl's configure.in: - # Note: in the following variable, it's important to use the absolute - diff --git a/pkgs/development/tcl-modules/by-name/ex/expect/fix-build-time-run-tcl.patch b/pkgs/development/tcl-modules/by-name/ex/expect/fix-build-time-run-tcl.patch index 8edc4bea39d6..213251101530 100644 --- a/pkgs/development/tcl-modules/by-name/ex/expect/fix-build-time-run-tcl.patch +++ b/pkgs/development/tcl-modules/by-name/ex/expect/fix-build-time-run-tcl.patch @@ -1,11 +1,13 @@ ---- a/Makefile.in 2022-09-07 21:46:37.090519258 +0200 -+++ b/Makefile.in 2022-09-07 21:46:21.462592279 +0200 -@@ -380,7 +380,7 @@ - cp $(DIST_ROOT)/$(PKG_DIR).tar.gz $(top_builddir) - - $(SCRIPTS): -- $(TCLSH) $(srcdir)/fixline1 $(SHORT_BINDIR) < $(srcdir)/example/$@ > $@ -+ @tcl@ $(srcdir)/fixline1 $(SHORT_BINDIR) < $(srcdir)/example/$@ > $@ - - ## We cannot use TCL_LIBS below (after TCL_LIB_SPEC) because its - ## expansion references the contents of LIBS, which contains linker +diff --git a/Makefile.in b/Makefile.in +index 36feb62..ac77b25 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -380,7 +380,7 @@ dist: dist-clean doc + cp $(DIST_ROOT)/$(PKG_DIR).tar.gz $(top_builddir) + + $(SCRIPTS): +- $(TCLSH) $(srcdir)/fixline1 $(SHORT_BINDIR) < $(srcdir)/example/$@ > $@ ++ @tcl@ $(srcdir)/fixline1 $(SHORT_BINDIR) < $(srcdir)/example/$@ > $@ + + ## We cannot use TCL_LIBS below (after TCL_LIB_SPEC) because its + ## expansion references the contents of LIBS, which contains linker diff --git a/pkgs/development/tcl-modules/by-name/ex/expect/fix-darwin-bsd-clang16.patch b/pkgs/development/tcl-modules/by-name/ex/expect/fix-darwin-bsd-clang16.patch deleted file mode 100644 index a0e11a5f9d6b..000000000000 --- a/pkgs/development/tcl-modules/by-name/ex/expect/fix-darwin-bsd-clang16.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -ur a/exp_win.c b/exp_win.c ---- a/exp_win.c 2018-02-02 14:15:52.000000000 -0500 -+++ b/exp_win.c 2023-10-10 07:47:33.082690432 -0400 -@@ -39,7 +39,8 @@ - /* Sigh. On AIX 2.3, termios.h exists but does not define TIOCGWINSZ */ - /* Instead, it has to come from ioctl.h. However, As I said above, this */ - /* can't be cavalierly included on all machines, even when it exists. */ --#if defined(HAVE_TERMIOS) && !defined(HAVE_TIOCGWINSZ_IN_TERMIOS_H) -+/* Darwin also has termios.h, but it requires ioctl.h for `ioctl`. */ -+#if defined(HAVE_TERMIOS) && (defined(__APPLE__) || !defined(HAVE_TIOCGWINSZ_IN_TERMIOS_H)) - # include - #endif - -diff -ur d/pty_termios.c c/pty_termios.c ---- d/pty_termios.c 2023-10-10 07:59:23.244452442 -0400 -+++ c/pty_termios.c 2023-10-10 08:00:35.303231582 -0400 -@@ -7,7 +7,18 @@ - - */ - --#include /* openpty */ -+/* openpty */ -+#if defined(__APPLE__) -+# include -+#elif defined(__FreeBSD__) -+# include -+# include -+# include -+# include -+#else /* pty.h is Linux-specific */ -+# include -+#endif -+ - #include - #include - diff --git a/pkgs/development/tcl-modules/by-name/ex/expect/package.nix b/pkgs/development/tcl-modules/by-name/ex/expect/package.nix index 8e4b2b0caa54..ca7fb72b9739 100644 --- a/pkgs/development/tcl-modules/by-name/ex/expect/package.nix +++ b/pkgs/development/tcl-modules/by-name/ex/expect/package.nix @@ -2,40 +2,28 @@ lib, stdenv, buildPackages, - fetchurl, + fetchFromGitHub, tcl, makeWrapper, autoreconfHook, - fetchpatch, replaceVars, }: -tcl.mkTclDerivation rec { +tcl.mkTclDerivation (finalAttrs: { pname = "expect"; - version = "5.45.4"; + version = "6.0a1"; - src = fetchurl { - url = "mirror://sourceforge/expect/Expect/${version}/expect${version}.tar.gz"; - hash = "sha256-Safag7C92fRtBKBN7sGcd2e7mjI+QMR4H4nK92C5LDQ="; + src = fetchFromGitHub { + owner = "tcltk-depot"; + repo = "expect"; + tag = "v${finalAttrs.version}"; + hash = "sha256-RDWI4cH7X+N9axm31e1ACFUvTYfQ2r/sfNxWkZrYDJo="; }; patches = [ (replaceVars ./fix-build-time-run-tcl.patch { tcl = "${buildPackages.tcl}/bin/tclsh"; }) - # The following patches fix compilation with clang 15+ - (fetchpatch { - url = "https://sourceforge.net/p/expect/patches/24/attachment/0001-Add-prototype-to-function-definitions.patch"; - hash = "sha256-X2Vv6VVM3KjmBHo2ukVWe5YTVXRmqe//Kw2kr73OpZs="; - }) - (fetchpatch { - url = "https://sourceforge.net/p/expect/patches/_discuss/thread/b813ca9895/6759/attachment/expect-configure-c99.patch"; - hash = "sha256-PxQQ9roWgVXUoCMxkXEgu+it26ES/JuzHF6oML/nk54="; - }) - ./0004-enable-cross-compilation.patch - # Include `sys/ioctl.h` and `util.h` on Darwin, which are required for `ioctl` and `openpty`. - # Include `termios.h` on FreeBSD for `openpty` - ./fix-darwin-bsd-clang16.patch # Remove some code which causes it to link against a file that does not exist at build time on native FreeBSD ./freebsd-unversioned.patch ]; @@ -49,24 +37,17 @@ tcl.mkTclDerivation rec { makeWrapper ]; + __structuredAttrs = true; + strictDeps = true; - env = { - NIX_CFLAGS_COMPILE = toString ( - # Needed to avoid errors when building with GCC 15. - lib.optionals stdenv.cc.isGNU [ "-Wno-error=incompatible-pointer-types" ] - # Autoconf 2.73 defaults to C23, but Expect uses K&R style function declarations. - ++ [ "-std=gnu17" ] - ); - }; - - hardeningDisable = [ "format" ]; - postInstall = '' tclWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ tcl ]}) - ${lib.optionalString stdenv.hostPlatform.isDarwin "tclWrapperArgs+=(--prefix DYLD_LIBRARY_PATH : $out/lib/expect${version})"} + ${lib.optionalString stdenv.hostPlatform.isDarwin "tclWrapperArgs+=(--prefix DYLD_LIBRARY_PATH : $out/lib/expect${finalAttrs.version})"} ''; + doCheck = true; + installCheckTarget = "test"; tclRequiresCheck = [ "Expect" ]; outputs = [ @@ -81,6 +62,5 @@ tcl.mkTclDerivation rec { platforms = lib.platforms.unix; mainProgram = "expect"; maintainers = with lib.maintainers; [ SuperSandro2000 ]; - broken = tcl.isTcl9; }; -} +}) From 341ec4198d06f7312d63b970d92292be38ca2b7a Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 26 May 2026 20:57:21 +0300 Subject: [PATCH 017/284] curl{,Minimal}: patch shebang of wcurl script with host runtimeShell --- pkgs/by-name/cu/curlMinimal/package.nix | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pkgs/by-name/cu/curlMinimal/package.nix b/pkgs/by-name/cu/curlMinimal/package.nix index 6edda92e8609..a1b1e8210ba2 100644 --- a/pkgs/by-name/cu/curlMinimal/package.nix +++ b/pkgs/by-name/cu/curlMinimal/package.nix @@ -6,6 +6,8 @@ perl, nixosTests, autoreconfHook, + buildPackages, + runtimeShellPackage, brotliSupport ? false, brotli, c-aresSupport ? false, @@ -82,6 +84,9 @@ assert ]) > 1 ); +let + isCross = !lib.systems.equals stdenv.buildPlatform stdenv.hostPlatform; +in stdenv.mkDerivation (finalAttrs: { pname = "curl"; version = "8.20.0"; @@ -241,7 +246,19 @@ stdenv.mkDerivation (finalAttrs: { ln $out/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/libcurl-gnutls${stdenv.hostPlatform.extensions.sharedLibrary} ln $out/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/libcurl-gnutls${stdenv.hostPlatform.extensions.sharedLibrary}.4 ln $out/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/libcurl-gnutls${stdenv.hostPlatform.extensions.sharedLibrary}.4.4.0 + '' + # The wcurl shell script found in `''${!outputBin}/bin`, is located in the + # source along with all the scripts patched in `postPatch` above. + # `patchShebangs` at that stage causes the host intended wcurl script to get + # the buildPlatform's runtimeShell shebang, instead of the hostPlatform's. To + # make sure this doesn't happen we disallow it, and fix it above in the + # postInstall, and also with the conditional hostPlatform's + # runtimeShellPackage added in buildInputs. + + lib.optionalString isCross '' + patchShebangs --update --host "''${!outputBin}/bin" ''; + disallowedReferences = lib.optional isCross buildPackages.runtimeShellPackage; + buildInputs = lib.optional isCross runtimeShellPackage; passthru = let From bf6855be79dcf742403084ab8851121e03261949 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis=20Lafuente?= Date: Tue, 9 Jun 2026 17:55:30 +0200 Subject: [PATCH 018/284] libssh: Add optional support for gssapi Similar to the openssh package, I am introducing a new package, libsshWithGssapi, which enables the gssapi flag --- pkgs/by-name/li/libssh/package.nix | 20 ++++++++++++++++---- pkgs/by-name/li/libsshWithGssapi/package.nix | 3 +++ 2 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 pkgs/by-name/li/libsshWithGssapi/package.nix diff --git a/pkgs/by-name/li/libssh/package.nix b/pkgs/by-name/li/libssh/package.nix index 93876d1b72d8..2c786b504b1a 100644 --- a/pkgs/by-name/li/libssh/package.nix +++ b/pkgs/by-name/li/libssh/package.nix @@ -8,6 +8,9 @@ openssl, libsodium, + withGssapi ? false, + krb5, + # for passthru.tests ffmpeg, sshping, @@ -28,20 +31,29 @@ stdenv.mkDerivation (finalAttrs: { "dev" ]; + strictDeps = true; + + __structuredAttrs = true; + postPatch = '' # Fix headers to use libsodium instead of NaCl sed -i 's,nacl/,sodium/,g' ./include/libssh/curve25519.h src/curve25519.c ''; - # Don’t build examples, which are not installed and require additional dependencies not - # included in `buildInputs` such as libx11. - cmakeFlags = [ "-DWITH_EXAMPLES=OFF" ]; + cmakeFlags = [ + # Don’t build examples, which are not installed and require additional dependencies not + # included in `buildInputs` such as libx11. + "-DWITH_EXAMPLES=OFF" + + (lib.cmakeBool "USE_GSSAPI" withGssapi) + ]; buildInputs = [ zlib openssl libsodium - ]; + ] + ++ lib.optional withGssapi krb5; nativeBuildInputs = [ cmake diff --git a/pkgs/by-name/li/libsshWithGssapi/package.nix b/pkgs/by-name/li/libsshWithGssapi/package.nix new file mode 100644 index 000000000000..73876b693484 --- /dev/null +++ b/pkgs/by-name/li/libsshWithGssapi/package.nix @@ -0,0 +1,3 @@ +{ libssh }: + +libssh.override { withGssapi = true; } From 09c2f2401300d7300d9cc771b2dd00ac76435833 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Tue, 9 Jun 2026 20:15:36 +0100 Subject: [PATCH 019/284] serd: 0.32.8 -> 0.32.10 Changes: https://drobilla.net/2026/06/08/serd-0-32-10.html --- pkgs/by-name/se/serd/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/se/serd/package.nix b/pkgs/by-name/se/serd/package.nix index 3ba0fafb9096..1e1fbf775862 100644 --- a/pkgs/by-name/se/serd/package.nix +++ b/pkgs/by-name/se/serd/package.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "serd"; - version = "0.32.8"; + version = "0.32.10"; outputs = [ "out" @@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "https://download.drobilla.net/serd-${finalAttrs.version}.tar.xz"; - hash = "sha256-9HJZvDi6VTsN64ttq2tbc9NjBGmnyUOczcqA4G18Hs4="; + hash = "sha256-sOk7SeUvAaBJR1t4hu8UBAcRWjLTseXcX5UUHIgnXRw="; }; nativeBuildInputs = [ From 0fc90c3e06254ff22e07ab2c25fe2091e75fd05d Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 13 Jun 2026 16:34:00 +0100 Subject: [PATCH 020/284] mpg123: 1.33.5 -> 1.33.6 Changes: https://www.mpg123.de/#2026-06-06 --- pkgs/applications/audio/mpg123/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix index e46a14127710..c3e4a6fd2ffc 100644 --- a/pkgs/applications/audio/mpg123/default.nix +++ b/pkgs/applications/audio/mpg123/default.nix @@ -21,11 +21,11 @@ assert withConplay -> !libOnly; stdenv.mkDerivation (finalAttrs: { pname = "${lib.optionalString libOnly "lib"}mpg123"; - version = "1.33.5"; + version = "1.33.6"; src = fetchurl { url = "mirror://sourceforge/mpg123/mpg123-${finalAttrs.version}.tar.bz2"; - hash = "sha256-DX68jaCv88o4PIxrWmrb5ALuW7JWaFuMVJnzpzn51t0="; + hash = "sha256-kpp8GLpmK4knrtTeIprZroqytIBt0PMLkBE+sbTiGVo="; }; outputs = [ From 0150e1894f23407a9766d9a3ac3bb5911b2c0639 Mon Sep 17 00:00:00 2001 From: Aleksi Hannula Date: Mon, 6 Apr 2026 16:30:05 +0300 Subject: [PATCH 021/284] minimal-bootstrap: Use minimal gcc wrapper --- .../linux/minimal-bootstrap/default.nix | 13 ++- .../linux/minimal-bootstrap/gcc/latest.nix | 19 ++++- .../linux/minimal-bootstrap/gcc/wrapper.nix | 81 +++++++++++++++++++ .../linux/minimal-bootstrap/gcc/wrapper.sh | 51 ++++++++++++ .../linux/minimal-bootstrap/gcc/wrappercxx.sh | 57 +++++++++++++ .../linux/minimal-bootstrap/musl/static.nix | 13 ++- .../linux/minimal-bootstrap/xz/static.nix | 2 +- 7 files changed, 225 insertions(+), 11 deletions(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.sh create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gcc/wrappercxx.sh diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 5418c6507b4b..6afd5e5f6259 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -154,11 +154,19 @@ lib.makeScope gnutar = gnutar-latest; }; - gcc-latest = callPackage ./gcc/latest.nix { + gcc-latest-unwrapped = callPackage ./gcc/latest.nix { gcc = gcc10; gnumake = gnumake-musl; gnutar = gnutar-latest; }; + gcc-latest = callPackage ./gcc/wrapper.nix { + bash-build = bash; + gcc-unwrapped = gcc-latest-unwrapped; + targetPlatform = hostPlatform; + libc = musl; + libgcc = gcc-latest-unwrapped; + libstdcxx = gcc-latest-unwrapped; + }; gnugrep = callPackage ./gnugrep { bash = bash_2_05; @@ -294,6 +302,7 @@ lib.makeScope }; musl-static = callPackage ./musl/static.nix { + libgcc = gcc-latest-unwrapped; gcc = gcc-latest; gnumake = gnumake-musl; }; @@ -455,7 +464,7 @@ lib.makeScope }; glibc = callPackage ./glibc { - gcc = gcc-latest; + gcc = gcc-latest-unwrapped; gnumake = gnumake-musl; gnutar = gnutar-latest; gnugrep = gnugrep-static; diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gcc/latest.nix b/pkgs/os-specific/linux/minimal-bootstrap/gcc/latest.nix index d003f164abad..8abf382e17d6 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gcc/latest.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gcc/latest.nix @@ -126,10 +126,12 @@ bash.runCommand "${pname}-${version}" --prefix=$out \ --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ - --with-native-system-header-dir=/include \ - --with-sysroot=${musl} \ + --with-native-system-header-dir=${musl}/include \ + --with-sysroot=/ \ --enable-languages=c,c++ \ --enable-checking=release \ + --enable-static \ + --disable-shared \ --disable-bootstrap \ --disable-dependency-tracking \ --disable-libsanitizer \ @@ -144,8 +146,7 @@ bash.runCommand "${pname}-${version}" --disable-multilib \ --disable-nls \ --disable-plugin \ - --without-isl \ - --disable-shared + --without-isl # Build make -j $NIX_BUILD_CORES @@ -155,4 +156,14 @@ bash.runCommand "${pname}-${version}" # libstdc++ gdb pretty-printers + man pages are unused downstream. rm -rf $out/share/gcc-*/python $out/share/man $out/share/info + + if [ -d "$out/lib64" ]; then + shopt -s dotglob + for lib in $out/lib64/*; do + mv --no-clobber "$lib" "$out/lib/" + done + shopt -u dotglob + rm -rf "$out/lib64" + ln -s lib "$out/lib64" + fi '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.nix b/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.nix new file mode 100644 index 000000000000..69c0d0f93add --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.nix @@ -0,0 +1,81 @@ +{ + fetchurl, + lib, + gnutar, + xz, + bash-build, + gnused, + targetPlatform, + libc, + libgcc, + libstdcxx, + gcc-unwrapped, + binutils, + bash, +}: +let + pname = "gcc-wrapper"; + extraFlags = "-static-libgcc "; + # only supports musl for now + dynamicLinkerGlob = "${libc}/lib/libc.so"; +in +bash-build.runCommand "${pname}-${gcc-unwrapped.version}" + { + inherit pname; + version = gcc-unwrapped.version; + meta = gcc-unwrapped.meta; + nativeBuildInputs = [ gnused ]; + passthru.unwrapped = gcc-unwrapped; + } + '' + if [[ -z '${dynamicLinkerGlob}' ]]; then + echo "Don't know the name of the dynamic linker for platform '${targetPlatform.config}', so guessing instead." + dynamicLinker="${libc}/lib/ld*.so.?" + else + dynamicLinker='${dynamicLinkerGlob}' + fi + dynamicLinker=($dynamicLinker) + case ''${#dynamicLinker[@]} in + 0) echo "No dynamic linker found for platform '${targetPlatform.config}'.";; + 1) echo "Using dynamic linker: '$dynamicLinker'";; + *) echo "Multiple dynamic linkers found for platform '${targetPlatform.config}'.";; + esac + + mkdir -p "$out/bin" + for orig in ${gcc-unwrapped}/bin/*gcc ${gcc-unwrapped}/bin/*gcc-${gcc-unwrapped.version}; do + sed \ + -e 's,@bash@,${lib.getExe bash},' \ + -e "s,@gcc@,$orig," \ + -e "s,@origname@,$(basename "$orig")," \ + -e "s,@origdir@,${gcc-unwrapped}/libexec/gcc," \ + -e "s,@dynlinker@,$dynamicLinker," \ + -e 's,@libgcc@,${libgcc}/lib/gcc/${targetPlatform.config}/${libgcc.version},' \ + -e 's,@libc@,${libc}/lib,' \ + -e 's,@gccinc@,${gcc-unwrapped}/lib/gcc/${targetPlatform.config}/${libgcc.version}/include,' \ + -e 's,@binutils@,${binutils}/bin,' \ + -e 's,@extraflags@,${extraFlags},' \ + '${./wrapper.sh}' > "$out/bin/$(basename "$orig")" + chmod +x "$out/bin/$(basename "$orig")" + done + for orig in ${gcc-unwrapped}/bin/*++; do + sed \ + -e 's,@bash@,${lib.getExe bash},' \ + -e "s,@gcc@,$orig," \ + -e "s,@origname@,$(basename "$orig")," \ + -e "s,@origdir@,${gcc-unwrapped}/libexec/gcc," \ + -e "s,@dynlinker@,$dynamicLinker," \ + -e 's,@libgcc@,${libgcc}/lib/gcc/${targetPlatform.config}/${libgcc.version},' \ + -e 's,@libc@,${libc}/lib,' \ + -e 's,@libstdcxx@,${libstdcxx}/lib,' \ + -e 's,@libstdcxxinc@,${libstdcxx}/include/c++/${libstdcxx.version},' \ + -e 's,@libstdcxxarchinc@,${libstdcxx}/include/c++/${libstdcxx.version}/${targetPlatform.config},' \ + -e 's,@gccinc@,${gcc-unwrapped}/lib/gcc/${targetPlatform.config}/${libgcc.version}/include,' \ + -e 's,@binutils@,${binutils}/bin,' \ + -e 's,@extraflags@,${extraFlags},' \ + '${./wrappercxx.sh}' > "$out/bin/$(basename "$orig")" + chmod +x "$out/bin/$(basename "$orig")" + done + for orig in ${gcc-unwrapped}/bin/*cpp ${gcc-unwrapped}/bin/*-ar ${gcc-unwrapped}/bin/*-nm ${gcc-unwrapped}/bin/*-ranlib; do + ln -s "$orig" "$out/bin/$(basename "$orig")" + done + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.sh b/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.sh new file mode 100644 index 000000000000..45720ce02d4a --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrapper.sh @@ -0,0 +1,51 @@ +#!@bash@ + +if [ 1 = "$#" ] && [ "x-v" = "x$1" ]; then + # HACK! should not pass -Wl if there are no input files, otherwise libtool breaks + exec -a "@origname@" @gcc@ -v +fi + +# logic based on pkgs/build-support/bintools-wrapper/ld-wrapper.sh +# very hacky +extraRpath="" +prev="" +for param in "$@"; do + case "$prev" in + -L | -B) + case "$param" in + "$NIX_STORE"/*) + extraRpath="$extraRpath -Wl,-rpath,${param}" + ;; + *) + ;; + esac + ;; + *) + case "$param" in + -L"$NIX_STORE"/* | -B"$NIX_STORE"/*) + extraRpath="$extraRpath -Wl,-rpath,${param:2}" + ;; + "$NIX_STORE"/*.so | "$NIX_STORE"/*.so.*) + extraRpath="$extraRpath -Wl,-rpath,${param%/*}" + ;; + *) + ;; + esac + ;; + esac + prev="$param" +done + +# Order of -B is very particular. musl detection in gnulib requires that +# libc/.. comes before libgcc, otherwise libc is assumed to be glibc. +exec -a "@origname@" @gcc@ -Wl,-dynamic-linker=@dynlinker@ \ + @extraflags@ \ + $extraRpath \ + -Wl,-rpath,@libc@,-rpath,@libgcc@ \ + -B@libc@/.. \ + -B@libgcc@ \ + -B@libc@ \ + -B@origdir@ \ + -B@binutils@ \ + -isystem @gccinc@ \ + "$@" diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrappercxx.sh b/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrappercxx.sh new file mode 100644 index 000000000000..c567b0313f08 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gcc/wrappercxx.sh @@ -0,0 +1,57 @@ +#!@bash@ + +if [ 1 = "$#" ] && [ "x-v" = "x$1" ]; then + # HACK! should not pass -Wl if there are no input files, otherwise libtool breaks + exec -a "@origname@" @gcc@ -v +fi + +# logic based on pkgs/build-support/bintools-wrapper/ld-wrapper.sh +# very hacky +extraRpath="" +prev="" +for param in "$@"; do + case "$prev" in + -L | -B) + case "$param" in + "$NIX_STORE"*) + extraRpath="$extraRpath -Wl,-rpath,${param}" + ;; + *) + ;; + esac + ;; + *) + case "$param" in + -L"$NIX_STORE"/* | -B"$NIX_STORE"/*) + extraRpath="$extraRpath -Wl,-rpath,${param:2}" + ;; + "$NIX_STORE"/*.so | "$NIX_STORE"/*.so.*) + extraRpath="$extraRpath -Wl,-rpath,${param%/*}" + ;; + *) + ;; + esac + ;; + esac + prev="$param" +done + +# Order of -B is very particular. musl detection in gnulib requires that +# libc/.. comes before libgcc, otherwise libc is assumed to be glibc. +# Also, libstdcxxinc uses #include_next directives that depend on +# libc headers, so libstdcxx must come before libc. +exec -a "@origname@" @gcc@ -Wl,-dynamic-linker=@dynlinker@ \ + @extraflags@ \ + $extraRpath \ + -Wl,-rpath,@libc@,-rpath,@libgcc@,-rpath,@libstdcxx@ \ + -I @libstdcxxarchinc@ \ + -I @libstdcxxinc@ \ + -B@libc@/.. \ + -B@libc@ \ + -B@libgcc@ \ + -B@origdir@ \ + -B@binutils@ \ + -B@libstdcxx@ \ + -isystem @gccinc@ \ + "$@" + diff --git a/pkgs/os-specific/linux/minimal-bootstrap/musl/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/musl/static.nix index e85e86d8de98..27bfc63aa75f 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/musl/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/musl/static.nix @@ -13,6 +13,7 @@ gnutar, gzip, linux-headers, + libgcc, }: let inherit (import ./common.nix { inherit lib; }) pname meta; @@ -22,6 +23,10 @@ let url = "https://musl.libc.org/releases/musl-${version}.tar.gz"; hash = "sha256-1YX9O2E8ZhUfwySejtRPdwIMtebB5jWmFtP5+CRgUSo="; }; + + binutilsTargetPrefix = lib.optionalString ( + hostPlatform.config != buildPlatform.config + ) "${hostPlatform.config}-"; in bash.runCommand "${pname}-${version}" { @@ -77,23 +82,23 @@ bash.runCommand "${pname}-${version}" src/misc/wordexp.c # Configure + export CC="${binutilsTargetPrefix}gcc -B${libgcc}/lib/gcc/${hostPlatform.config}/${libgcc.version} -Wl,-rpath,${libgcc}/lib/gcc/${hostPlatform.config}/${libgcc.version}" bash ./configure \ --prefix=$out \ --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ - --syslibdir=$out/lib \ - --enable-wrapper + --syslibdir=$out/lib # Build make -j $NIX_BUILD_CORES # Install make -j $NIX_BUILD_CORES install - sed -i 's|/bin/sh|${lib.getExe bash}|' $out/bin/* + mkdir -p $out/bin ln -s ../lib/libc.so $out/bin/ldd ln -s $(ls -d ${linux-headers}/include/* | grep -v scsi\$) $out/include/ # Strip # Ignore failures, because strip may fail on non-elf files. - find $out/{bin,lib} -type f -exec strip --strip-debug {} + || true + find $out/{bin,lib} -type f -exec ${binutilsTargetPrefix}strip --strip-debug {} + || true '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix index c663c4cf04f8..707cec7369e3 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix @@ -39,7 +39,7 @@ bash.runCommand "${pname}-${version}" gzip ]; - disallowedReferences = [ musl ]; + disallowedReferences = [ gcc ]; passthru.tests.get-version = result: From 745f12467cb3410993c1e708178c0082cea1cbea Mon Sep 17 00:00:00 2001 From: Aleksi Hannula Date: Mon, 6 Apr 2026 16:31:13 +0300 Subject: [PATCH 022/284] minimal-bootstrap: Fix tools in preparation for early cross-compilation Various packages under minimal-bootstrap explicitly use the musl gcc wrapper (especially the *-static packages). In #494106, the desire is to allow these packages to run on a host platform which may differ from the bootstrap seed platform. That host platform may be a non-musl platform, and furthermore musl may not even be available on the desired host architecture. This change aims to make the packages more generic wrt libc. It is extracted out of #494106. --- .../linux/minimal-bootstrap/bash/static.nix | 13 ++++++++++--- .../linux/minimal-bootstrap/binutils/static.nix | 7 ++----- .../linux/minimal-bootstrap/bison/default.nix | 5 +---- .../linux/minimal-bootstrap/bzip2/static.nix | 17 +++++++++++------ .../minimal-bootstrap/coreutils/static.nix | 5 +---- .../linux/minimal-bootstrap/default.nix | 4 +++- .../minimal-bootstrap/diffutils/static.nix | 8 +++----- .../minimal-bootstrap/findutils/static.nix | 6 +----- .../linux/minimal-bootstrap/gawk/static.nix | 6 +----- .../linux/minimal-bootstrap/gnugrep/static.nix | 6 +----- .../linux/minimal-bootstrap/gnum4/default.nix | 3 --- .../linux/minimal-bootstrap/gnumake/static.nix | 5 +---- .../linux/minimal-bootstrap/gnupatch/static.nix | 6 +----- .../linux/minimal-bootstrap/gnused/static.nix | 6 +----- .../linux/minimal-bootstrap/gnutar/static.nix | 6 +----- .../linux/minimal-bootstrap/gzip/static.nix | 3 --- .../linux/minimal-bootstrap/patchelf/static.nix | 5 +---- .../linux/minimal-bootstrap/python/default.nix | 6 +----- .../linux/minimal-bootstrap/xz/static.nix | 6 +----- .../linux/minimal-bootstrap/zlib/default.nix | 3 --- 20 files changed, 41 insertions(+), 85 deletions(-) diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix index 31ec4ebc5836..5418d73e352a 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix @@ -4,8 +4,8 @@ hostPlatform, fetchurl, bash, + gcc-buildbuild, gcc, - musl, binutils, gnumake, gnused, @@ -25,6 +25,10 @@ let url = "mirror://gnu/bash/bash-${version}.tar.gz"; sha256 = "sha256-DVzYaWX4aaJs9k9Lcb57lvkKO6iz104n6OnZ1VUPMbo="; }; + + binutilsTargetPrefix = lib.optionalString ( + hostPlatform.config != buildPlatform.config + ) "${hostPlatform.config}-"; in bash.runCommand "${pname}-${version}" { @@ -32,7 +36,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -56,6 +59,10 @@ bash.runCommand "${pname}-${version}" tar xf ${src} cd bash-${version} + export AR="${binutilsTargetPrefix}ar" + export STRIP="${binutilsTargetPrefix}strip" + export STRIPPROG="$STRIP" + # Configure bash ./configure \ --prefix=$out \ @@ -65,7 +72,7 @@ bash.runCommand "${pname}-${version}" --disable-dependency-tracking \ --disable-nls \ --enable-static-link \ - CC=musl-gcc + CC_FOR_BUILD=${gcc-buildbuild}/bin/gcc # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix index 6461f6523c0b..e29e884a2dfd 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix @@ -4,8 +4,8 @@ hostPlatform, fetchurl, bash, + gcc-buildbuild, gcc, - musl, binutils, gnumake, gnupatch, @@ -33,8 +33,6 @@ let ]; configureFlags = [ - "CC=musl-gcc" - "LDFLAGS=--static" "--prefix=${placeholder "out"}" "--build=${buildPlatform.config}" "--host=${hostPlatform.config}" @@ -42,7 +40,6 @@ let "--disable-dependency-tracking" "--disable-nls" - "--with-sysroot=/" "--enable-deterministic-archives" # depends on bison "--disable-gprofng" @@ -70,7 +67,7 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl + gcc-buildbuild binutils gnumake gnupatch diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix index 80b488a800dd..fc588600d5d6 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -32,7 +31,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -70,8 +68,7 @@ bash.runCommand "${pname}-${version}" --prefix=$out \ --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ - --disable-dependency-tracking \ - CC=musl-gcc + --disable-dependency-tracking # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix index 540f86112aa4..5a1b0187857f 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix @@ -1,9 +1,10 @@ { lib, fetchurl, + buildPlatform, + hostPlatform, bash, gcc, - musl, binutils, findutils, gnumake, @@ -18,6 +19,10 @@ let url = "https://sourceware.org/pub/bzip2/bzip2-${version}.tar.gz"; sha256 = "0s92986cv0p692icqlw1j42y9nld8zd83qwhzbqd61p1dqbh6nmb"; }; + + binutilsTargetPrefix = lib.optionalString ( + hostPlatform.config != buildPlatform.config + ) "${hostPlatform.config}-"; in bash.runCommand "${pname}-${version}" { @@ -25,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils findutils gnumake @@ -72,9 +76,10 @@ bash.runCommand "${pname}-${version}" # Build make \ -j $NIX_BUILD_CORES \ - CC=musl-gcc \ - CFLAGS=-static \ - bzip2 + bzip2 \ + CC=${hostPlatform.config}-gcc \ + AR=${binutilsTargetPrefix}ar \ + RANLIB=${binutilsTargetPrefix}ranlib # Install mkdir -p $out/bin @@ -84,5 +89,5 @@ bash.runCommand "${pname}-${version}" # Strip # Ignore failures, because strip may fail on non-elf files. - strip --strip-debug $out/bin/bzip2 || true + ${binutilsTargetPrefix}strip --strip-debug $out/bin/bzip2 || true '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix index 2291a5dedba3..6c92f12bf58b 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -36,8 +35,7 @@ let # libstdbuf.so fails in static builds "--enable-no-install-program=stdbuf" "--enable-single-binary=symlinks" - "CC=musl-gcc" - "CFLAGS=\"-static -I${linux-headers}/include\"" + "CFLAGS=\"-I${linux-headers}/include\"" ]; in bash.runCommand "${pname}-${version}" @@ -46,7 +44,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 6afd5e5f6259..ac31f89dfa66 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -48,6 +48,7 @@ lib.makeScope }; bash-static = callPackage ./bash/static.nix { + gcc-buildbuild = gcc-latest; gcc = gcc-latest; gnumake = gnumake-musl; gnutar = gnutar-latest; @@ -60,6 +61,7 @@ lib.makeScope }; binutils-static = callPackage ./binutils/static.nix { + gcc-buildbuild = gcc-latest; gcc = gcc-latest; gnumake = gnumake-musl; gnutar = gnutar-latest; @@ -435,7 +437,7 @@ lib.makeScope echo ${gcc46.tests.get-version} echo ${gcc46-cxx.tests.hello-world} echo ${gcc10.tests.hello-world} - echo ${gcc-latest.tests.hello-world} + echo ${gcc-latest-unwrapped.tests.hello-world} '' + (lib.strings.optionalString (hostPlatform.libc == "glibc") '' echo ${gcc-glibc.tests.hello-world} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix index f46805411c61..3ab214a9b179 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -31,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -64,15 +62,15 @@ bash.runCommand "${pname}-${version}" cd diffutils-${version} # Configure + # Manually set strcasecmp_works, because we might be cross-compiling bash ./configure \ --prefix=$out \ --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ --disable-nls \ - CC=musl-gcc \ - CFLAGS=-static \ - ac_cv_path_PR_PROGRAM=pr + ac_cv_path_PR_PROGRAM=pr \ + gl_cv_func_strcasecmp_works=y # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix index c6b1c6e2ba0c..b183888ce033 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -31,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -70,9 +68,7 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - --disable-nls \ - CC=musl-gcc \ - CFLAGS=-static + --disable-nls # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix index c6175308d59d..d35bb47674d6 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -32,7 +31,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -66,9 +64,7 @@ bash.runCommand "${pname}-${version}" --disable-extensions \ --disable-mpfr \ --disable-nls \ - --disable-pma \ - CC=musl-gcc \ - CFLAGS=-static + --disable-pma # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix index 18e71d833461..7680ce122fa4 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -31,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -70,9 +68,7 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - --disable-nls \ - CC=musl-gcc \ - CFLAGS=-static + --disable-nls # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix index 71ff15627feb..1f3edd005952 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -32,7 +31,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -71,7 +69,6 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - CC=musl-gcc \ CFLAGS=-I${linux-headers}/include # Build diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix index d24f0e6d12ce..65369e28fb64 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnupatch, @@ -42,7 +41,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnupatch @@ -80,8 +78,7 @@ bash.runCommand "${pname}-${version}" --host=${hostPlatform.config} \ --disable-dependency-tracking \ --disable-nls \ - CC=musl-gcc \ - CFLAGS="-static -std=gnu17" + CFLAGS="-std=gnu17" # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix index ee25341e0b3b..287776101e8f 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -31,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -69,9 +67,7 @@ bash.runCommand "${pname}-${version}" --prefix=$out \ --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ - --disable-dependency-tracking \ - CC=musl-gcc \ - CFLAGS=-static + --disable-dependency-tracking # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix index 8ebb1791e55c..90346ee634ba 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -32,7 +31,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -62,9 +60,7 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - --disable-nls \ - CC=musl-gcc \ - CFLAGS=-static + --disable-nls # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix index 07eba0ef2fe4..fb6f5ea5ba41 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -32,7 +31,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -62,9 +60,7 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - --disable-nls \ - CC=musl-gcc \ - CFLAGS=-static + --disable-nls # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix index f449fdcd3609..76d1ef9474a3 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -31,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -69,7 +67,6 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - CC=musl-gcc \ CFLAGS=-static # Build diff --git a/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix index 1bec275f7b2a..622dc2846468 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -31,7 +30,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -71,8 +69,7 @@ bash.runCommand "${pname}-${version}" --build=${buildPlatform.config} \ --host=${hostPlatform.config} \ --disable-dependency-tracking \ - CC=musl-gcc \ - CXXFLAGS="-static -g0 -O2 -DNDEBUG -ffile-prefix-map=${gcc}=. -fmacro-prefix-map=${gcc}=." + CXXFLAGS="-g0 -O2 -DNDEBUG -ffile-prefix-map=${gcc}=. -fmacro-prefix-map=${gcc}=." # Build make -j $NIX_BUILD_CORES diff --git a/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix index bc12245fd9db..ff04626a6336 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix @@ -5,7 +5,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnupatch, @@ -42,7 +41,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnupatch @@ -80,11 +78,9 @@ bash.runCommand "${pname}-${version}" ${lib.concatMapStringsSep "\n" (f: "patch -Np1 -i ${f}") patches} # Configure - export CC=musl-gcc export C_INCLUDE_PATH="${zlib}/include" export LIBRARY_PATH="${zlib}/lib" - export LDFLAGS="-Wl,-rpath,${zlib}/lib -L${zlib}/lib" - export LD_LIBRARY_PATH="$LIBRARY_PATH" + export LDFLAGS="-L${zlib}/lib" bash ./configure \ --prefix=$out \ --build=${buildPlatform.config} \ diff --git a/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix index 707cec7369e3..cc224fdaeab9 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/xz/static.nix @@ -12,7 +12,6 @@ gawk, gnutar, gzip, - musl, }: let pname = "xz"; @@ -30,7 +29,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ binutils gcc - musl gnumake gnused gnugrep @@ -66,10 +64,8 @@ bash.runCommand "${pname}-${version}" cd xz-${version} # Configure - export CC=musl-gcc export CFLAGS="-g0 -O2 -DNDEBUG" export CXXFLAGS="$CFLAGS" - export LDFLAGS=-static bash ./configure \ --prefix=$out \ --build=${buildPlatform.config} \ @@ -87,7 +83,7 @@ bash.runCommand "${pname}-${version}" --disable-assembler # Build - make -j $NIX_BUILD_CORES LDFLAGS=-all-static + make -j $NIX_BUILD_CORES # Install make -j $NIX_BUILD_CORES install-strip diff --git a/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix index 845f49a48157..79a87e210934 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix @@ -3,7 +3,6 @@ fetchurl, bash, gcc, - musl, binutils, gnumake, gnused, @@ -26,7 +25,6 @@ bash.runCommand "${pname}-${version}" nativeBuildInputs = [ gcc - musl binutils gnumake gnused @@ -49,7 +47,6 @@ bash.runCommand "${pname}-${version}" cd zlib-${version} # Configure - export CC=musl-gcc bash ./configure --prefix=$out # Build From 2d80d64878e8182e26891b0db275d34abaf33521 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Thu, 4 Jun 2026 21:59:28 +0100 Subject: [PATCH 023/284] bash: 5.3p9 -> 5.3p15 --- pkgs/shells/bash/bash-5.3-patches.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/shells/bash/bash-5.3-patches.nix b/pkgs/shells/bash/bash-5.3-patches.nix index 28055cc582aa..4c16a6791d68 100644 --- a/pkgs/shells/bash/bash-5.3-patches.nix +++ b/pkgs/shells/bash/bash-5.3-patches.nix @@ -10,4 +10,10 @@ patch: [ (patch "007" "16dj7vx971q4zbagb46nya7mc6530vr5h86nzmy3qid1zyznp5y0") (patch "008" "1d1zclczgh6j8kjv9ibycn155n1z783188n399khg2gvrcixfz09") (patch "009" "132gy991ayjmr2rynx077rhzr749101y047043zb432bibkhzqzf") + (patch "010" "0s95wzk3zf8hh58jhz6imhqwj3183z905w7rpwc0qc7awb6g2xng") + (patch "011" "0cbmpv5nvmk4gzm0nmsvvm1c7ixkqmlx5mrywhxiv8x2bs7xz602") + (patch "012" "0ws5fnk7rpy6jiji3lws7fja0n5lgzki8i214gqxmbpbkfrpj4yp") + (patch "013" "007jg69286wam4lqd6ab5gs6zl4k3r29fill251by93yjvd9qbq4") + (patch "014" "0v398i0s7i5qrz85nfhdkxwcd6baagcclgbqb3ihg1fk06s60hxx") + (patch "015" "0vpl2h85i3gifnymc5f050mgxckyka9pwsgdgrvgc9zwwbp9rdsm") ] From ff85c2b93b8e5cea4a224c58a422dd61c6ab7dd8 Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 20 Jun 2026 05:15:15 +0300 Subject: [PATCH 024/284] zix: 0.6.2 -> 0.8.2 --- pkgs/by-name/zi/zix/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/zi/zix/package.nix b/pkgs/by-name/zi/zix/package.nix index c7e17d2305f9..1d4e08f50193 100644 --- a/pkgs/by-name/zi/zix/package.nix +++ b/pkgs/by-name/zi/zix/package.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "zix"; - version = "0.6.2"; + version = "0.8.2"; src = fetchFromGitLab { owner = "drobilla"; repo = "zix"; rev = "v${finalAttrs.version}"; - hash = "sha256-1fdW014QKvTYHaEmDsivUVPzF/vZgnW3Srk6edp6G1o="; + hash = "sha256-EfljHq73FA5llX2nnr6pn75nB/FbKnWvr3/Phl5716M="; }; nativeBuildInputs = [ From 523a4dc4187ec7edacf15820e2468553eb210a38 Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 20 Jun 2026 05:16:07 +0300 Subject: [PATCH 025/284] zix: adopt --- pkgs/by-name/zi/zix/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/zi/zix/package.nix b/pkgs/by-name/zi/zix/package.nix index 1d4e08f50193..c783afbb6270 100644 --- a/pkgs/by-name/zi/zix/package.nix +++ b/pkgs/by-name/zi/zix/package.nix @@ -37,6 +37,6 @@ stdenv.mkDerivation (finalAttrs: { changelog = "https://gitlab.com/drobilla/zix/-/blob/${finalAttrs.src.rev}/NEWS"; license = lib.licenses.isc; platforms = lib.platforms.unix; - maintainers = [ ]; + maintainers = with lib.maintainers; [ qweered ]; }; }) From 81fbb6a0c335167b648da56d2093b777c107fd29 Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 20 Jun 2026 05:16:54 +0300 Subject: [PATCH 026/284] zix: modernize --- pkgs/by-name/zi/zix/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/zi/zix/package.nix b/pkgs/by-name/zi/zix/package.nix index c783afbb6270..5f9b4b22f4cd 100644 --- a/pkgs/by-name/zi/zix/package.nix +++ b/pkgs/by-name/zi/zix/package.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchFromGitLab { owner = "drobilla"; repo = "zix"; - rev = "v${finalAttrs.version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-EfljHq73FA5llX2nnr6pn75nB/FbKnWvr3/Phl5716M="; }; From e197a90da72ddba320fbbbdddbd202e674a7d9a1 Mon Sep 17 00:00:00 2001 From: Ryan Omasta Date: Sat, 20 Jun 2026 02:42:31 -0600 Subject: [PATCH 027/284] python3Packages.mock: switch to pyproject --- pkgs/development/python-modules/mock/default.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/mock/default.nix b/pkgs/development/python-modules/mock/default.nix index 23aff9befea6..9cf7a46fc8ea 100644 --- a/pkgs/development/python-modules/mock/default.nix +++ b/pkgs/development/python-modules/mock/default.nix @@ -3,18 +3,21 @@ buildPythonPackage, fetchPypi, pytestCheckHook, + setuptools, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "mock"; version = "5.2.0"; - format = "setuptools"; + pyproject = true; src = fetchPypi { - inherit pname version; + inherit (finalAttrs) pname version; hash = "sha256-TkYOgYYptLFz8y0IvzDTr4Ejr7uOBLtXB6H9R5nlA/A="; }; + build-system = [ setuptools ]; + nativeCheckInputs = [ pytestCheckHook ]; pythonImportsCheck = [ "mock" ]; @@ -22,8 +25,8 @@ buildPythonPackage rec { meta = { description = "Rolling backport of unittest.mock for all Pythons"; homepage = "https://github.com/testing-cabal/mock"; - changelog = "https://github.com/testing-cabal/mock/blob/${version}/CHANGELOG.rst"; + changelog = "https://github.com/testing-cabal/mock/blob/${finalAttrs.version}/CHANGELOG.rst"; license = lib.licenses.bsd2; maintainers = [ ]; }; -} +}) From 559ec51b02722903e0c8ac6560c9896a7c9a94ff Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 21 Jun 2026 00:37:40 +0000 Subject: [PATCH 028/284] libffiReal: 3.5.2 -> 3.6.0 --- pkgs/by-name/li/libffiReal/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libffiReal/package.nix b/pkgs/by-name/li/libffiReal/package.nix index 0869a82c1d16..8b91df2f4ebf 100644 --- a/pkgs/by-name/li/libffiReal/package.nix +++ b/pkgs/by-name/li/libffiReal/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libffi"; - version = "3.5.2"; + version = "3.6.0"; src = fetchurl { url = with finalAttrs; "https://github.com/libffi/libffi/releases/download/v${version}/${pname}-${version}.tar.gz"; - hash = "sha256-86MIKiOzfCk6T80QUxR7Nx8v+R+n6hsqUuM1Z2usgtw="; + hash = "sha256-Mf8f4y3q6/uziHJ/Mmd7slS/KkE4LFFGTAsYN8numCg="; }; # Note: this package is used for bootstrapping fetchurl, and thus From 813c10f1d6363f5a7f67c504719d5f0999063a1c Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 21 Jun 2026 08:52:14 +0100 Subject: [PATCH 029/284] xkeyboard-config: 2.47 -> 2.48 Changes: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/blob/xkeyboard-config-2.48/ChangeLog.md --- pkgs/by-name/xk/xkeyboard-config/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/xk/xkeyboard-config/package.nix b/pkgs/by-name/xk/xkeyboard-config/package.nix index b51a1eba07f2..685de9619f8c 100644 --- a/pkgs/by-name/xk/xkeyboard-config/package.nix +++ b/pkgs/by-name/xk/xkeyboard-config/package.nix @@ -13,11 +13,11 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "xkeyboard-config"; - version = "2.47"; + version = "2.48"; src = fetchurl { url = "mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-${finalAttrs.version}.tar.xz"; - hash = "sha256-5ZmEQWpy1YtGpSv+wbE2GqfYQ1RigifuJ4NibHpttrY="; + hash = "sha256-t3BBMk8BCfdxYe5DdD/gS6pIWGavhGDTHkdq0/dkj9U="; }; strictDeps = true; From 5fa3ac888c021700145f7f7dec8cfcf2dc9c2029 Mon Sep 17 00:00:00 2001 From: Sergey Date: Tue, 23 Jun 2026 16:24:52 +0000 Subject: [PATCH 030/284] duckdb: 1.5.3 -> 1.5.4 --- pkgs/by-name/du/duckdb/versions.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/du/duckdb/versions.json b/pkgs/by-name/du/duckdb/versions.json index aa83cd89b603..0f1ac213431c 100644 --- a/pkgs/by-name/du/duckdb/versions.json +++ b/pkgs/by-name/du/duckdb/versions.json @@ -1,6 +1,6 @@ { - "version": "1.5.3", - "rev": "14eca11bd9d4a0de2ea0f078be588a9c1c5b279c", - "hash": "sha256-k7mtYXHS8IcBAuOCJ/09lPYLxF3RMODIeDaz3tKmQAA=", - "python_hash": "sha256-r0jfYIyBHN5z4QKKxS/yjnkGjUy/yg9Kt/O6adBbH7Q=" + "version": "1.5.4", + "rev": "08e34c447bae34eaee3723cac61f2878b6bdf787", + "hash": "sha256-6xpKZKfH5/nwE2nU5kcpgITKFm3ilb1PYf9QEk+bKoM=", + "python_hash": "sha256-2TgMuaeAehJ5rvpfA57KTmHtTZnvfa/nl/Y9ASCwVs0=" } From 2c9c1c82efe822bf5b15512bb1cb1b0b3a9fd8e1 Mon Sep 17 00:00:00 2001 From: Ruud van Asseldonk Date: Thu, 25 Jun 2026 21:19:36 +0200 Subject: [PATCH 031/284] libressl: fix static build I broke the static build when I introduced the check that guards against executable stack. It iterates the .so files in the build output, but for a static build, there are none, so the glob fails. Fix this by skipping the check for static builds. --- pkgs/by-name/li/libressl/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/li/libressl/default.nix b/pkgs/by-name/li/libressl/default.nix index 4bf139efc381..7d00a05424d7 100644 --- a/pkgs/by-name/li/libressl/default.nix +++ b/pkgs/by-name/li/libressl/default.nix @@ -64,7 +64,7 @@ let export PREVIOUS_${ldLibPathEnvName}=$${ldLibPathEnvName} export ${ldLibPathEnvName}="$${ldLibPathEnvName}:$(realpath tls/):$(realpath ssl/):$(realpath crypto/)" '' - + lib.optionalString stdenv.hostPlatform.isElf '' + + lib.optionalString (stdenv.hostPlatform.isElf && buildShared) '' # Bail if any shared object has executable stack enabled. This can # happen when an object produced from an assmbly file in libcrypto is # missing a .note.GNU-stack section. An executable stack is dangerous From f9e1063171bf862c4d17997769cc0795223f6730 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Fri, 26 Jun 2026 23:05:27 +0200 Subject: [PATCH 032/284] merve: add support for building without simdutf support Required for Node.js 24. --- pkgs/by-name/me/merve/package.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/me/merve/package.nix b/pkgs/by-name/me/merve/package.nix index e8a210d551e6..066ac8fd351d 100644 --- a/pkgs/by-name/me/merve/package.nix +++ b/pkgs/by-name/me/merve/package.nix @@ -26,16 +26,14 @@ stdenv.mkDerivation (finalAttrs: { cmakeFlags = [ (lib.cmakeBool "BUILD_SHARED_LIBS" (!static)) (lib.cmakeBool "MERVE_TESTING" finalAttrs.finalPackage.doCheck) - (lib.cmakeBool "MERVE_USE_SIMDUTF" true) - ]; + ] + ++ lib.optional (simdutf != null) (lib.cmakeBool "MERVE_USE_SIMDUTF" true); nativeBuildInputs = [ cmake validatePkgConfig ]; - buildInputs = [ - simdutf - ]; + buildInputs = lib.optional (simdutf != null) simdutf; checkInputs = [ gtest ]; From cba47cf5e84bdc7a2c5d1ef9507fe42bb4948610 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Fri, 26 Jun 2026 23:06:02 +0200 Subject: [PATCH 033/284] nodejs_24: fix merve dependency --- pkgs/development/web/nodejs/nodejs.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index 537ea51b87cf..10e5d65bf58f 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -144,7 +144,7 @@ let ); useSharedNBytes = lib.versionAtLeast version (if majorVersion == "24" then "24.14.0" else "25.5"); useSharedLief = lib.versionAtLeast version "25.6"; - useSharedMerve = lib.versionAtLeast version (if majorVersion == 24 then "24.14.0" else "25.6.1"); + useSharedMerve = lib.versionAtLeast version (if majorVersion == "24" then "24.14.0" else "25.6.1"); useSharedSQLite = lib.versionAtLeast version "22.5"; useSharedTemporal = majorVersion == "26"; useSharedZstd = lib.versionAtLeast version "22.15"; @@ -190,7 +190,8 @@ let inherit nbytes; }) // (lib.optionalAttrs useSharedMerve { - inherit merve; + # Merve cannot be built with simdutf_6, and upstream also disables simdutf support on the 24.x branch + merve = if majorVersion == "24" then (merve.override { simdutf = null; }) else merve; }) // (lib.optionalAttrs useSharedZstd { inherit zstd; From fd5878533a8db6bd401be1863a39c813f3d0b366 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 15:34:23 -0700 Subject: [PATCH 034/284] python3Packages.strct: support setuptools 82 --- pkgs/development/python-modules/strct/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/development/python-modules/strct/default.nix b/pkgs/development/python-modules/strct/default.nix index ff38db934034..cbc80a0261bd 100644 --- a/pkgs/development/python-modules/strct/default.nix +++ b/pkgs/development/python-modules/strct/default.nix @@ -1,6 +1,7 @@ { lib, fetchFromGitHub, + fetchpatch, buildPythonPackage, setuptools, pytestCheckHook, @@ -20,6 +21,15 @@ buildPythonPackage rec { hash = "sha256-4IykGzy1PTrRAbx/sdtzL4My4cDSlplL9rOFBcLbaB8="; }; + patches = [ + (fetchpatch { + name = "support-setuptools-82.patch"; + url = "https://github.com/shaypal5/strct/commit/5005a939b590cd992d985128a2c1dba230a7fe41.patch"; + includes = [ "setup.py" ]; + hash = "sha256-0vRRst79G6JZZ+IzBR7rr85nOo0qY0ikVBz4Lvauwbc="; + }) + ]; + # don't append .dev0 to version env.RELEASING_PROCESS = "1"; From b545bebf4294e5bf9b92b0419aa274b4a1ee71f4 Mon Sep 17 00:00:00 2001 From: kataokatsuki Date: Sat, 27 Jun 2026 20:05:21 +0900 Subject: [PATCH 035/284] nodejs: call configure.py directly nodejs.nix currently creates configureScript with writeScript. This produces an executable text file without a shebang, which configurePhase then runs as $configureScript. The wrapper only invokes configure.py through Python, so call configure.py through python.interpreter directly instead. This avoids the shebang-less wrapper path and stops relying on python.executable being resolved through PATH. --- pkgs/development/web/nodejs/nodejs.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index 343be8e14791..6ce440b867bd 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -347,9 +347,7 @@ let dontDisableStatic = true; - configureScript = writeScript "nodejs-configure" '' - exec ${python.executable} configure.py "$@" - ''; + configureScript = "${python.interpreter} configure.py"; # In order to support unsupported cross configurations, we copy some intermediate executables # from a native build and replace all the build-system tools with a script which simply touches From 504f6c930735259be2440a797e4318352840f6a4 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Sat, 27 Jun 2026 15:39:06 +0200 Subject: [PATCH 036/284] nodejs_24: fix fs tracking warnings on Darwin --- pkgs/development/web/nodejs/nodejs.nix | 6 ------ pkgs/development/web/nodejs/v24.nix | 1 + 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index 10e5d65bf58f..bb3f44dff31d 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -519,12 +519,6 @@ let "test-tick-processor-arguments" "test-set-raw-mode-reset-signal" ] - # Apple SDK update broke something related to those tests, so skipping them for now - ++ lib.optionals (majorVersion == "24" && stdenv.hostPlatform.isDarwin) [ - "test-worker-track-unmanaged-fds" - "test-esm-import-meta-main-eval" - "test-worker-debug" - ] # These network/fetch/inspector tests fail on riscv64 ++ lib.optionals (majorVersion == "24" && stdenv.hostPlatform.isRiscV64) [ "test-fetch" diff --git a/pkgs/development/web/nodejs/v24.nix b/pkgs/development/web/nodejs/v24.nix index 359e20891269..ca6a16ddf1ba 100644 --- a/pkgs/development/web/nodejs/v24.nix +++ b/pkgs/development/web/nodejs/v24.nix @@ -12,6 +12,7 @@ let buildNodejs = callPackage ./nodejs.nix { inherit openssl; python = python3; + stdenv = buildPackages.llvmPackages_20.libcxxStdenv; }; gypPatches = From 09614c7c7db1f2fc7ce9c6f7b2a067160e43bd7f Mon Sep 17 00:00:00 2001 From: Hythera <87016780+Hythera@users.noreply.github.com> Date: Tue, 9 Jun 2026 15:11:31 +0200 Subject: [PATCH 037/284] cmake: 4.1.2 -> 4.3.4 changelog: https://cmake.org/cmake/help/v4.3/release/4.3.html diff: https://github.com/Kitware/CMake/compare/v4.1.2...v4.3.4 --- .../cm/cmake/darwin-binary-paths.patch | 13 -- .../cm/cmake/darwin-bsd-binary-paths.patch | 8 +- pkgs/by-name/cm/cmake/package.nix | 4 +- .../cm/cmake/remove-impure-search-paths.patch | 130 +++++++++++------- 4 files changed, 84 insertions(+), 71 deletions(-) diff --git a/pkgs/by-name/cm/cmake/darwin-binary-paths.patch b/pkgs/by-name/cm/cmake/darwin-binary-paths.patch index b4e84bef22e6..af9d5af2cfe1 100644 --- a/pkgs/by-name/cm/cmake/darwin-binary-paths.patch +++ b/pkgs/by-name/cm/cmake/darwin-binary-paths.patch @@ -46,16 +46,3 @@ index 15a1e2c0c3..33bb304cf7 100644 OUTPUT_VARIABLE OSX_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) -diff --git a/Utilities/cmcurl/CMakeLists.txt b/Utilities/cmcurl/CMakeLists.txt -index ddc975c202..8ff651fd90 100644 ---- a/Utilities/cmcurl/CMakeLists.txt -+++ b/Utilities/cmcurl/CMakeLists.txt -@@ -127,7 +127,7 @@ - set(OSX_VERSION ${CMAKE_OSX_DEPLOYMENT_TARGET}) - else() - execute_process( -- COMMAND sw_vers -productVersion -+ COMMAND @sw_vers@ -productVersion - OUTPUT_VARIABLE OSX_VERSION - OUTPUT_STRIP_TRAILING_WHITESPACE - ) diff --git a/pkgs/by-name/cm/cmake/darwin-bsd-binary-paths.patch b/pkgs/by-name/cm/cmake/darwin-bsd-binary-paths.patch index b7917467f2f0..8fe699ac2953 100644 --- a/pkgs/by-name/cm/cmake/darwin-bsd-binary-paths.patch +++ b/pkgs/by-name/cm/cmake/darwin-bsd-binary-paths.patch @@ -39,13 +39,13 @@ index 260b6631c0..ffb8fcd8d2 100644 if(ProcessorCount_cmd_sysctl) execute_process(COMMAND ${ProcessorCount_cmd_sysctl} -n hw.ncpu diff --git a/Source/kwsys/ProcessUNIX.c b/Source/kwsys/ProcessUNIX.c -index a918b8d9a7..36145707e1 100644 +index 8c22b4e43a..6d9ccef5e7 100644 --- a/Source/kwsys/ProcessUNIX.c +++ b/Source/kwsys/ProcessUNIX.c -@@ -2503,7 +2503,7 @@ - have two integers to store: the pid and then the ppid. */ +@@ -2503,7 +2503,7 @@ static pid_t kwsysProcessFork(kwsysProcess* cp, #if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ - defined(__OpenBSD__) || defined(__GLIBC__) || defined(__GNU__) + defined(__NetBSD__) || defined(__OpenBSD__) || defined(__GLIBC__) || \ + defined(__GNU__) -# define KWSYSPE_PS_COMMAND "ps axo pid,ppid" +# define KWSYSPE_PS_COMMAND "@ps@ axo pid,ppid" # define KWSYSPE_PS_FORMAT "%d %d\n" diff --git a/pkgs/by-name/cm/cmake/package.nix b/pkgs/by-name/cm/cmake/package.nix index dc16992a27aa..134896e1fee7 100644 --- a/pkgs/by-name/cm/cmake/package.nix +++ b/pkgs/by-name/cm/cmake/package.nix @@ -50,11 +50,11 @@ stdenv.mkDerivation (finalAttrs: { + lib.optionalString isMinimalBuild "-minimal" + lib.optionalString cursesUI "-cursesUI" + lib.optionalString qt5UI "-qt5UI"; - version = "4.1.2"; + version = "4.3.4"; src = fetchurl { url = "https://cmake.org/files/v${lib.versions.majorMinor finalAttrs.version}/cmake-${finalAttrs.version}.tar.gz"; - hash = "sha256-ZD8EGCt7oyOrMfUm94UTT7ecujGIqFIgbvBHP+4oKhU="; + hash = "sha256-/e/4l7nrSddkU58rHtxut+FEDfMlZ4qXwZeEmekxrdo="; }; patches = [ diff --git a/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch b/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch index cb01326b9c35..87c58b4ecb42 100644 --- a/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch +++ b/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch @@ -157,10 +157,10 @@ index 2a2f478fd7..f22281bdca 100644 list(REMOVE_DUPLICATES _CPACK_IFW_PATHS) diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake -index b45a279b94..884ccc0e32 100644 +index 9f986a78e7..5a6a9758ea 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake -@@ -1098,16 +1098,8 @@ +@@ -1112,16 +1112,10 @@ if(BLA_VENDOR MATCHES "ACML" OR BLA_VENDOR STREQUAL "All") ((BLA_VENDOR STREQUAL "ACML_GPU") AND (NOT BLAS_ACML_GPU_LIB_DIRS)) ) # try to find acml in "standard" paths @@ -176,9 +176,11 @@ index b45a279b94..884ccc0e32 100644 - endif() + set(_ACML_ROOT) + set(_ACML_GPU_ROOT) - list(GET _ACML_ROOT 0 _ACML_ROOT) - list(GET _ACML_GPU_ROOT 0 _ACML_GPU_ROOT) ++ list(GET _ACML_ROOT 0 _ACML_ROOT) ++ list(GET _ACML_GPU_ROOT 0 _ACML_GPU_ROOT) if(_ACML_ROOT) + list(GET _ACML_ROOT 0 _ACML_ROOT) + list(GET _ACML_GPU_ROOT 0 _ACML_GPU_ROOT) diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake index bceb615ca0..2350b15655 100644 --- a/Modules/FindCUDA.cmake @@ -229,26 +231,13 @@ index bceb615ca0..2350b15655 100644 # Example of how to find an include file from the CUDA_SDK_ROOT_DIR diff --git a/Modules/FindCUDAToolkit.cmake b/Modules/FindCUDAToolkit.cmake -index b00cd26b7e..f5f74ebe1d 100644 +index df36f9a19b..825d1e7386 100644 --- a/Modules/FindCUDAToolkit.cmake +++ b/Modules/FindCUDAToolkit.cmake -@@ -776,12 +776,6 @@ - elseif(CUDAToolkit_ROOT_DIR AND EXISTS "${CUDAToolkit_ROOT_DIR}/${vf}") - set(${result_variable} "${CUDAToolkit_ROOT_DIR}/${vf}" PARENT_SCOPE) - break() -- elseif(CMAKE_SYSROOT_LINK AND EXISTS "${CMAKE_SYSROOT_LINK}/usr/lib/cuda/${vf}") -- set(${result_variable} "${CMAKE_SYSROOT_LINK}/usr/lib/cuda/${vf}" PARENT_SCOPE) -- break() -- elseif(EXISTS "${CMAKE_SYSROOT}/usr/lib/cuda/${vf}") -- set(${result_variable} "${CMAKE_SYSROOT}/usr/lib/cuda/${vf}" PARENT_SCOPE) -- break() - endif() - endforeach() - endfunction() -@@ -864,18 +858,8 @@ - # if CUDAToolkit_ROOT is not specified, it is assumed that the symlinked - # directory is the desired location. - if(NOT CUDAToolkit_ROOT_DIR) +@@ -830,18 +830,9 @@ else() + # We will also search the default symlink location /usr/local/cuda first since + # if CUDAToolkit_ROOT is not specified, it is assumed that the symlinked + # directory is the desired location. - if(UNIX) - if(NOT APPLE) - set(platform_base "/usr/local/cuda-") @@ -258,14 +247,14 @@ index b00cd26b7e..f5f74ebe1d 100644 - else() - set(platform_base "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v") - endif() -- + # Build out a descending list of possible cuda installations, e.g. - file(GLOB possible_paths "${platform_base}*") + set(possible_paths) # Iterate the glob results and create a descending list. set(versions) foreach(p ${possible_paths}) -@@ -891,14 +875,6 @@ +@@ -857,14 +848,6 @@ else() # With a descending list of versions, populate possible paths to search. set(search_paths) @@ -280,6 +269,19 @@ index b00cd26b7e..f5f74ebe1d 100644 # Now search for the toolkit again using the platform default search paths. _CUDAToolkit_find_root_dir(SEARCH_PATHS "${search_paths}" FIND_FLAGS PATH_SUFFIXES bin) +@@ -889,12 +872,6 @@ else() + elseif(CUDAToolkit_ROOT_DIR AND EXISTS "${CUDAToolkit_ROOT_DIR}/${vf}") + set(${result_variable} "${CUDAToolkit_ROOT_DIR}/${vf}" PARENT_SCOPE) + break() +- elseif(CMAKE_SYSROOT_LINK AND EXISTS "${CMAKE_SYSROOT_LINK}/usr/lib/cuda/${vf}") +- set(${result_variable} "${CMAKE_SYSROOT_LINK}/usr/lib/cuda/${vf}" PARENT_SCOPE) +- break() +- elseif(EXISTS "${CMAKE_SYSROOT}/usr/lib/cuda/${vf}") +- set(${result_variable} "${CMAKE_SYSROOT}/usr/lib/cuda/${vf}" PARENT_SCOPE) +- break() + endif() + endforeach() + endfunction() diff --git a/Modules/FindCoin3D.cmake b/Modules/FindCoin3D.cmake index 1d89c604e0..5b70e71a87 100644 --- a/Modules/FindCoin3D.cmake @@ -579,10 +581,10 @@ index 82156747d3..cc3f2a64af 100644 "Ice-${Ice_VERSION_SLICE2CPP_FULL}/slice" "Ice-${Ice_VERSION_SLICE2CPP_SHORT}/slice" diff --git a/Modules/FindJNI.cmake b/Modules/FindJNI.cmake -index 10dcc51776..e272bd9583 100644 +index a70b00f330..1962b55d4a 100644 --- a/Modules/FindJNI.cmake +++ b/Modules/FindJNI.cmake -@@ -363,51 +363,6 @@ +@@ -367,57 +367,6 @@ if (WIN32) endif() set(_JNI_JAVA_DIRECTORIES_BASE @@ -604,6 +606,11 @@ index 10dcc51776..e272bd9583 100644 - # Arch Linux specific paths for default JVM - /usr/lib/jvm/default - # Ubuntu specific paths for default JVM +- /usr/lib/jvm/java-26-openjdk-{libarch} +- /usr/lib/jvm/java-25-openjdk-{libarch} # Ubuntu 24.04 LTS +- /usr/lib/jvm/java-24-openjdk-{libarch} +- /usr/lib/jvm/java-23-openjdk-{libarch} +- /usr/lib/jvm/java-22-openjdk-{libarch} - /usr/lib/jvm/java-21-openjdk-{libarch} # Ubuntu 23.04 - /usr/lib/jvm/java-20-openjdk-{libarch} # Ubuntu 22.10 - /usr/lib/jvm/java-19-openjdk-{libarch} # Ubuntu 22.04 LTS @@ -631,9 +638,10 @@ index 10dcc51776..e272bd9583 100644 - # SuSE specific paths for default JVM - /usr/lib64/jvm/java - /usr/lib64/jvm/jre - ) +- ) set(_JNI_JAVA_AWT_LIBRARY_TRIES) + set(_JNI_JAVA_INCLUDE_TRIES) diff --git a/Modules/FindJava.cmake b/Modules/FindJava.cmake index 1587ce648b..e92213cba7 100644 --- a/Modules/FindJava.cmake @@ -1093,28 +1101,28 @@ index edef791cb8..5515f44710 100644 find_path(PHP4_FOUND_INCLUDE_PATH main/php.h diff --git a/Modules/FindPerlLibs.cmake b/Modules/FindPerlLibs.cmake -index 330700e183..7fc89df6eb 100644 +index fbe1aade72..34562e7807 100644 --- a/Modules/FindPerlLibs.cmake +++ b/Modules/FindPerlLibs.cmake -@@ -141,10 +141,6 @@ +@@ -176,10 +176,6 @@ if (PERL_EXECUTABLE) PATHS "${PERL_UPDATE_ARCHLIB}/CORE" "${PERL_ARCHLIB}/CORE" -- /usr/lib/perl5/${PERL_VERSION_STRING}/${PERL_ARCHNAME}/CORE -- /usr/lib/perl/${PERL_VERSION_STRING}/${PERL_ARCHNAME}/CORE -- /usr/lib/perl5/${PERL_VERSION_STRING}/CORE -- /usr/lib/perl/${PERL_VERSION_STRING}/CORE +- /usr/lib/perl5/${PerlLibs_VERSION}/${PERL_ARCHNAME}/CORE +- /usr/lib/perl/${PerlLibs_VERSION}/${PERL_ARCHNAME}/CORE +- /usr/lib/perl5/${PerlLibs_VERSION}/CORE +- /usr/lib/perl/${PerlLibs_VERSION}/CORE ) ### PERL_LIBRARY -@@ -154,10 +150,6 @@ +@@ -189,10 +185,6 @@ if (PERL_EXECUTABLE) PATHS "${PERL_UPDATE_ARCHLIB}/CORE" "${PERL_ARCHLIB}/CORE" -- /usr/lib/perl5/${PERL_VERSION_STRING}/${PERL_ARCHNAME}/CORE -- /usr/lib/perl/${PERL_VERSION_STRING}/${PERL_ARCHNAME}/CORE -- /usr/lib/perl5/${PERL_VERSION_STRING}/CORE -- /usr/lib/perl/${PERL_VERSION_STRING}/CORE +- /usr/lib/perl5/${PerlLibs_VERSION}/${PERL_ARCHNAME}/CORE +- /usr/lib/perl/${PerlLibs_VERSION}/${PERL_ARCHNAME}/CORE +- /usr/lib/perl5/${PerlLibs_VERSION}/CORE +- /usr/lib/perl/${PerlLibs_VERSION}/CORE ) endif () @@ -1343,17 +1351,21 @@ index 2c62a5f17f..772a8d88f6 100644 PATH_SUFFIXES bin lib/qt lib/qt3 qt qt3 qt/bin qt3/bin lib/qt/bin lib/qt3/bin diff --git a/Modules/FindRuby.cmake b/Modules/FindRuby.cmake -index 18b9e35855..dba9976565 100644 +index 863f70a7f2..17e3ac606a 100644 --- a/Modules/FindRuby.cmake +++ b/Modules/FindRuby.cmake -@@ -367,7 +367,6 @@ - HINTS - ${Ruby_HDR_DIR} - ${Ruby_ARCH_DIR} -- /usr/lib/ruby/${_Ruby_VERSION_SHORT}/i586-linux-gnu/ - ) +@@ -366,11 +366,6 @@ if (NOT Ruby_EXECUTABLE AND Ruby_FIND_VIRTUALENV MATCHES "^(FIRST|ONLY)$") + endif () + endif () - set(Ruby_INCLUDE_DIRS ${Ruby_INCLUDE_DIR}) +-# Check for Homebrew Ruby (non-virtualenv, common on MacOS) +-if (NOT Ruby_EXECUTABLE AND NOT Ruby_FIND_VIRTUALENV STREQUAL "ONLY") +- _RUBY_CHECK_BREW() +-endif () +- + # Fallback to system installed Ruby + if (NOT Ruby_EXECUTABLE AND NOT Ruby_FIND_VIRTUALENV STREQUAL "ONLY") + _RUBY_CHECK_SYSTEM() diff --git a/Modules/FindSDL.cmake b/Modules/FindSDL.cmake index a720dcc3df..73e222a27c 100644 --- a/Modules/FindSDL.cmake @@ -1644,6 +1656,20 @@ index 7c4f123a1d..4cfd53de9f 100644 if(NOT CMAKE_CROSSCOMPILING) execute_process(COMMAND @sw_vers@ -productVersion +@@ -277,13 +277,6 @@ if(NOT CMAKE_OSX_SYSROOT) + RESULT_VARIABLE _result + ) + unset(_sdk_macosx) +- +- list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES_EXCLUDE +- # Without -isysroot, some compiler drivers implicitly pass -L/usr/local/lib +- # to the linker. Since the macOS dynamic loader does not search it by +- # default, it is not a fully-implemented implicit link directory. +- /usr/local/lib +- ) + endif() + + #---------------------------------------------------------------------------- diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake index 42c6b35424..f2985f3765 100644 --- a/Modules/Platform/Darwin.cmake @@ -1905,10 +1931,10 @@ index b977d955ca..5ff835298d 100644 set(_jar_doc "NOTSET") diff --git a/Utilities/cmcurl/CMakeLists.txt b/Utilities/cmcurl/CMakeLists.txt -index 8ff651fd90..9659deedf5 100644 +index 2c6a6e6a19..3a43da619a 100644 --- a/Utilities/cmcurl/CMakeLists.txt +++ b/Utilities/cmcurl/CMakeLists.txt -@@ -1826,43 +1826,6 @@ +@@ -1566,43 +1566,6 @@ if(_curl_ca_bundle_supported) endif() mark_as_advanced(CURL_CA_PATH_SET) @@ -1929,8 +1955,8 @@ index 8ff651fd90..9659deedf5 100644 - if(EXISTS "${_search_ca_bundle_path}") - message(STATUS "Found CA bundle: ${_search_ca_bundle_path}") - set(CURL_CA_BUNDLE "${_search_ca_bundle_path}" CACHE -- STRING "Path to the CA bundle. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") -- set(CURL_CA_BUNDLE_SET TRUE CACHE BOOL "Path to the CA bundle has been set") +- STRING "Absolute path to the CA bundle. ${_ca_opt_desc}") +- set(CURL_CA_BUNDLE_SET TRUE CACHE BOOL "Absolute path to the CA bundle has been set") - break() - endif() - endforeach() @@ -1943,8 +1969,8 @@ index 8ff651fd90..9659deedf5 100644 - unset(_curl_ca_files_found) - message(STATUS "Found CA path: ${_search_ca_path}") - set(CURL_CA_PATH "${_search_ca_path}" CACHE -- STRING "Location of default CA path. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") -- set(CURL_CA_PATH_SET TRUE CACHE BOOL "Path to the CA bundle has been set") +- STRING "Absolute path to a directory containing CA certificates stored individually. ${_ca_opt_desc}") +- set(CURL_CA_PATH_SET TRUE CACHE BOOL "Absolute path to the CA bundle has been set") - endif() - endif() - endif() From 703a55ddf48d1ebb4ace62665dfec573e7cbe933 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Thu, 4 Jun 2026 22:12:16 +0100 Subject: [PATCH 038/284] sqlite, sqlite-analyzer: 3.53.1 -> 3.53.3 Changes: - https://sqlite.org/releaselog/3_53_2.html - https://sqlite.org/releaselog/3_53_3.html --- pkgs/development/libraries/sqlite/default.nix | 6 +++--- pkgs/development/libraries/sqlite/tools.nix | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix index bc27578cda3d..2672613e357e 100644 --- a/pkgs/development/libraries/sqlite/default.nix +++ b/pkgs/development/libraries/sqlite/default.nix @@ -28,17 +28,17 @@ in stdenv.mkDerivation rec { pname = "sqlite${lib.optionalString interactive "-interactive"}"; - version = "3.53.1"; + version = "3.53.3"; # nixpkgs-update: no auto update # NB! Make sure to update ./tools.nix src (in the same directory). src = fetchurl { url = "https://sqlite.org/2026/sqlite-src-${archiveVersion version}.zip"; - hash = "sha256-GytXVdkGTE1dGwv1MHtIsImWPikcQMxzUTGKobYcRg4="; + hash = "sha256-u4C/ijv/wZJBzoq6WkvHTpw5gAE8sLXw8JdqmVFpQq8="; }; docsrc = fetchurl { url = "https://sqlite.org/2026/sqlite-doc-${archiveVersion version}.zip"; - hash = "sha256-n9Bgv33YwseOdBHQb7gdyKqgWeth7sgMZeBlioVFtDM="; + hash = "sha256-Fo+Zhph2vPTbjZPvoqSDqcgVNlN9AZAMWM110KZ8yic="; }; outputs = [ diff --git a/pkgs/development/libraries/sqlite/tools.nix b/pkgs/development/libraries/sqlite/tools.nix index 9755b3733273..dfbcad20cad9 100644 --- a/pkgs/development/libraries/sqlite/tools.nix +++ b/pkgs/development/libraries/sqlite/tools.nix @@ -19,14 +19,14 @@ let }: stdenv.mkDerivation rec { inherit pname; - version = "3.53.1"; + version = "3.53.3"; # nixpkgs-update: no auto update src = assert version == sqlite.version; fetchurl { url = "https://sqlite.org/2026/sqlite-src-${archiveVersion version}.zip"; - hash = "sha256-GytXVdkGTE1dGwv1MHtIsImWPikcQMxzUTGKobYcRg4="; + hash = "sha256-u4C/ijv/wZJBzoq6WkvHTpw5gAE8sLXw8JdqmVFpQq8="; }; nativeBuildInputs = [ unzip ]; From cb7ec1e71814d63516992dff2790388d786d721d Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 27 Jun 2026 23:06:36 +0100 Subject: [PATCH 039/284] cargo-auditable: clean up rebuild avoidance --- pkgs/by-name/ca/cargo-auditable/builder.nix | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/pkgs/by-name/ca/cargo-auditable/builder.nix b/pkgs/by-name/ca/cargo-auditable/builder.nix index a865d352943b..1f3034e511c6 100644 --- a/pkgs/by-name/ca/cargo-auditable/builder.nix +++ b/pkgs/by-name/ca/cargo-auditable/builder.nix @@ -42,20 +42,9 @@ lib.extendMkDerivation { # https://github.com/rust-secure-code/cargo-auditable/issues/235 "--skip=test_proc_macro" "--skip=test_self_hosting" - ] - # TODO: Clean up on `staging`. - ++ - lib.optionals - ( - stdenv.hostPlatform.isMusl - || stdenv.hostPlatform.isAarch32 - || stdenv.hostPlatform.isDarwin - || stdenv.hostPlatform.isMsvc - ) - [ - # Expects `linker = "rust-lld"` to work. - "--skip=test_bare_linker" - ]; + # Expects `linker = "rust-lld"` to work. + "--skip=test_bare_linker" + ]; postInstall = '' installManPage cargo-auditable/cargo-auditable.1 From 9714f07c1f6e4c7611533c6715eb899c63e08656 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sun, 28 Jun 2026 04:33:30 +0200 Subject: [PATCH 040/284] nodejs: require big-parallel system feature This helps schedule it onto a bigger build slot on hydra. --- pkgs/development/web/nodejs/nodejs.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index 5fd5eeac6919..1c099fb75fc8 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -683,6 +683,9 @@ let done ''; + # reduces build time from ~90 to ~15 minutes on hydra + requiredSystemFeatures = [ "big-parallel" ]; + passthru.tests = { version = testers.testVersion { package = self; From 91916cd91572d0553382b1b5a290b1a57d6db4a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 21:24:38 -0700 Subject: [PATCH 041/284] alsa-lib: 1.2.16 -> 1.2.16.1 Changelog: https://github.com/alsa-project/alsa-lib/releases/tag/v1.2.16.1 --- pkgs/by-name/al/alsa-lib/package.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/al/alsa-lib/package.nix b/pkgs/by-name/al/alsa-lib/package.nix index 4c02e2a8d7eb..398edd5f40fe 100644 --- a/pkgs/by-name/al/alsa-lib/package.nix +++ b/pkgs/by-name/al/alsa-lib/package.nix @@ -10,11 +10,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "alsa-lib"; - version = "1.2.16"; + version = "1.2.16.1"; src = fetchurl { url = "mirror://alsa/lib/alsa-lib-${finalAttrs.version}.tar.bz2"; - hash = "sha256-EiseMWbVX+GbzeZWU116NvKrEOZscsatL0PyD/3tCpY="; + hash = "sha256-90Dbf0iCVZRP/UQoQW7jOQqWdChWkWQz30aMKBQ2SA4="; }; patches = [ @@ -46,6 +46,7 @@ stdenv.mkDerivation (finalAttrs: { meta = { homepage = "http://www.alsa-project.org/"; + changelog = "https://github.com/alsa-project/alsa-lib/releases/tag/v${finalAttrs.version}"; description = "ALSA, the Advanced Linux Sound Architecture libraries"; mainProgram = "aserver"; From 15d080f2505130339cb088f1a350b2fd4439db8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 21:25:17 -0700 Subject: [PATCH 042/284] alsa-ucm-conf: 1.2.16 -> 1.2.16.1 Changelog: https://github.com/alsa-project/alsa-ucm-conf/releases/tag/v1.2.16.1 --- pkgs/by-name/al/alsa-ucm-conf/package.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/al/alsa-ucm-conf/package.nix b/pkgs/by-name/al/alsa-ucm-conf/package.nix index eace84e7b18f..261b09ad78a6 100644 --- a/pkgs/by-name/al/alsa-ucm-conf/package.nix +++ b/pkgs/by-name/al/alsa-ucm-conf/package.nix @@ -9,11 +9,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "alsa-ucm-conf"; - version = "1.2.16"; + version = "1.2.16.1"; src = fetchurl { url = "mirror://alsa/lib/alsa-ucm-conf-${finalAttrs.version}.tar.bz2"; - hash = "sha256-rLyXLW5x7fo0Xnav3xDDmf0PHzz5DYSv20z1G/xKZUg="; + hash = "sha256-zz0cB+CJqDxOziwg8F3WqKq3/NEIdow4gROGiAV1SSs="; }; patches = [ @@ -47,6 +47,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { meta = { homepage = "https://www.alsa-project.org/"; + changelog = "https://github.com/alsa-project/alsa-ucm-conf/releases/tag/v${finalAttrs.version}"; description = "ALSA Use Case Manager configuration"; longDescription = '' From 2a90ef803ff71a935d1e1c7d2f4d57fe53c493c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 21:26:25 -0700 Subject: [PATCH 043/284] alsa-utils: add meta.changelog --- pkgs/by-name/al/alsa-utils/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/al/alsa-utils/package.nix b/pkgs/by-name/al/alsa-utils/package.nix index 4476b715cdcf..91653a4848b6 100644 --- a/pkgs/by-name/al/alsa-utils/package.nix +++ b/pkgs/by-name/al/alsa-utils/package.nix @@ -85,6 +85,7 @@ stdenv.mkDerivation (finalAttrs: { meta = { homepage = "http://www.alsa-project.org/"; + changelog = "https://github.com/alsa-project/alsa-utils/releases/tag/v${finalAttrs.version}"; description = "ALSA, the Advanced Linux Sound Architecture utils"; longDescription = '' The Advanced Linux Sound Architecture (ALSA) provides audio and From ba13cc996e3c61073ea06af735938589fade71c5 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 28 Jun 2026 12:13:22 +0100 Subject: [PATCH 044/284] gssdp_1_6: 1.6.5 -> 1.6.6 Changes: https://gitlab.gnome.org/GNOME/gssdp/-/blob/gssdp-1.6.6/NEWS?ref_type=tags --- pkgs/by-name/gs/gssdp_1_6/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gs/gssdp_1_6/package.nix b/pkgs/by-name/gs/gssdp_1_6/package.nix index a25d7c8f1547..47c18a41e48b 100644 --- a/pkgs/by-name/gs/gssdp_1_6/package.nix +++ b/pkgs/by-name/gs/gssdp_1_6/package.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "gssdp"; - version = "1.6.5"; + version = "1.6.6"; outputs = [ "out" @@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/gssdp/${lib.versions.majorMinor finalAttrs.version}/gssdp-${finalAttrs.version}.tar.xz"; - hash = "sha256-NP2CTDbvn1dVlNVXJyhBLduMUi9ga2yRPvi1qACq/E4="; + hash = "sha256-dn0idSVM4O/q6sZEGf+fTwrUcNE072cvXFVrKrt4a8s="; }; depsBuildBuild = [ From 22eda77d98d8ce851be280be2310a53405e136f2 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Sun, 28 Jun 2026 17:17:41 +0200 Subject: [PATCH 045/284] nodejs_24: limit pinning of LLVM to darwin --- pkgs/development/web/nodejs/v24.nix | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/web/nodejs/v24.nix b/pkgs/development/web/nodejs/v24.nix index ca6a16ddf1ba..823cd488c5b8 100644 --- a/pkgs/development/web/nodejs/v24.nix +++ b/pkgs/development/web/nodejs/v24.nix @@ -9,11 +9,15 @@ }: let - buildNodejs = callPackage ./nodejs.nix { - inherit openssl; - python = python3; - stdenv = buildPackages.llvmPackages_20.libcxxStdenv; - }; + buildNodejs = + callPackage ./nodejs.nix { + inherit openssl; + python = python3; + } + // lib.optionalAttrs stdenv.hostPlatform.isDarwin { + # libcxx21 makes FD tracking unreliable on Darwin. Pinning to libcxx20: + stdenv = buildPackages.llvmPackages_20.libcxxStdenv; + }; gypPatches = if stdenv.buildPlatform.isDarwin then From 38c44143d78644394f0b50c5695904c58e33c213 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Sun, 28 Jun 2026 17:45:22 +0200 Subject: [PATCH 046/284] nodejs_24: fix typo in derivation --- pkgs/development/web/nodejs/v24.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/web/nodejs/v24.nix b/pkgs/development/web/nodejs/v24.nix index 823cd488c5b8..3388b484ebe8 100644 --- a/pkgs/development/web/nodejs/v24.nix +++ b/pkgs/development/web/nodejs/v24.nix @@ -9,15 +9,16 @@ }: let - buildNodejs = - callPackage ./nodejs.nix { + buildNodejs = callPackage ./nodejs.nix ( + { inherit openssl; python = python3; } // lib.optionalAttrs stdenv.hostPlatform.isDarwin { # libcxx21 makes FD tracking unreliable on Darwin. Pinning to libcxx20: stdenv = buildPackages.llvmPackages_20.libcxxStdenv; - }; + } + ); gypPatches = if stdenv.buildPlatform.isDarwin then From a8f768361ea0d4b2234b88199e231680e832bebe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 20:22:20 -0700 Subject: [PATCH 047/284] libadwaita: 1.9.1 -> 1.9.2 Diff: https://gitlab.gnome.org/GNOME/libadwaita/-/compare/1.9.1...1.9.2 Changelog: https://gitlab.gnome.org/GNOME/libadwaita/-/blob/1.9.2/NEWS --- pkgs/by-name/li/libadwaita/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libadwaita/package.nix b/pkgs/by-name/li/libadwaita/package.nix index 8f289c6e4977..fdad6431655b 100644 --- a/pkgs/by-name/li/libadwaita/package.nix +++ b/pkgs/by-name/li/libadwaita/package.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "libadwaita"; - version = "1.9.1"; + version = "1.9.2"; outputs = [ "out" @@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "GNOME"; repo = "libadwaita"; tag = finalAttrs.version; - hash = "sha256-Oy3WcsymNbbmAacm5hEOrorI1wKXjSp063mh4jCJRAE="; + hash = "sha256-XKKjnZz4CII6w9fKFptPK3aTNa5eMfyE7rcerbgaDco="; }; depsBuildBuild = [ From 135034ac717fd02a478c869bd355f41cb36e5adf Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 29 Jun 2026 11:00:12 +0300 Subject: [PATCH 048/284] curl: allow runtimeShellPackage to be referenced by curl.dev Fixes https://github.com/NixOS/nixpkgs/pull/535878#issuecomment-4815172957 `patchShebangsAuto` uses `--build` by default for dev outputs, which includes `$dev/bin/curl-config` in this package. --- pkgs/by-name/cu/curlMinimal/package.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/cu/curlMinimal/package.nix b/pkgs/by-name/cu/curlMinimal/package.nix index cd277649a5ae..8ef587a7ab88 100644 --- a/pkgs/by-name/cu/curlMinimal/package.nix +++ b/pkgs/by-name/cu/curlMinimal/package.nix @@ -257,7 +257,8 @@ stdenv.mkDerivation (finalAttrs: { + lib.optionalString isCross '' patchShebangs --update --host "''${!outputBin}/bin" ''; - disallowedReferences = lib.optional isCross buildPackages.runtimeShellPackage; + outputChecks.bin.disallowedReferences = lib.optional isCross buildPackages.runtimeShellPackage; + outputChecks.out.disallowedReferences = lib.optional isCross buildPackages.runtimeShellPackage; buildInputs = lib.optional isCross runtimeShellPackage; passthru = From d0c0d01afc8ea5d0f189fd4f4805e98b136a7299 Mon Sep 17 00:00:00 2001 From: Ruud van Asseldonk Date: Fri, 19 Jun 2026 19:55:30 +0200 Subject: [PATCH 049/284] libressl_4_3: 4.3.1 -> 4.3.2 --- pkgs/by-name/li/libressl/default.nix | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/pkgs/by-name/li/libressl/default.nix b/pkgs/by-name/li/libressl/default.nix index 4bf139efc381..6f0faa1a563d 100644 --- a/pkgs/by-name/li/libressl/default.nix +++ b/pkgs/by-name/li/libressl/default.nix @@ -151,23 +151,10 @@ in ]; }; - # 4.3 was released April 2026 and will become unsupported one year after the - # release of OpenBSD 7.9. + # 4.3 was released April 2026 and will become unsupported on May 19, 2027, + # one year after the release of OpenBSD 7.9. libressl_4_3 = generic { - version = "4.3.1"; - hash = "sha256-wttCrOFOfVQZgm+rNadC7G5NEnJaBRpR0M6jwQug+lA="; - patches = [ - # Fix for https://github.com/libressl/portable/issues/1278, where LibreSSL - # 4.3 started requiring executable stack because some objects were missing - # a .note.GNU-stack section; will probably be included in the next release. - (fetchpatch { - url = "https://raw.githubusercontent.com/libressl/portable/4dae91d056c6c75ba5cf2bc5e6148b8e02239119/patches/gnu-stack.patch"; - hash = "sha256-Q1oWL4N8w5Zmjfq5QkTJR53NgZ4GqChSDaBicli5G2I="; - # This patch is written to be applied with -p0, with no leading path - # component, but Nix applies with -p1 by default, so we add it to not - # break compatibility with how other patches must be applied. - decode = "sed 's|^--- |--- a/|; s|^+++ |+++ b/|'"; - }) - ]; + version = "4.3.2"; + hash = "sha256-7fAa7iTGXWnmqe/LnUS82mgv+dTzu72V55Th36kIR7U="; }; } From c057afbc4d8ea908adc18855c9ecb890a7802c51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Sun, 21 Jun 2026 21:20:46 +0200 Subject: [PATCH 050/284] python3Packages.pytest-memray: init at 1.8.0 --- .../python-modules/pytest-memray/default.nix | 56 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 58 insertions(+) create mode 100644 pkgs/development/python-modules/pytest-memray/default.nix diff --git a/pkgs/development/python-modules/pytest-memray/default.nix b/pkgs/development/python-modules/pytest-memray/default.nix new file mode 100644 index 000000000000..f24ffe21881a --- /dev/null +++ b/pkgs/development/python-modules/pytest-memray/default.nix @@ -0,0 +1,56 @@ +{ + lib, + anyio, + buildPythonPackage, + fetchFromGitHub, + flaky, + hatchling, + hatch-vcs, + memray, + pytest, + pytest-xdist, + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "pytest-memray"; + version = "1.8.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "bloomberg"; + repo = "pytest-memray"; + tag = "v${finalAttrs.version}"; + hash = "sha256-73Lyy14t2Hcqo0aTlWbGMzaxJ73bKjzc4BFE/jPG99I="; + }; + + build-system = [ + hatchling + hatch-vcs + ]; + + dependencies = [ memray ]; + + buildInputs = [ pytest ]; + + nativeCheckInputs = [ + anyio + flaky + pytest-xdist + pytestCheckHook + ]; + + enabledTestPaths = [ + # don't run the demo tests + "tests" + ]; + + pythonImportsCheck = [ "pytest_memray" ]; + + meta = { + description = "Pytest plugin for easy integration of memray memory profiler"; + homepage = "https://github.com/bloomberg/pytest-memray"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ SuperSandro2000 ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4666c70de2f0..7903e561e516 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15846,6 +15846,8 @@ self: super: with self; { pytest-md-report = callPackage ../development/python-modules/pytest-md-report { }; + pytest-memray = callPackage ../development/python-modules/pytest-memray { }; + pytest-metadata = callPackage ../development/python-modules/pytest-metadata { }; pytest-mock = callPackage ../development/python-modules/pytest-mock { }; From 4ddd9cf2489a4b8a68f38318b671605fa6a71bd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Sun, 21 Jun 2026 21:20:57 +0200 Subject: [PATCH 051/284] python314Packages.pyturbojpeg: enable tests --- .../python-modules/pyturbojpeg/default.nix | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/pyturbojpeg/default.nix b/pkgs/development/python-modules/pyturbojpeg/default.nix index f6aa0ba577f3..d45067c67647 100644 --- a/pkgs/development/python-modules/pyturbojpeg/default.nix +++ b/pkgs/development/python-modules/pyturbojpeg/default.nix @@ -6,7 +6,8 @@ libjpeg_turbo, setuptools, numpy, - python, + pytest-memray, + pytestCheckHook, replaceVars, }: @@ -32,14 +33,15 @@ buildPythonPackage rec { dependencies = [ numpy ]; - # upstream has no tests, but we want to test whether the library is found - checkPhase = '' - runHook preCheck + nativeCheckInputs = [ + pytest-memray + pytestCheckHook + ]; - ${python.interpreter} -c 'from turbojpeg import TurboJPEG; TurboJPEG()' - - runHook postCheck - ''; + disabledTests = [ + # our patch breaks the test + "test_library_loading_error_message" + ]; pythonImportsCheck = [ "turbojpeg" ]; From eb58007af76c976a03436887b5325d18c492ddb0 Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 29 Jun 2026 14:20:41 -0400 Subject: [PATCH 052/284] attr: 2.5.2 -> 2.6.0 changelog: https://cgit.git.savannah.nongnu.org/cgit/attr.git/tree/doc/CHANGES?h=v2.6.0 advisory: https://lists.nongnu.org/archive/html/acl-devel/2026-06/msg00000.html Fixes: CVE-2026-54371 --- pkgs/development/libraries/attr/default.nix | 9 ++----- pkgs/development/libraries/attr/musl.patch | 27 --------------------- 2 files changed, 2 insertions(+), 34 deletions(-) delete mode 100644 pkgs/development/libraries/attr/musl.patch diff --git a/pkgs/development/libraries/attr/default.nix b/pkgs/development/libraries/attr/default.nix index f2e057a33058..10891ece56a8 100644 --- a/pkgs/development/libraries/attr/default.nix +++ b/pkgs/development/libraries/attr/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "attr"; - version = "2.5.2"; + version = "2.6.0"; src = fetchurl { url = "mirror://savannah/attr/attr-${version}.tar.gz"; - sha256 = "sha256-Ob9nRS+kHQlIwhl2AQU/SLPXigKTiXNDMqYwmmgMbIc="; + hash = "sha256-1C+jdFExgLtIyxGkZpb0iCQOUST/HmrYiwq/9waYVhI="; }; outputs = [ @@ -29,11 +29,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gettext ]; - # tools/attr.c: Add missing libgen.h include for basename(3) - # Fixes compilation issue with musl and modern C99 compilers. - # See: https://bugs.gentoo.org/926294 - patches = [ ./musl.patch ]; - postPatch = '' for script in install-sh include/install-sh; do patchShebangs $script diff --git a/pkgs/development/libraries/attr/musl.patch b/pkgs/development/libraries/attr/musl.patch deleted file mode 100644 index 818161f15243..000000000000 --- a/pkgs/development/libraries/attr/musl.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 8a80d895dfd779373363c3a4b62ecce5a549efb2 Mon Sep 17 00:00:00 2001 -From: "Haelwenn (lanodan) Monnier" -Date: Sat, 30 Mar 2024 10:17:10 +0100 -Subject: tools/attr.c: Add missing libgen.h include for basename(3) - -Fixes compilation issue with musl and modern C99 compilers. - -See: https://bugs.gentoo.org/926294 ---- - tools/attr.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/tools/attr.c b/tools/attr.c -index f12e4af..6a3c1e9 100644 ---- a/tools/attr.c -+++ b/tools/attr.c -@@ -28,6 +28,7 @@ - #include - #include - #include -+#include - - #include - --- -cgit v1.1 - From 3e9573a974855d064f8ec0d7a96e7bf800da67f7 Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 29 Jun 2026 14:29:14 -0400 Subject: [PATCH 053/284] acl: 2.3.2 -> 2.4.0 changelog: https://cgit.git.savannah.nongnu.org/cgit/acl.git/tree/doc/CHANGES?h=v2.4.0 advisory: https://lists.nongnu.org/archive/html/acl-devel/2026-06/msg00000.html Fixes: CVE-2026-54369, CVE-2026-54370 --- pkgs/development/libraries/acl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/acl/default.nix b/pkgs/development/libraries/acl/default.nix index 3397e6e27a14..75934d780a90 100644 --- a/pkgs/development/libraries/acl/default.nix +++ b/pkgs/development/libraries/acl/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "acl"; - version = "2.3.2"; + version = "2.4.0"; src = fetchurl { url = "mirror://savannah/acl/acl-${finalAttrs.version}.tar.gz"; - hash = "sha256-XyvbrWKXB6p9hcYj+ZSqih0t7FWnPeUgW6wL9gWKL3w="; + hash = "sha256-c8hTw9ROH2k+WpaphvG9GdPQ2sLH1FPnlhd3dLxOX2o="; }; outputs = [ From 61bf491213fb6da0b7067d1ed0c4a642e0104519 Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 29 Jun 2026 15:42:27 -0400 Subject: [PATCH 054/284] gnutar: avoid name conflicts with acl 2.4.0 --- .../gn/gnutar/acl-2.4.0-name-conflicts.patch | 85 +++++++++++++++++++ pkgs/by-name/gn/gnutar/package.nix | 14 ++- 2 files changed, 96 insertions(+), 3 deletions(-) create mode 100644 pkgs/by-name/gn/gnutar/acl-2.4.0-name-conflicts.patch diff --git a/pkgs/by-name/gn/gnutar/acl-2.4.0-name-conflicts.patch b/pkgs/by-name/gn/gnutar/acl-2.4.0-name-conflicts.patch new file mode 100644 index 000000000000..c871551bc772 --- /dev/null +++ b/pkgs/by-name/gn/gnutar/acl-2.4.0-name-conflicts.patch @@ -0,0 +1,85 @@ +diff --git a/src/xattrs.c b/src/xattrs.c +index 86a7e59cbc..c872ae308d 100644 +--- a/src/xattrs.c ++++ b/src/xattrs.c +@@ -139,13 +139,13 @@ + #ifdef HAVE_POSIX_ACLS + + /* acl-at wrappers, TODO: move to gnulib in future? */ +-static acl_t acl_get_file_at (int, const char *, acl_type_t); +-static int acl_set_file_at (int, const char *, acl_type_t, acl_t); ++static acl_t tar_acl_get_file_at (int, const char *, acl_type_t); ++static int tar_acl_set_file_at (int, const char *, acl_type_t, acl_t); + static int file_has_acl_at (int, char const *, struct stat const *); +-static int acl_delete_def_file_at (int, char const *); ++static int tar_acl_delete_def_file_at (int, char const *); + +-/* acl_get_file_at */ +-#define AT_FUNC_NAME acl_get_file_at ++/* tar_acl_get_file_at */ ++#define AT_FUNC_NAME tar_acl_get_file_at + #define AT_FUNC_RESULT acl_t + #define AT_FUNC_FAIL (acl_t)NULL + #define AT_FUNC_F1 acl_get_file +@@ -159,8 +159,8 @@ + #undef AT_FUNC_POST_FILE_PARAM_DECLS + #undef AT_FUNC_POST_FILE_ARGS + +-/* acl_set_file_at */ +-#define AT_FUNC_NAME acl_set_file_at ++/* tar_acl_set_file_at */ ++#define AT_FUNC_NAME tar_acl_set_file_at + #define AT_FUNC_F1 acl_set_file + #define AT_FUNC_POST_FILE_PARAM_DECLS , acl_type_t type, acl_t acl + #define AT_FUNC_POST_FILE_ARGS , type, acl +@@ -170,8 +170,8 @@ + #undef AT_FUNC_POST_FILE_PARAM_DECLS + #undef AT_FUNC_POST_FILE_ARGS + +-/* acl_delete_def_file_at */ +-#define AT_FUNC_NAME acl_delete_def_file_at ++/* tar_acl_delete_def_file_at */ ++#define AT_FUNC_NAME tar_acl_delete_def_file_at + #define AT_FUNC_F1 acl_delete_def_file + #define AT_FUNC_POST_FILE_PARAM_DECLS + #define AT_FUNC_POST_FILE_ARGS +@@ -299,10 +299,10 @@ + /* No "default" IEEE 1003.1e ACL set for directory. At this moment, + FILE_NAME may already have inherited default acls from parent + directory; clean them up. */ +- if (acl_delete_def_file_at (chdir_fd, file_name)) ++ if (tar_acl_delete_def_file_at (chdir_fd, file_name)) + WARNOPT (WARN_XATTR_WRITE, + (0, errno, +- _("acl_delete_def_file_at: Cannot drop default POSIX ACLs " ++ _("tar_acl_delete_def_file_at: Cannot drop default POSIX ACLs " + "for file '%s'"), + file_name)); + return; +@@ -316,11 +316,11 @@ + return; + } + +- if (acl_set_file_at (chdir_fd, file_name, type, acl) == -1) ++ if (tar_acl_set_file_at (chdir_fd, file_name, type, acl) == -1) + /* warn even if filesystem does not support acls */ + WARNOPT (WARN_XATTR_WRITE, + (0, errno, +- _ ("acl_set_file_at: Cannot set POSIX ACLs for file '%s'"), ++ _ ("tar_acl_set_file_at: Cannot set POSIX ACLs for file '%s'"), + file_name)); + + acl_free (acl); +@@ -357,10 +357,10 @@ + char *val = NULL; + acl_t acl; + +- if (!(acl = acl_get_file_at (parentfd, file_name, type))) ++ if (!(acl = tar_acl_get_file_at (parentfd, file_name, type))) + { + if (errno != ENOTSUP) +- call_arg_warn ("acl_get_file_at", file_name); ++ call_arg_warn ("tar_acl_get_file_at", file_name); + return; + } + diff --git a/pkgs/by-name/gn/gnutar/package.nix b/pkgs/by-name/gn/gnutar/package.nix index acf5f3233aeb..c7b072b71d10 100644 --- a/pkgs/by-name/gn/gnutar/package.nix +++ b/pkgs/by-name/gn/gnutar/package.nix @@ -24,9 +24,17 @@ stdenv.mkDerivation (finalAttrs: { sha256 = "sha256-TWL/NzQux67XSFNTI5MMfPlKz3HDWRiCsmp+pQ8+3BY="; }; - # GNU tar fails to link libiconv even though the configure script detects it. - # https://savannah.gnu.org/bugs/index.php?64441 - patches = [ ./link-libiconv.patch ]; + patches = [ + # GNU tar fails to link libiconv even though the configure script detects it. + # https://savannah.gnu.org/bugs/index.php?64441 + ./link-libiconv.patch + + # acl 2.4.0 adds functions that have name conflicts with internal + # (`static`) functions from GNU tar. we prefix `tar_` to these names to + # avoid this, matching the approach from + # https://lists.gnu.org/archive/html/bug-tar/2026-06/msg00013.html + ./acl-2.4.0-name-conflicts.patch + ]; # gnutar tries to call into gettext between `fork` and `exec`, # which is not safe on darwin. From b71417e791dcf9d48a42a3c052fe572a4f420c9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 29 Jun 2026 15:18:48 +0200 Subject: [PATCH 055/284] isa-l: mark unbroken for aarch64-darwin Tested with a gzip encoded test file and works without errors. --- pkgs/by-name/is/isa-l/package.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/by-name/is/isa-l/package.nix b/pkgs/by-name/is/isa-l/package.nix index 22bdfce4ef02..ae3af26a13b4 100644 --- a/pkgs/by-name/is/isa-l/package.nix +++ b/pkgs/by-name/is/isa-l/package.nix @@ -97,9 +97,6 @@ stdenv.mkDerivation (finalAttrs: { maintainers = with lib.maintainers; [ jbedo ]; platforms = lib.platforms.all; badPlatforms = [ - # :4:26: error: unexpected token in argument list - # movk x7, p4_low_b1, lsl 16 - "aarch64-darwin" # https://github.com/intel/isa-l/issues/188 "i686-linux" ]; From a74c47e5d1cdbcf8e0a3be7ed83ce567bf497ff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 30 Jun 2026 08:41:58 +0200 Subject: [PATCH 056/284] isa-l: mark unbroken for i686-linux --- pkgs/by-name/is/isa-l/package.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/by-name/is/isa-l/package.nix b/pkgs/by-name/is/isa-l/package.nix index ae3af26a13b4..6aa81650728e 100644 --- a/pkgs/by-name/is/isa-l/package.nix +++ b/pkgs/by-name/is/isa-l/package.nix @@ -96,9 +96,5 @@ stdenv.mkDerivation (finalAttrs: { changelog = "https://github.com/intel/isa-l/releases/tag/v${finalAttrs.version}"; maintainers = with lib.maintainers; [ jbedo ]; platforms = lib.platforms.all; - badPlatforms = [ - # https://github.com/intel/isa-l/issues/188 - "i686-linux" - ]; }; }) From 8ee90271bed9a9ab63e1b18b6ba32b4a04cbd8db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 30 Jun 2026 08:39:03 +0200 Subject: [PATCH 057/284] python314Packages.aiohttp: drop unused inputs --- pkgs/development/python-modules/aiohttp/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix index 9b76c5565090..e6fe548878bc 100644 --- a/pkgs/development/python-modules/aiohttp/default.nix +++ b/pkgs/development/python-modules/aiohttp/default.nix @@ -3,7 +3,6 @@ stdenv, buildPythonPackage, fetchFromGitHub, - replaceVars, isPyPy, pythonOlder, @@ -18,7 +17,6 @@ # dependencies aiohappyeyeballs, aiosignal, - async-timeout, attrs, backports-zstd, frozenlist, From f1921ed9229bfb199dfda3aa397e3defa3fc0a37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 30 Jun 2026 08:44:48 +0200 Subject: [PATCH 058/284] python314Packages.aiohttp: remove now unused isal condition --- pkgs/development/python-modules/aiohttp/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix index e6fe548878bc..15ef808fcecf 100644 --- a/pkgs/development/python-modules/aiohttp/default.nix +++ b/pkgs/development/python-modules/aiohttp/default.nix @@ -33,7 +33,6 @@ blockbuster, freezegun, gunicorn, - isa-l, isal, proxy-py, pytest-codspeed, @@ -107,8 +106,7 @@ buildPythonPackage rec { blockbuster freezegun gunicorn - # broken on aarch64-darwin - (if lib.meta.availableOn stdenv.hostPlatform isa-l then isal else null) + isal proxy-py pytest-codspeed pytest-cov-stub From 5c62da7ead7f27c60229be52f015007c7f9a5217 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 30 Jun 2026 17:29:36 +0200 Subject: [PATCH 059/284] libmemcached: make the patch unconditional --- pkgs/by-name/li/libmemcached/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/li/libmemcached/package.nix b/pkgs/by-name/li/libmemcached/package.nix index 0da1dfeb7ebf..df17fef7a93a 100644 --- a/pkgs/by-name/li/libmemcached/package.nix +++ b/pkgs/by-name/li/libmemcached/package.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-jEw6L2/139oo4sGprl9Xp0DTarxAK1bEF2ak2kHWSAs="; }; - patches = lib.optionals stdenv.hostPlatform.isDarwin [ + patches = [ (fetchpatch { name = "libcxx-compat.patch"; url = "https://github.com/awesomized/libmemcached/commit/547460c12287a34a5993045157a0e13e14203f92.patch"; From 89cdf1a803f1754210b69696181b73d78a47b2c9 Mon Sep 17 00:00:00 2001 From: Adam Dinwoodie Date: Tue, 30 Jun 2026 17:10:36 +0100 Subject: [PATCH 060/284] git: fix update script The existing update script is clearly broken, since it's trying to update the package definition in a file that hasn't existed for a long time. Replace it with a tested invocation of `nix-update`. --- pkgs/by-name/gi/git/package.nix | 13 ++++++++++++- pkgs/by-name/gi/git/update.sh | 19 ------------------- 2 files changed, 12 insertions(+), 20 deletions(-) delete mode 100755 pkgs/by-name/gi/git/update.sh diff --git a/pkgs/by-name/gi/git/package.nix b/pkgs/by-name/gi/git/package.nix index bda0344badb9..53b6854f57f8 100644 --- a/pkgs/by-name/gi/git/package.nix +++ b/pkgs/by-name/gi/git/package.nix @@ -55,6 +55,7 @@ rustSupport ? lib.meta.availableOn stdenv.hostPlatform rustc, cargo, rustc, + nix-update-script, }: assert osxkeychainSupport -> stdenv.hostPlatform.isDarwin; @@ -616,7 +617,17 @@ stdenv.mkDerivation (finalAttrs: { }; } // tests.fetchgit; - updateScript = ./update.sh; + + # We get the source from the release packages, since that contains a few + # extra files that make the build easier without already having a Git + # installation. We get the version from GitHub, however, as that provides + # a nicer API for checking what the latest version is. + updateScript = nix-update-script { + extraArgs = [ + "--url" + "https://github.com/git/git" + ]; + }; }; meta = { diff --git a/pkgs/by-name/gi/git/update.sh b/pkgs/by-name/gi/git/update.sh deleted file mode 100755 index 7aa1e90d53b3..000000000000 --- a/pkgs/by-name/gi/git/update.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl common-updater-scripts jq git - -set -eu -o pipefail - -oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion git" | tr -d '"')" -latestTag="$(git ls-remote --tags --sort="v:refname" https://github.com/git/git.git | grep -v '{}' | grep -v '\-rc' | tail -1 | sed 's|^.*/v\(.*\)|\1|')" -targetVersion="${1:-$latestTag}" - -if [ ! "${oldVersion}" = "${targetVersion}" ]; then - update-source-version git "${targetVersion}" - nixpkgs="$(git rev-parse --show-toplevel)" - default_nix="$nixpkgs/pkgs/applications/version-management/git/default.nix" - nix-build -A git - git add "${default_nix}" - git commit -m "git: ${oldVersion} -> ${targetVersion}" -else - echo "git is already up-to-date" -fi From b7b9f65c486108453f26e48de473a154558c8a6d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 1 Jul 2026 07:18:55 +0000 Subject: [PATCH 061/284] publicsuffix-list: 0-unstable-2026-05-13 -> 0-unstable-2026-06-24 --- pkgs/by-name/pu/publicsuffix-list/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pu/publicsuffix-list/package.nix b/pkgs/by-name/pu/publicsuffix-list/package.nix index ea3f3d9fa1e4..7dd02eb4f21d 100644 --- a/pkgs/by-name/pu/publicsuffix-list/package.nix +++ b/pkgs/by-name/pu/publicsuffix-list/package.nix @@ -7,13 +7,13 @@ stdenvNoCC.mkDerivation { pname = "publicsuffix-list"; - version = "0-unstable-2026-05-13"; + version = "0-unstable-2026-06-24"; src = fetchFromGitHub { owner = "publicsuffix"; repo = "list"; - rev = "e452c7058d6946bd76952b128c12f5ce87a5acb8"; - hash = "sha256-5D4RZAyJOL4hMU32Rmp3SYmjgqEtF36mZJr4YBG0k7E="; + rev = "18ecca5d54471f21918798da451dd8d03a18f3c7"; + hash = "sha256-xvOAZpWhuOU3koEHgNfVK6aHy+VMYRoHj3fq9PxaAFo="; }; dontBuild = true; From 620dc9f4555d3230254d85e449832de27f8cdfa8 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Mon, 29 Jun 2026 22:56:31 +0100 Subject: [PATCH 062/284] nasm: 3.01 -> 3.02 Changes: https://www.nasm.us/docs/3.02/nasmac.html --- pkgs/by-name/na/nasm/package.nix | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/na/nasm/package.nix b/pkgs/by-name/na/nasm/package.nix index 5b611b57591c..9babb2241495 100644 --- a/pkgs/by-name/na/nasm/package.nix +++ b/pkgs/by-name/na/nasm/package.nix @@ -9,23 +9,20 @@ stdenv.mkDerivation (finalAttrs: { pname = "nasm"; - version = "3.01"; + version = "3.02"; src = fetchurl { url = "https://www.nasm.us/pub/nasm/releasebuilds/${finalAttrs.version}/nasm-${finalAttrs.version}.tar.xz"; - hash = "sha256-tzJMvobnZ7ZfJvRn7YsSrYDhJOPMuJB2hVyY5Dqe3dQ="; + hash = "sha256-hzNuulO0rP6RdCSrXVANKwBU2fUUjTXCJzzPLPtxLw0="; }; patches = [ - # Backport patches fixing nasm with gcc 15 and musl (and other?) platforms - # https://github.com/netwide-assembler/nasm/issues/169 + # Backport the fix for https://github.com/netwide-assembler/nasm/issues/203 + # buffer overflow. (fetchpatch { - url = "https://github.com/netwide-assembler/nasm/commit/44e89ba9b650b5e1533bca43682e167f51a3511f.patch"; - hash = "sha256-zVeMFhoSY/HGYr4meIWBgt5Unq1fA8lM6h1Cl5fpbxo="; - }) - (fetchpatch { - url = "https://github.com/netwide-assembler/nasm/commit/746e7c9efa37cec9a44d84a1e96b8c38f385cc1f.patch"; - hash = "sha256-aXVS70O/wUkW8xtkwF7uwrQfTgGcNvxHrtGC0sjIPto="; + name = "output-oob-fix.patch"; + url = "https://github.com/netwide-assembler/nasm/commit/8890d723d0aa9ed1a790e2ce1c55eee8dfa0cf94.patch"; + hash = "sha256-m03+bhKTgKlqeRLGZIy6GO5BTPIJ3r398VQrtN4waaw="; }) ]; From 8515b91b88f3a27584324effe33a24df2ed15fae Mon Sep 17 00:00:00 2001 From: Julian Stecklina Date: Wed, 1 Jul 2026 10:47:23 +0200 Subject: [PATCH 063/284] glibc: fix CVE-2026-5435 and CVE-2026-6238 The fixes were backported from glibc master and had some slight conflicts. 0001-resolv-Check-for-inet_ntop-failure-in-ns_sprintrrf.patch was backported to avoid having to modify the fix for CVE-2026-6238. --- ...or-inet_ntop-failure-in-ns_sprintrrf.patch | 69 +++++++++ ...s-as-unknown-in-ns_sprintrrf-CVE-202.patch | 134 ++++++++++++++++++ ...r-overreads-in-ns_sprintrrf-CVE-2026.patch | 66 +++++++++ pkgs/development/libraries/glibc/common.nix | 9 ++ 4 files changed, 278 insertions(+) create mode 100644 pkgs/development/libraries/glibc/0001-resolv-Check-for-inet_ntop-failure-in-ns_sprintrrf.patch create mode 100644 pkgs/development/libraries/glibc/0002-resolv-More-types-as-unknown-in-ns_sprintrrf-CVE-202.patch create mode 100644 pkgs/development/libraries/glibc/0003-resolv-Fix-buffer-overreads-in-ns_sprintrrf-CVE-2026.patch diff --git a/pkgs/development/libraries/glibc/0001-resolv-Check-for-inet_ntop-failure-in-ns_sprintrrf.patch b/pkgs/development/libraries/glibc/0001-resolv-Check-for-inet_ntop-failure-in-ns_sprintrrf.patch new file mode 100644 index 000000000000..5e55d1242bb4 --- /dev/null +++ b/pkgs/development/libraries/glibc/0001-resolv-Check-for-inet_ntop-failure-in-ns_sprintrrf.patch @@ -0,0 +1,69 @@ +From 4d9c6b19fcb34fab03fb7dab8f6d36a2cc4ef982 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Fri, 19 Jun 2026 18:22:20 +0200 +Subject: [PATCH 1/3] resolv: Check for inet_ntop failure in ns_sprintrrf + +This makes the output more consistent (either failure or complete +output) and helps with systematic testing with varying buffer +sizes. + +Reviewed-by: Carlos O'Donell +Reviewed-by: Adhemerval Zanella +(cherry picked from commit cd0db208d56a2cecd528b8ae96df752ba5344d9a) +--- + resolv/ns_print.c | 18 +++++++++++------- + 1 file changed, 11 insertions(+), 7 deletions(-) + +diff --git a/resolv/ns_print.c b/resolv/ns_print.c +index cef2212fd2..cb680fb74e 100644 +--- a/resolv/ns_print.c ++++ b/resolv/ns_print.c +@@ -140,8 +140,9 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + switch (type) { + case ns_t_a: + if (rdlen != (size_t)NS_INADDRSZ) +- goto formerr; +- (void) inet_ntop(AF_INET, rdata, buf, buflen); ++ goto formerr; ++ if (inet_ntop (AF_INET, rdata, buf, buflen) == NULL) ++ return -1; + addlen(strlen(buf), &buf, &buflen); + break; + +@@ -307,9 +308,10 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + } + + case ns_t_aaaa: +- if (rdlen != (size_t)NS_IN6ADDRSZ) +- goto formerr; +- (void) inet_ntop(AF_INET6, rdata, buf, buflen); ++ if (rdlen != (size_t)NS_IN6ADDRSZ) ++ goto formerr; ++ if (inet_ntop (AF_INET6, rdata, buf, buflen) == NULL) ++ return -1; + addlen(strlen(buf), &buf, &buflen); + break; + +@@ -400,7 +402,8 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + goto formerr; + + /* Address. */ +- (void) inet_ntop(AF_INET, rdata, buf, buflen); ++ if (inet_ntop (AF_INET, rdata, buf, buflen) == NULL) ++ return -1; + addlen(strlen(buf), &buf, &buflen); + rdata += NS_INADDRSZ; + +@@ -542,7 +545,8 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + if (rdata + pbyte >= edata) goto formerr; + memset(&a, 0, sizeof(a)); + memcpy(&a.s6_addr[pbyte], rdata, sizeof(a) - pbyte); +- (void) inet_ntop(AF_INET6, &a, buf, buflen); ++ if (inet_ntop (AF_INET6, &a, buf, buflen) == NULL) ++ return -1; + addlen(strlen(buf), &buf, &buflen); + rdata += sizeof(a) - pbyte; + } +-- +2.54.0 + diff --git a/pkgs/development/libraries/glibc/0002-resolv-More-types-as-unknown-in-ns_sprintrrf-CVE-202.patch b/pkgs/development/libraries/glibc/0002-resolv-More-types-as-unknown-in-ns_sprintrrf-CVE-202.patch new file mode 100644 index 000000000000..5b39165a43b0 --- /dev/null +++ b/pkgs/development/libraries/glibc/0002-resolv-More-types-as-unknown-in-ns_sprintrrf-CVE-202.patch @@ -0,0 +1,134 @@ +From 103658e72f5aaeb36a5e405f9abaa1b687488fc1 Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Fri, 19 Jun 2026 18:22:20 +0200 +Subject: [PATCH 2/3] resolv: More types as unknown in ns_sprintrrf + (CVE-2026-5435) + +Specifically, CERT, TKEY, TSIG, OPT. This removes the buggy +implementations of TSIG, fixing bug 34033, and partially +fixing bug 34069. + +Reviewed-by: Carlos O'Donell +Reviewed-by: Adhemerval Zanella +(cherry picked from commit ca44a6609c29a683b03575fa035c6d17aa591e72) +--- + resolv/ns_print.c | 96 ----------------------------------------------- + 1 file changed, 96 deletions(-) + +diff --git a/resolv/ns_print.c b/resolv/ns_print.c +index cb680fb74e..8c876b147e 100644 +--- a/resolv/ns_print.c ++++ b/resolv/ns_print.c +@@ -437,96 +437,6 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + break; + } + +- case ns_t_cert: { +- u_int c_type, key_tag, alg; +- int n; +- unsigned int siz; +- char base64_cert[8192], tmp[40]; +- const char *leader; +- +- c_type = ns_get16(rdata); rdata += NS_INT16SZ; +- key_tag = ns_get16(rdata); rdata += NS_INT16SZ; +- alg = (u_int) *rdata++; +- +- len = SPRINTF((tmp, "%d %d %d ", c_type, key_tag, alg)); +- T(addstr(tmp, len, &buf, &buflen)); +- siz = (edata-rdata)*4/3 + 4; /* "+4" accounts for trailing \0 */ +- if (siz > sizeof(base64_cert) * 3/4) { +- const char *str = "record too long to print"; +- T(addstr(str, strlen(str), &buf, &buflen)); +- } +- else { +- len = b64_ntop(rdata, edata-rdata, base64_cert, siz); +- +- if (len < 0) +- goto formerr; +- else if (len > 15) { +- T(addstr(" (", 2, &buf, &buflen)); +- leader = "\n\t\t"; +- spaced = 0; +- } +- else +- leader = " "; +- +- for (n = 0; n < len; n += 48) { +- T(addstr(leader, strlen(leader), +- &buf, &buflen)); +- T(addstr(base64_cert + n, MIN(len - n, 48), +- &buf, &buflen)); +- } +- if (len > 15) +- T(addstr(" )", 2, &buf, &buflen)); +- } +- break; +- } +- +- case ns_t_tkey: { +- /* KJD - need to complete this */ +- u_long t; +- int mode, err, keysize; +- +- /* Algorithm name. */ +- T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); +- T(addstr(" ", 1, &buf, &buflen)); +- +- /* Inception. */ +- t = ns_get32(rdata); rdata += NS_INT32SZ; +- len = SPRINTF((tmp, "%lu ", t)); +- T(addstr(tmp, len, &buf, &buflen)); +- +- /* Expiration. */ +- t = ns_get32(rdata); rdata += NS_INT32SZ; +- len = SPRINTF((tmp, "%lu ", t)); +- T(addstr(tmp, len, &buf, &buflen)); +- +- /* Mode , Error, Key Size. */ +- /* Priority, Weight, Port. */ +- mode = ns_get16(rdata); rdata += NS_INT16SZ; +- err = ns_get16(rdata); rdata += NS_INT16SZ; +- keysize = ns_get16(rdata); rdata += NS_INT16SZ; +- len = SPRINTF((tmp, "%u %u %u ", mode, err, keysize)); +- T(addstr(tmp, len, &buf, &buflen)); +- +- /* XXX need to dump key, print otherdata length & other data */ +- break; +- } +- +- case ns_t_tsig: { +- /* BEW - need to complete this */ +- int n; +- +- T(len = addname(msg, msglen, &rdata, origin, &buf, &buflen)); +- T(addstr(" ", 1, &buf, &buflen)); +- rdata += 8; /*%< time */ +- n = ns_get16(rdata); rdata += INT16SZ; +- rdata += n; /*%< sig */ +- n = ns_get16(rdata); rdata += INT16SZ; /*%< original id */ +- sprintf(buf, "%d", ns_get16(rdata)); +- rdata += INT16SZ; +- addlen(strlen(buf), &buf, &buflen); +- break; +- } +- + case ns_t_a6: { + struct in6_addr a; + int pbyte, pbit; +@@ -561,12 +471,6 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + break; + } + +- case ns_t_opt: { +- len = SPRINTF((tmp, "%u bytes", class)); +- T(addstr(tmp, len, &buf, &buflen)); +- break; +- } +- + default: + snprintf (errbuf, sizeof (errbuf), "unknown RR type %d", type); + comment = errbuf; +-- +2.54.0 + diff --git a/pkgs/development/libraries/glibc/0003-resolv-Fix-buffer-overreads-in-ns_sprintrrf-CVE-2026.patch b/pkgs/development/libraries/glibc/0003-resolv-Fix-buffer-overreads-in-ns_sprintrrf-CVE-2026.patch new file mode 100644 index 000000000000..8bde49f159e0 --- /dev/null +++ b/pkgs/development/libraries/glibc/0003-resolv-Fix-buffer-overreads-in-ns_sprintrrf-CVE-2026.patch @@ -0,0 +1,66 @@ +From 2290143edc27486196815874dca5a528c118a73f Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Fri, 19 Jun 2026 18:22:20 +0200 +Subject: [PATCH 3/3] resolv: Fix buffer overreads in ns_sprintrrf + (CVE-2026-6238) + +Check that the RDATA payload does not require more than RDATALEN +bytes while processing it. The fixes cover A6, LOC records. +(CERT, TKEY, TSIG were fixed before, by switching to the generic +formatter.) + +The vulnerable LOC record handling was first introduced before +glibc 2.0, in commit ee188d555b8c32ad9704a7440cab400af967292f. + +CERT, TSIG, TKEY handling came with commit +b43b13ac2544b11f35be301d1589b51a8473e32b, released with glibc 2.2. + +A6 record handling was introduced in commit +91633816430e7ec5a19fe3ff510a7c4822a9557e ("* resolv/ns_print.c +(ns_sprintrrf): Handle ns_t_a6 and ns_t_opt."), which went into glibc +2.7. + +This fixes bug 34069. + +Reviewed-by: Carlos O'Donell +Reviewed-by: Adhemerval Zanella +(cherry picked from commit a7b60d23bbb56eaef59f4962e4140062e552600a) +--- + resolv/ns_print.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/resolv/ns_print.c b/resolv/ns_print.c +index 8c876b147e..6832255a25 100644 +--- a/resolv/ns_print.c ++++ b/resolv/ns_print.c +@@ -318,7 +318,8 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + case ns_t_loc: { + char t[255]; + +- /* XXX protocol format checking? */ ++ if (rdlen != 16) ++ goto formerr; + (void) loc_ntoa(rdata, t); + T(addstr(t, strlen(t), &buf, &buflen)); + break; +@@ -452,13 +453,14 @@ ns_sprintrrf(const u_char *msg, size_t msglen, + + /* address suffix: provided only when prefix len != 128 */ + if (pbit < 128) { +- if (rdata + pbyte >= edata) goto formerr; ++ unsigned int bytelen = sizeof(a) - pbyte; ++ if (edata - rdata < bytelen) goto formerr; + memset(&a, 0, sizeof(a)); +- memcpy(&a.s6_addr[pbyte], rdata, sizeof(a) - pbyte); ++ memcpy(&a.s6_addr[pbyte], rdata, bytelen); + if (inet_ntop (AF_INET6, &a, buf, buflen) == NULL) + return -1; + addlen(strlen(buf), &buf, &buflen); +- rdata += sizeof(a) - pbyte; ++ rdata += bytelen; + } + + /* prefix name: provided only when prefix len > 0 */ +-- +2.54.0 + diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index b6c6a6c86445..577682f7cd96 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -116,6 +116,15 @@ stdenv.mkDerivation ( # enable parallel & reproducible build of glibcLocales ./0001-localedata-allow-reproducible-parallel-install-of-lo.patch ./0002-Makeconfig-make-inst_complocaledir-overridable.patch + + # Security fixes. + # + # Can be dropped on 2.44. The first patch is only to make it + # easier to backport the fix for CVE-2026-6238 and it seems + # useful in its own right anyhow. + ./0001-resolv-Check-for-inet_ntop-failure-in-ns_sprintrrf.patch + ./0002-resolv-More-types-as-unknown-in-ns_sprintrrf-CVE-202.patch + ./0003-resolv-Fix-buffer-overreads-in-ns_sprintrrf-CVE-2026.patch ] /* NVCC does not support ARM intrinsics. Since is pulled in by almost From 2555c86506cb9b298c8ad6e41cc9125d09612abc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Wed, 1 Jul 2026 18:31:44 +0200 Subject: [PATCH 064/284] libxml2: fix CVE-2026-11979 --- pkgs/development/libraries/libxml2/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix index 015688e4474b..2858711b095d 100644 --- a/pkgs/development/libraries/libxml2/default.nix +++ b/pkgs/development/libraries/libxml2/default.nix @@ -54,6 +54,13 @@ let tag = "v${packages.libxml2.version}"; hash = "sha256-fDntZDyITs223by8n7ueOXiO7yyzshtANoWbY0+yeqo="; }; + extraPatches = [ + (fetchpatch { + name = "CVE-2026-11979.patch"; + url = "https://gitlab.gnome.org/GNOME/libxml2/-/commit/c2e233fc1b341685fc99621b2768b503f777a72e.patch"; + hash = "sha256-s7hnAW7r4fbb95WnFHhUMZbMJzTynV7umKIqc7Kdp/Q="; + }) + ]; extraMeta = { maintainers = with lib.maintainers; [ jtojnar From d1e81cb2d58014c4cc2ffd510c797a301c30a595 Mon Sep 17 00:00:00 2001 From: Cathal Mullan Date: Fri, 5 Jun 2026 17:07:09 +0100 Subject: [PATCH 065/284] jemalloc: enable heap profiling by default --- pkgs/by-name/je/jemalloc/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/je/jemalloc/package.nix b/pkgs/by-name/je/jemalloc/package.nix index 880e776d2dc0..15d3b903b5f5 100644 --- a/pkgs/by-name/je/jemalloc/package.nix +++ b/pkgs/by-name/je/jemalloc/package.nix @@ -60,6 +60,8 @@ stdenv.mkDerivation (finalAttrs: { configureFlags = [ "--with-version=${finalAttrs.version}-0-g0000000000000000000000000000000000000000" "--with-lg-vaddr=${with stdenv.hostPlatform; toString (if isILP32 then 32 else parsed.cpu.bits)}" + # Profiling is inert unless enabled at runtime + "--enable-prof" ] # see the comment on stripPrefix ++ lib.optional stripPrefix "--with-jemalloc-prefix=" From 4c551237f8eea52c06127c6ac628c8b138bcf3e2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 1 Jul 2026 20:16:53 +0000 Subject: [PATCH 066/284] libsepol: 3.10 -> 3.11 --- pkgs/by-name/li/libsepol/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libsepol/package.nix b/pkgs/by-name/li/libsepol/package.nix index 9e06808644cf..cefaad72d6ca 100644 --- a/pkgs/by-name/li/libsepol/package.nix +++ b/pkgs/by-name/li/libsepol/package.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "libsepol"; - version = "3.10"; + version = "3.11"; se_url = "https://github.com/SELinuxProject/selinux/releases/download"; outputs = [ @@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "${finalAttrs.se_url}/${finalAttrs.version}/libsepol-${finalAttrs.version}.tar.gz"; - hash = "sha256-1VVYZ5f6nzg0RJbSp+wRR7bKrz/MRMQtjVFz7denmnE="; + hash = "sha256-efPSyI9Et+tc9U2XkuAyMil+F/l6F5Fj8nUAmaAPFk0="; }; nativeBuildInputs = [ flex ]; From a7a6bd99a28765c664f1863db885b36dc64f5547 Mon Sep 17 00:00:00 2001 From: Michael Daniels Date: Wed, 1 Jul 2026 17:48:40 -0400 Subject: [PATCH 067/284] gzip: security fixes Fixes #536998 --- .../compression/gzip/CVE-2026-41991.patch | 52 +++++++++++++++++++ .../compression/gzip/CVE-2026-41992.patch | 35 +++++++++++++ pkgs/tools/compression/gzip/default.nix | 5 ++ 3 files changed, 92 insertions(+) create mode 100644 pkgs/tools/compression/gzip/CVE-2026-41991.patch create mode 100644 pkgs/tools/compression/gzip/CVE-2026-41992.patch diff --git a/pkgs/tools/compression/gzip/CVE-2026-41991.patch b/pkgs/tools/compression/gzip/CVE-2026-41991.patch new file mode 100644 index 000000000000..657d8553bcd2 --- /dev/null +++ b/pkgs/tools/compression/gzip/CVE-2026-41991.patch @@ -0,0 +1,52 @@ +From 4e6f8b24ab823146ab8776f0b7fe486ab34d4269 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 16 Apr 2026 12:11:44 -0700 +Subject: gzexe: use -C if lacking mktemp +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +(Problem reported by Michał Majchrowicz.) +* gzexe.in: If mktemp is needed but not installed, +use ‘set -C’ to avoid a race when creating a temporary file. +* zdiff.in: Use the same pattern here, even though the old +code was probably OK anyway. +--- + gzexe.in | 1 + + zdiff.in | 7 +++---- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/gzexe.in b/gzexe.in +index ea4ef94..f3d46cc 100644 +--- a/gzexe.in ++++ b/gzexe.in +@@ -127,6 +127,7 @@ for i do + tmp=`mktemp "${dir}gzexeXXXXXXXXX"` + else + tmp=${dir}gzexe$$ ++ (umask 77; set -C; > "$tmp") + fi && { cp -p "$file" "$tmp" 2>/dev/null || cp "$file" "$tmp"; } || { + res=$? + printf >&2 '%s\n' "$0: cannot copy $file" +diff --git a/zdiff.in b/zdiff.in +index 289e466..53266df 100644 +--- a/zdiff.in ++++ b/zdiff.in +@@ -156,12 +156,11 @@ case $file2 in + *) TMPDIR=/tmp/;; + esac + if command -v mktemp >/dev/null 2>&1; then +- tmp=`mktemp "${TMPDIR}zdiffXXXXXXXXX"` || +- exit 2 ++ tmp=`mktemp "${TMPDIR}zdiffXXXXXXXXX"` + else +- set -C + tmp=${TMPDIR}zdiff$$ +- fi ++ (umask 77; set -C; > "$tmp") ++ fi && + 'gzip' -cdfq -- "$file2" > "$tmp" || exit 2 + gzip_status=$( + exec 4>&1 +-- +cgit v1.2.3 diff --git a/pkgs/tools/compression/gzip/CVE-2026-41992.patch b/pkgs/tools/compression/gzip/CVE-2026-41992.patch new file mode 100644 index 000000000000..f7576a2b7872 --- /dev/null +++ b/pkgs/tools/compression/gzip/CVE-2026-41992.patch @@ -0,0 +1,35 @@ +From 63dbf6b3b9e6e781df1a6a64e609b10e23969681 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Wed, 15 Apr 2026 12:00:17 -0700 +Subject: gzip: don’t mishandle .lzh after .Z +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Problem reported by Michał Majchrowicz. +* unlzh.c (read_c_len): Clear left and right when n == 0. +--- + unlzh.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +(limited to 'unlzh.c') + +diff --git a/unlzh.c b/unlzh.c +index 3320196..a6cf109 100644 +--- a/unlzh.c ++++ b/unlzh.c +@@ -232,6 +232,12 @@ read_c_len () + c = getbits(CBIT); + for (i = 0; i < NC; i++) c_len[i] = 0; + for (i = 0; i < 4096; i++) c_table[i] = c; ++ ++ /* Needed in case LEFT and RIGHT are reused from a previous ++ LZW decompression. It may be overkill to clear all of both ++ arrays, but nobody has had time to analyze this carefully. */ ++ memzero(left, (2 * NC - 1) * sizeof *left); ++ memzero(right, (2 * NC - 1) * sizeof *left); + } else { + i = 0; + while (i < n) { +-- +cgit v1.3 diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix index 446e5fab0af8..6aafcf6481df 100644 --- a/pkgs/tools/compression/gzip/default.nix +++ b/pkgs/tools/compression/gzip/default.nix @@ -25,6 +25,11 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-Aae4gb0iC/32Ffl7hxj4C9/T9q3ThbmT3Pbv0U6MCsY="; }; + patches = [ + ./CVE-2026-41991.patch + ./CVE-2026-41992.patch + ]; + outputs = [ "out" "man" From 4fadb90a41288f56f0d7856458d5fbdafd743999 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Wed, 1 Jul 2026 22:49:52 +0100 Subject: [PATCH 068/284] sdl3: 3.4.10 -> 3.4.12 Changes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.12 --- pkgs/by-name/sd/sdl3/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sd/sdl3/package.nix b/pkgs/by-name/sd/sdl3/package.nix index f5814d3f91b8..9345096f3fa7 100644 --- a/pkgs/by-name/sd/sdl3/package.nix +++ b/pkgs/by-name/sd/sdl3/package.nix @@ -70,7 +70,7 @@ assert lib.assertMsg (ibusSupport -> dbusSupport) "SDL3 requires dbus support to stdenv.mkDerivation (finalAttrs: { pname = "sdl3"; - version = "3.4.10"; + version = "3.4.12"; outputs = [ "lib" @@ -83,7 +83,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "libsdl-org"; repo = "SDL"; tag = "release-${finalAttrs.version}"; - hash = "sha256-6Dph2eLiJUmpQzPWe8EuY5LrWhrFwde2f2dwfgCcWNw="; + hash = "sha256-b6l3HgdhqIe9LazJmLivbCJgbKPAS8S54fuB9xvgalI="; }; postPatch = From c516683a6a4fe1baac0a0d6d707fc1441dd79cda Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 2 Jul 2026 00:09:22 +0000 Subject: [PATCH 069/284] libjxl: 0.11.2 -> 0.12.0 --- pkgs/by-name/li/libjxl/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libjxl/package.nix b/pkgs/by-name/li/libjxl/package.nix index ce50b109a961..c09bce6f9488 100644 --- a/pkgs/by-name/li/libjxl/package.nix +++ b/pkgs/by-name/li/libjxl/package.nix @@ -31,7 +31,7 @@ in stdenv.mkDerivation rec { pname = "libjxl"; - version = "0.11.2"; + version = "0.12.0"; outputs = [ "out" @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { owner = "libjxl"; repo = "libjxl"; tag = "v${version}"; - hash = "sha256-L4/BY68ZBCpebQxryR7D1CxrsneYvw8B8EvW2mkF7bA="; + hash = "sha256-rJyvJo1ZveE1pvMErK9ilFQA0NXkD2ka93L+1gXeqf8="; # There are various submodules in `third_party/`. fetchSubmodules = true; }; From c5423a5587e9dac3453be777ac08170f47ae26af Mon Sep 17 00:00:00 2001 From: Audrey Dutcher Date: Wed, 1 Jul 2026 16:55:05 -0700 Subject: [PATCH 070/284] python3Packages.{pyside6,shiboken,shiboken-generator}: 6.11.0 -> 6.11.1 --- pkgs/development/python-modules/pyside6/default.nix | 5 ----- .../python-modules/pyside6/fix-paths.patch | 13 ------------- .../python-modules/shiboken6-generator/default.nix | 4 ++-- 3 files changed, 2 insertions(+), 20 deletions(-) delete mode 100644 pkgs/development/python-modules/pyside6/fix-paths.patch diff --git a/pkgs/development/python-modules/pyside6/default.nix b/pkgs/development/python-modules/pyside6/default.nix index f8165e7e8bc0..402400afaca0 100644 --- a/pkgs/development/python-modules/pyside6/default.nix +++ b/pkgs/development/python-modules/pyside6/default.nix @@ -10,7 +10,6 @@ shiboken6, llvmPackages, symlinkJoin, - fetchpatch, }: let packages = with python.pkgs.qt6; [ @@ -59,10 +58,6 @@ stdenv.mkDerivation (finalAttrs: { sourceRoot = "${finalAttrs.src.name}/sources/pyside6"; - patches = [ - ./fix-paths.patch - ]; - # Qt Designer plugin moved to a separate output to reduce closure size # for downstream things outputs = [ diff --git a/pkgs/development/python-modules/pyside6/fix-paths.patch b/pkgs/development/python-modules/pyside6/fix-paths.patch deleted file mode 100644 index f064dbc046b5..000000000000 --- a/pkgs/development/python-modules/pyside6/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/libpyside/CMakeLists.txt -+++ b/libpyside/CMakeLists.txt -@@ -162,8 +162,8 @@ configure_package_config_file( - - # Install-tree / wheel configuration - set(PYSIDE_PYTHONPATH "") --set(PYSIDE_TYPESYSTEMS "typesystems") --set(PYSIDE_GLUE "glue") -+set(PYSIDE_TYPESYSTEMS "share/PySide6${pyside6_SUFFIX}/typesystems") -+set(PYSIDE_GLUE "share/PySide6${pyside6_SUFFIX}/glue") - set(PYSIDE_SOVERSION "${pyside6_library_so_version}") - - configure_package_config_file( diff --git a/pkgs/development/python-modules/shiboken6-generator/default.nix b/pkgs/development/python-modules/shiboken6-generator/default.nix index 680a952cdcfa..efb0e527ae14 100644 --- a/pkgs/development/python-modules/shiboken6-generator/default.nix +++ b/pkgs/development/python-modules/shiboken6-generator/default.nix @@ -12,12 +12,12 @@ let in stdenv'.mkDerivation (finalAttrs: { pname = "shiboken6-generator"; - version = "6.11.0"; + version = "6.11.1"; src = fetchgit { url = "https://code.qt.io/pyside/pyside-setup.git"; tag = "v${finalAttrs.version}"; - hash = "sha256-UbvH+wNiXjfMhaRUODx3p2cJmAz/dJ5kjPSprGKwsYg="; + hash = "sha256-m1vBGIUOgjx+0/MkiCASP6HaX5YM2B/txnbww7dKjCk="; }; patches = [ From 5178946d548b0247d75d9e65a956f3a8f8bd3e34 Mon Sep 17 00:00:00 2001 From: Audrey Dutcher Date: Wed, 1 Jul 2026 16:55:50 -0700 Subject: [PATCH 071/284] python3Packages.pyside6-qtads: 4.5.0 -> 5.0.0 --- .../python-modules/pyside6-qtads/default.nix | 10 ++++----- .../pyside6-qtads/find-nix-deps.patch | 22 ++++++++++--------- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/pkgs/development/python-modules/pyside6-qtads/default.nix b/pkgs/development/python-modules/pyside6-qtads/default.nix index 41abea11a295..224cb933d1c8 100644 --- a/pkgs/development/python-modules/pyside6-qtads/default.nix +++ b/pkgs/development/python-modules/pyside6-qtads/default.nix @@ -8,19 +8,19 @@ qt6, setuptools, setuptools-scm, - shiboken6, + shiboken6-generator, }: buildPythonPackage rec { pname = "pyside6-qtads"; - version = "4.5.0"; + version = "5.0.0"; pyproject = true; src = fetchFromGitHub { owner = "mborgerson"; repo = "pyside6_qtads"; tag = "v${version}"; - hash = "sha256-rAkv6dFyS4Nw3FDLwZ1zp0EU4BhD/xrhNgUiIIktJ8s="; + hash = "sha256-pSgDdfOuEnluiKKnCJjxVZbQwZld4tr7G2S8ZZXJkvo="; fetchSubmodules = true; }; @@ -29,7 +29,7 @@ buildPythonPackage rec { postPatch = '' substituteInPlace setup.py \ - --replace-fail @shiboken6@ ${shiboken6} \ + --replace-fail @shiboken6@ ${shiboken6-generator} \ --replace-fail @pyside6@ ${pyside6} # can't use pythonRelaxDepsHook because it runs postBuild but the dependency check @@ -56,7 +56,7 @@ buildPythonPackage rec { dependencies = [ pyside6 - shiboken6 + shiboken6-generator ]; nativeBuildInputs = [ pythonRelaxDepsHook ]; diff --git a/pkgs/development/python-modules/pyside6-qtads/find-nix-deps.patch b/pkgs/development/python-modules/pyside6-qtads/find-nix-deps.patch index 5ec2f5ab8259..d6ae7e61d63d 100644 --- a/pkgs/development/python-modules/pyside6-qtads/find-nix-deps.patch +++ b/pkgs/development/python-modules/pyside6-qtads/find-nix-deps.patch @@ -1,38 +1,40 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0c0568a..f12d50e 100644 +index 84a6527..9483c70 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -105,15 +105,17 @@ macro(pyside_config option output_var) +@@ -106,17 +106,17 @@ macro(pyside_config option output_var) endmacro() - # Query for the shiboken generator path, Python path, include paths and linker flags. + # Query for the shiboken6-generator path, PySide6 path, Python path, include paths and linker flags. +find_package(Shiboken6 REQUIRED) +find_package(PySide6 REQUIRED) pyside_config(--shiboken-module-path shiboken_module_path) -pyside_config(--shiboken-generator-path shiboken_generator_path) -pyside_config(--pyside-path pyside_path) --pyside_config(--pyside-include-path pyside_include_dir 1) +- +set(shiboken_generator_path "" CACHE PATH "Path where shiboken6 executable can be found") +set(pyside_path "" CACHE PATH "pyside share path, where typesystems dir can be found") +get_target_property(pyside_include_dir PySide6::pyside6 INTERFACE_INCLUDE_DIRECTORIES) pyside_config(--python-include-path python_include_dir) --pyside_config(--shiboken-generator-include-path shiboken_include_dir 1) --pyside_config(--shiboken-module-shared-libraries-cmake shiboken_shared_libraries 0) +-pyside_config(--shiboken-include-path shiboken_include_dir 1) +-pyside_config(--pyside-include-path pyside_include_dir 1) +- +get_target_property(shiboken_include_dir Shiboken6::libshiboken INTERFACE_INCLUDE_DIRECTORIES) +get_target_property(shiboken_shared_libraries Shiboken6::libshiboken IMPORTED_LOCATION_RELEASE) pyside_config(--python-link-flags-cmake python_linking_data 0) +-pyside_config(--shiboken-module-shared-libraries-cmake shiboken_module_shared_libraries 0) -pyside_config(--pyside-shared-libraries-cmake pyside_shared_libraries 0) +get_target_property(pyside_shared_libraries PySide6::pyside6 IMPORTED_LOCATION_RELEASE) - set(shiboken_path "${shiboken_generator_path}/shiboken6${CMAKE_EXECUTABLE_SUFFIX}") - if(NOT EXISTS ${shiboken_path}) + # Print the computed variables + message(STATUS "Shiboken module path: ${shiboken_module_path}") diff --git a/setup.py b/setup.py -index 802821b..f522818 100644 +index 84cda9c..05139d1 100644 --- a/setup.py +++ b/setup.py @@ -88,7 +88,9 @@ setuptools.setup( "-DBUILD_STATIC:BOOL=ON", - "-DADS_VERSION=4.3.0", + "-DADS_VERSION=5.0.0", f"-DPython3_ROOT_DIR={Path(sys.prefix)}", - f"-DPython_EXECUTABLE={Path(sys.executable)}" + f"-DPython_EXECUTABLE={Path(sys.executable)}", From dd405da7eb365091fa682d40fe24b77c908905c1 Mon Sep 17 00:00:00 2001 From: whispers Date: Wed, 1 Jul 2026 21:51:12 -0400 Subject: [PATCH 072/284] libevent: 2.1.12 -> 2.1.13 changes: https://github.com/libevent/libevent/releases/tag/release-2.1.13-stable diff: https://github.com/libevent/libevent/compare/release-2.1.12-stable...release-2.1.13-stable Fixes: GHSA-fj29-64w6-73h6, GHSA-45c6-qx49-89m8, GHSA-2gmv-p5m7-98p6, GHSA-q39v-w2g7-gr8j, GHSA-jcwh-pvf2-73p2, GHSA-cvq5-vrvr-j338, GHSA-c2pj-cg4r-88c8, GHSA-58rx-7448-jw47, GHSA-5rgj-2c58-7jrc --- pkgs/by-name/li/libevent/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libevent/package.nix b/pkgs/by-name/li/libevent/package.nix index fd8da373bf01..d220a63c4963 100644 --- a/pkgs/by-name/li/libevent/package.nix +++ b/pkgs/by-name/li/libevent/package.nix @@ -14,11 +14,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "libevent"; - version = "2.1.12"; + version = "2.1.13"; src = fetchurl { url = "https://github.com/libevent/libevent/releases/download/release-${finalAttrs.version}-stable/libevent-${finalAttrs.version}-stable.tar.gz"; - sha256 = "1fq30imk8zd26x8066di3kpc5zyfc5z6frr3zll685zcx4dxxrlj"; + hash = "sha256-9+k4O4wLqoG2h+W17swBvu+vGxm2QVHZXtYWR/56MVw="; }; patches = [ From 76fd246bc5a079068a954f20aa02fb7dfb666205 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 2 Jul 2026 09:05:29 +0000 Subject: [PATCH 073/284] libva-minimal: 2.23.0 -> 2.24.0 --- pkgs/development/libraries/libva/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libva/default.nix b/pkgs/development/libraries/libva/default.nix index 7e383fa49352..d8b9cb278773 100644 --- a/pkgs/development/libraries/libva/default.nix +++ b/pkgs/development/libraries/libva/default.nix @@ -27,13 +27,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libva" + lib.optionalString minimal "-minimal"; - version = "2.23.0"; + version = "2.24.0"; src = fetchFromGitHub { owner = "intel"; repo = "libva"; rev = finalAttrs.version; - sha256 = "sha256-ePtzZPzBnkhV0cV3Nw/pgOnKnzDkk7U2Svzo0e1YMbc="; + sha256 = "sha256-NDh8XI1JJPegDXO2nH2XKVywp25Su/ytgR1OHI7nvdI="; }; outputs = [ From d0a2b56b4fd0927ebf3a4ef599b388f21bbb619b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 1 Jul 2026 23:58:53 +0200 Subject: [PATCH 074/284] python314Packages.ipython: disable timing sensitive tests --- pkgs/development/python-modules/ipython/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/ipython/default.nix b/pkgs/development/python-modules/ipython/default.nix index 9d9e1d227c5b..208bc638c649 100644 --- a/pkgs/development/python-modules/ipython/default.nix +++ b/pkgs/development/python-modules/ipython/default.nix @@ -85,7 +85,12 @@ buildPythonPackage (finalAttrs: { testpath ]; - disabledTests = lib.optionals (stdenv.hostPlatform.isDarwin) [ + disabledTests = [ + # timing sensitive + "test_debug_magic_passes_through_generators" + "test_nest_embed" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ # FileNotFoundError: [Errno 2] No such file or directory: 'pbpaste' "test_clipboard_get" ]; From b9d7f2b1a0559d5434ff86984eb617058d4cb71a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= Date: Thu, 2 Jul 2026 13:23:24 +0000 Subject: [PATCH 075/284] libjxl: Update comments * 0.12 removed the GIMP plugin as it's now in GIMP, see https://github.com/NixOS/nixpkgs/pull/537623#issuecomment-4866205199 * In genreal plugins are now built, so this got outdated by: * https://github.com/NixOS/nixpkgs/pull/299988 * https://github.com/NixOS/nixpkgs/pull/306127 --- pkgs/by-name/li/libjxl/package.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/by-name/li/libjxl/package.nix b/pkgs/by-name/li/libjxl/package.nix index c09bce6f9488..169c82036368 100644 --- a/pkgs/by-name/li/libjxl/package.nix +++ b/pkgs/by-name/li/libjxl/package.nix @@ -67,7 +67,6 @@ stdenv.mkDerivation rec { # that the cmake build can apparently use: # OpenGL/GLUT (for Examples -> comparison with sjpeg) # viewer (see `cmakeFlags`) - # plugins like for GDK and GIMP (see `cmakeFlags`) # Vendored libraries: # `libjxl` currently vendors many libraries as git submodules that they @@ -125,7 +124,6 @@ stdenv.mkDerivation rec { ++ lib.optionals enablePlugins [ # Enable plugins, such as: # * the `gdk-pixbuf` one, which allows applications like `eog` to load jpeg-xl files - # * the `gimp` one, which allows GIMP to load jpeg-xl files "-DJPEGXL_ENABLE_PLUGINS=ON" ] ++ lib.optionals stdenv.hostPlatform.isStatic [ From c8369558a81876a37fb6333027398e54843a326a Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 14 Jun 2026 21:15:21 +0100 Subject: [PATCH 076/284] netpbm: 11.14.0 -> 11.15.1 --- pkgs/by-name/ne/netpbm/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ne/netpbm/package.nix b/pkgs/by-name/ne/netpbm/package.nix index 0b6ea0555c86..4d338fb84d4c 100644 --- a/pkgs/by-name/ne/netpbm/package.nix +++ b/pkgs/by-name/ne/netpbm/package.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { # Determine version and revision from: # https://sourceforge.net/p/netpbm/code/HEAD/log/?path=/advanced pname = "netpbm"; - version = "11.14.0"; + version = "11.15.1"; outputs = [ "bin" @@ -31,8 +31,8 @@ stdenv.mkDerivation (finalAttrs: { src = fetchsvn { url = "https://svn.code.sf.net/p/netpbm/code/advanced"; - rev = "5182"; - sha256 = "sha256-VbVN08WVXQYXlEBK1yIKj5aIWWaBhim4rQc68ViA/vA="; + rev = "5227"; + sha256 = "sha256-Lr02cu7OAPv+wjKjPkA0wyZ0VvurUuCf5IJXjmCAE0I="; }; nativeBuildInputs = [ From dac44d4a952eb3c4da690aad741c1e3254788429 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 3 Jul 2026 00:29:35 +0000 Subject: [PATCH 077/284] unixodbcDrivers.psql: 18.00.0001 -> 18.00.0002 --- pkgs/by-name/ps/psqlodbc/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ps/psqlodbc/package.nix b/pkgs/by-name/ps/psqlodbc/package.nix index e62928863aac..b38c756eee66 100644 --- a/pkgs/by-name/ps/psqlodbc/package.nix +++ b/pkgs/by-name/ps/psqlodbc/package.nix @@ -18,13 +18,13 @@ assert lib.xor withLibiodbc withUnixODBC; stdenv.mkDerivation (finalAttrs: { pname = "psqlodbc"; - version = "18.00.0001"; + version = "18.00.0002"; src = fetchFromGitHub { owner = "postgresql-interfaces"; repo = "psqlodbc"; tag = "REL-${lib.replaceString "." "_" finalAttrs.version}"; - hash = "sha256-gCacZjP0FkCEuZRBfawZ2B3BcjR/sV1fypuT8XD2l+A="; + hash = "sha256-qzbyo9P/o784Ux3KDA8NDMbcm0EbnfG8LiBLRk6n698="; }; buildInputs = [ From 08c17b3d486d591e6478bdfc35ad47fa3686e2e6 Mon Sep 17 00:00:00 2001 From: SandaruKasa Date: Mon, 15 Jun 2026 02:34:05 +0300 Subject: [PATCH 078/284] pcre2: `finalAttrs` does not change the eval --- pkgs/development/libraries/pcre2/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix index 503c9aacc910..11951e271162 100644 --- a/pkgs/development/libraries/pcre2/default.nix +++ b/pkgs/development/libraries/pcre2/default.nix @@ -8,12 +8,12 @@ withJitSealloc ? !(stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isAbiElfv1), }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "pcre2"; version = "10.47"; src = fetchurl { - url = "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-${version}/pcre2-${version}.tar.bz2"; + url = "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-${finalAttrs.version}/pcre2-${finalAttrs.version}.tar.bz2"; hash = "sha256-R/6MmUYSUNQviebo/a66naBXhV0G63/AjZygP9CNe8c="; }; @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { meta = { homepage = "https://www.pcre.org/"; - changelog = "https://github.com/PCRE2Project/pcre2/releases/tag/pcre2-${version}"; + changelog = "https://github.com/PCRE2Project/pcre2/releases/tag/pcre2-${finalAttrs.version}"; description = "Perl Compatible Regular Expressions"; license = lib.licenses.bsd3; maintainers = [ ]; @@ -54,6 +54,6 @@ stdenv.mkDerivation rec { "libpcre2-16" "libpcre2-32" ]; - identifiers.cpeParts = lib.meta.cpeFullVersionWithVendor "pcre" version; + identifiers.cpeParts = lib.meta.cpeFullVersionWithVendor "pcre" finalAttrs.version; }; -} +}) From 5985f549584a93f543f141d5b22187091ce06c75 Mon Sep 17 00:00:00 2001 From: SandaruKasa Date: Mon, 15 Jun 2026 02:36:52 +0300 Subject: [PATCH 079/284] pcre2: `__structuredAttrs`, `strictDeps`, `enableParallelBuilding` `nix store make-content-addressed` gives the same output before and after this change. --- pkgs/development/libraries/pcre2/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix index 11951e271162..d846f87c0e42 100644 --- a/pkgs/development/libraries/pcre2/default.nix +++ b/pkgs/development/libraries/pcre2/default.nix @@ -17,6 +17,10 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-R/6MmUYSUNQviebo/a66naBXhV0G63/AjZygP9CNe8c="; }; + __structuredAttrs = true; + strictDeps = true; + enableParallelBuilding = true; + nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ]; configureFlags = [ From 8746d3caee7a256a2a1638da3e357ae666a6f47d Mon Sep 17 00:00:00 2001 From: Matthew Donoughe Date: Mon, 16 Feb 2026 17:28:13 -0500 Subject: [PATCH 080/284] glibc: set default zonedir to match fhs --- pkgs/development/libraries/glibc/common.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 9b2946d019fb..533a4b453909 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -208,7 +208,12 @@ stdenv.mkDerivation ( makeFlags = (args.makeFlags or [ ]) - ++ [ "OBJCOPY=${stdenv.cc.targetPrefix}objcopy" ] + ++ [ + "OBJCOPY=${stdenv.cc.targetPrefix}objcopy" + # zonedir does nothing on NixOS but is important for non-NixOS. + # See https://github.com/NixOS/nixpkgs/pull/491193 + "zonedir=/usr/share/zoneinfo" + ] ++ lib.optionals (stdenv.cc.libc != null) [ "BUILD_LDFLAGS=-Wl,-rpath,${stdenv.cc.libc}/lib" "OBJDUMP=${stdenv.cc.bintools.bintools}/bin/objdump" From 17e6e533cc76bc80c9d502c02180f11598283483 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Fri, 3 Jul 2026 21:32:03 +0200 Subject: [PATCH 081/284] uvwasi: add support for static-only builds --- pkgs/by-name/uv/uvwasi/package.nix | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkgs/by-name/uv/uvwasi/package.nix b/pkgs/by-name/uv/uvwasi/package.nix index 8d48132e945e..5194fdc7ab07 100644 --- a/pkgs/by-name/uv/uvwasi/package.nix +++ b/pkgs/by-name/uv/uvwasi/package.nix @@ -8,6 +8,7 @@ stdenv, testers, validatePkgConfig, + static ? stdenv.hostPlatform.isStatic, # generates static libraries *only* }: stdenv.mkDerivation (finalAttrs: { @@ -21,6 +22,20 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-+vz/qTMRRDHV1VE4nny9vYYtarZHk1xoM4EZiah3jnY="; }; + patches = [ + # FIXME: remove when included in a release + (fetchpatch2 { + url = "https://github.com/nodejs/uvwasi/commit/0820128569533c855d60c0f6382acbb14aa62ad2.patch?full_index=1"; + hash = "sha256-psjivoarqisOuCdVJAWuFH0aITzwb/obmal3ewVXvG4="; + }) + ]; + postPatch = lib.optionalString static '' + substituteInPlace CMakeLists.txt --replace-fail 'TARGETS uvwasi_a uvwasi' 'TARGETS uvwasi_a' + ''; + cmakeFlags = [ + (lib.cmakeBool "UVWASI_BUILD_SHARED" (!static)) + ]; + outputs = [ "out" ]; From 9fb8d43cff63c5c082da6697ab44670b55e7346d Mon Sep 17 00:00:00 2001 From: Ethan Carter Edwards Date: Fri, 3 Jul 2026 21:18:07 -0400 Subject: [PATCH 082/284] buildTypstPackage: enable strictDeps, __structuredAttrs Signed-off-by: Ethan Carter Edwards --- pkgs/build-support/build-typst-package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/build-support/build-typst-package.nix b/pkgs/build-support/build-typst-package.nix index 13e1ddd2537c..ead6d68a1395 100644 --- a/pkgs/build-support/build-typst-package.nix +++ b/pkgs/build-support/build-typst-package.nix @@ -40,6 +40,9 @@ lib.extendMkDerivation { { name = "typst-package-${finalAttrs.pname}-${finalAttrs.version}"; + strictDeps = true; + __structuredAttrs = true; + dontBuild = true; installPhase = From b70af925f2d5cda466c203a79dc487ec3a2b4ddc Mon Sep 17 00:00:00 2001 From: Hraban Date: Sat, 4 Jul 2026 15:43:45 -0400 Subject: [PATCH 083/284] sbcl: 2.6.5 -> 2.6.6 --- pkgs/development/compilers/sbcl/default.nix | 2 +- pkgs/top-level/all-packages.nix | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index 73d3cc08df88..78938c21cfc9 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -30,8 +30,8 @@ let "2.4.10".sha256 = "sha256-zus5a2nSkT7uBIQcKva+ylw0LOFGTD/j5FPy3hDF4vg="; # By unofficial and very loose convention we keep the latest version of # SBCL, and the previous one in case someone quickly needs to roll back. - "2.6.4".sha256 = "sha256-O6U+ZUtg/rfE9QRmGZ1tUmDyZhxxG6ItS3cLZVQA1Xs="; "2.6.5".sha256 = "sha256-kex19kclLtbmrq6bGhP0fHxs/ZtoSI3Gnxpv6lrMtEA="; + "2.6.6".sha256 = "sha256-plp6MIEqr1SSXRGSubnoEPUnx5kRxgALdUgQWu99o0s="; }; # Collection of pre-built SBCL binaries for platforms that need them for # bootstrapping. Ideally these are to be avoided. If ECL (or any other diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 63838e08073a..985a71a778cd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7537,14 +7537,6 @@ with pkgs; ]; }; - sbcl_2_6_4 = wrapLisp { - pkg = callPackage ../development/compilers/sbcl { version = "2.6.4"; }; - faslExt = "fasl"; - flags = [ - "--dynamic-space-size" - "3000" - ]; - }; sbcl_2_6_5 = wrapLisp { pkg = callPackage ../development/compilers/sbcl { version = "2.6.5"; }; faslExt = "fasl"; @@ -7553,7 +7545,15 @@ with pkgs; "3000" ]; }; - sbcl = sbcl_2_6_5; + sbcl_2_6_6 = wrapLisp { + pkg = callPackage ../development/compilers/sbcl { version = "2.6.6"; }; + faslExt = "fasl"; + flags = [ + "--dynamic-space-size" + "3000" + ]; + }; + sbcl = sbcl_2_6_6; sbclPackages = recurseIntoAttrs sbcl.pkgs; From d15b45bb338629e08d6830d37650ba33febed81f Mon Sep 17 00:00:00 2001 From: Hraban Date: Sat, 4 Jul 2026 15:46:19 -0400 Subject: [PATCH 084/284] sbcl: add iolib and stumpwm to passthru.tests --- pkgs/development/compilers/sbcl/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index 78938c21cfc9..112349190c1f 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -7,7 +7,9 @@ coreutils, fetchurl, ps, + sbclPackages, # for passthru.tests strace, + stumpwm, # for passthru.tests texinfo, which, writableTmpDirAsHomeHook, @@ -308,6 +310,11 @@ stdenv.mkDerivation (finalAttrs: { __darwinAllowLocalNetworking = true; + passthru.tests = { + inherit stumpwm; + inherit (sbclPackages) iolib; + }; + meta = { # Broken since 2025-09-05 https://hydra.nixos.org/job/nixpkgs/staging-next/sbcl.x86_64-darwin broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64; From a2904ce42c3c5b6581a0dadffbcfcd27078ddcb5 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sun, 5 Jul 2026 11:16:30 +0300 Subject: [PATCH 085/284] python3Packages.numpy: 2.5.0 -> 2.5.1 Diff: https://github.com/numpy/numpy/compare/v2.5.0...v2.5.1 Changelog: https://github.com/numpy/numpy/releases/tag/v2.5.1 --- pkgs/development/python-modules/numpy/2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/numpy/2.nix b/pkgs/development/python-modules/numpy/2.nix index e097ad7bb298..b7c7d6798901 100644 --- a/pkgs/development/python-modules/numpy/2.nix +++ b/pkgs/development/python-modules/numpy/2.nix @@ -37,7 +37,7 @@ assert blas.isILP64 == lapack.isILP64; buildPythonPackage (finalAttrs: { pname = "numpy"; - version = "2.5.0"; + version = "2.5.1"; pyproject = true; src = fetchFromGitHub { @@ -45,7 +45,7 @@ buildPythonPackage (finalAttrs: { repo = "numpy"; tag = "v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-RiC1dLoDamK5B2VzHBL0V//K/Vix25q11wNGcl3Witk="; + hash = "sha256-IriSrnGAZHvJ7m97s12BydNQZDZunCVtRgj/iSgw5Vc="; }; postPatch = '' From bd08be1bd2eebea287857355095d8f1271f8ceb0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 5 Jul 2026 12:41:38 +0000 Subject: [PATCH 086/284] bash-completion: 2.17.0 -> 2.18.0 --- pkgs/by-name/ba/bash-completion/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ba/bash-completion/package.nix b/pkgs/by-name/ba/bash-completion/package.nix index f7c9b961c948..306014c22dde 100644 --- a/pkgs/by-name/ba/bash-completion/package.nix +++ b/pkgs/by-name/ba/bash-completion/package.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "bash-completion"; - version = "2.17.0"; + version = "2.18.0"; # Using fetchurl because fetchGithub or fetchzip will have trouble on # e.g. APFS filesystems (macOS) because of non UTF-8 characters in some of the @@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: { # See discussion in https://github.com/NixOS/nixpkgs/issues/107768 src = fetchurl { url = "https://github.com/scop/bash-completion/releases/download/${finalAttrs.version}/bash-completion-${finalAttrs.version}.tar.xz"; - hash = "sha256-3Z2CXklkNfs766Oue+qfd+gh6JRmfQdDHR1MjFcLnlg="; + hash = "sha256-iLz4UST3f3Ty8vi80WrEOC2AeoJ+3nQqZJQMcRauoz8="; }; postPatch = '' From 154f4693b95591112f77ae07ef511f09dbba8bc8 Mon Sep 17 00:00:00 2001 From: Sergei Zimmerman Date: Thu, 2 Jul 2026 18:11:51 +0300 Subject: [PATCH 087/284] ffmpeg: don't clobber clang build with unwrapped compiler This is my SNAFU from 817b0e1338faca6deebeb9fca8beeef8409dbeea. In a clang stdenv the host compiler would be the unwrapped clang, obviously breaking things. This has caused issues on darwin [1]. pkgsLLVM.ffmpeg-headless seems broken, but I tested this on darwin without #531960 fix and it did the trick. [1]: https://github.com/NixOS/nixpkgs/pull/531960 --- pkgs/development/libraries/ffmpeg/generic.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 46a32fec2e7e..d036b01bb5c9 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -249,7 +249,6 @@ celt, chromaprint, codec2, - clang, dav1d, davs2, fdk_aac, @@ -805,6 +804,10 @@ stdenv.mkDerivation ( "--cc=${stdenv.cc.targetPrefix}clang" "--cxx=${stdenv.cc.targetPrefix}clang++" ] + ++ optionals withCudaLLVM [ + # Unwrapped compiler because it will be retargeted and used freestanding with --cuda-device-only. + "--nvcc=${lib.getExe buildPackages.clang.cc}" + ] ++ optionals withMetal [ "--metalcc=${xcode}/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/metal" "--metallib=${xcode}/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/metallib" @@ -834,7 +837,6 @@ stdenv.mkDerivation ( ++ optionals stdenv.hostPlatform.isx86 [ nasm ] # Texinfo version 7.1 introduced breaking changes, which older versions of ffmpeg do not handle. ++ optionals (lib.versionAtLeast version "6") [ texinfo ] - ++ optionals withCudaLLVM [ clang.cc ] ++ optionals withCudaNVCC [ cuda_nvcc ] # TODO: Clean up on `staging`. ++ optionals stdenv.hostPlatform.isDarwin [ llvmPackages.lld ]; From f8219af8483808b16116442a0b9338287c68a369 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 5 Jul 2026 18:24:14 -0700 Subject: [PATCH 088/284] lerc: 4.1.0 -> 4.1.1 Diff: https://github.com/esri/lerc/compare/v4.1.0...v4.1.1 Changelog: https://github.com/Esri/lerc/blob/v4.1.1/CHANGELOG.md --- pkgs/by-name/le/lerc/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/le/lerc/package.nix b/pkgs/by-name/le/lerc/package.nix index 9cf5725679dd..7765b5e8b9a6 100644 --- a/pkgs/by-name/le/lerc/package.nix +++ b/pkgs/by-name/le/lerc/package.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "lerc"; - version = "4.1.0"; + version = "4.1.1"; outputs = [ "out" @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "esri"; repo = "lerc"; tag = "v${finalAttrs.version}"; - hash = "sha256-+X30DQuq2oT/sTe8usUaNK1V+UTNvXJW7IAJVIr8m78="; + hash = "sha256-YTNIydQLCBzsuvPWA6qnOkOIPf9JlByJdNHkTevE7Z0="; }; # Required to get the freebsd-ports patch to apply. From 0c409ea61899f8fde15d13417a422285670d619c Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 6 Jul 2026 16:02:31 +0300 Subject: [PATCH 089/284] python3Packages.fastapi: use finalAttrs pattern --- pkgs/development/python-modules/fastapi/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index e7c8a426fae7..6e0eedc3d4a9 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -38,7 +38,7 @@ pydantic-extra-types, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "fastapi"; version = "0.136.3"; pyproject = true; @@ -46,7 +46,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "tiangolo"; repo = "fastapi"; - tag = version; + tag = finalAttrs.version; hash = "sha256-lfmk8ZveKPukEEfwWq2mKtWmOHAtVzGuE5BsOskDzh0="; }; @@ -116,7 +116,7 @@ buildPythonPackage rec { pytest-timeout ] ++ anyio.optional-dependencies.trio - ++ optional-dependencies.all; + ++ finalAttrs.finalPackage.passthru.optional-dependencies.all; disabledTests = [ # Coverage test @@ -134,10 +134,10 @@ buildPythonPackage rec { pythonImportsCheck = [ "fastapi" ]; meta = { - changelog = "https://github.com/fastapi/fastapi/releases/tag/${src.tag}"; + changelog = "https://github.com/fastapi/fastapi/releases/tag/${finalAttrs.src.tag}"; description = "Web framework for building APIs"; homepage = "https://github.com/fastapi/fastapi"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ wd15 ]; }; -} +}) From 40d7bc5a60a5fd585a5818977c9f25ac0dbcef98 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 6 Jul 2026 16:02:46 +0300 Subject: [PATCH 090/284] python3Packages.fastapi: 0.136.3 -> 0.139.0 Diff: https://github.com/tiangolo/fastapi/compare/0.136.3...0.139.0 Changelog: https://github.com/fastapi/fastapi/releases/tag/0.139.0 --- pkgs/development/python-modules/fastapi/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index 6e0eedc3d4a9..af0831bb11ca 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -27,7 +27,7 @@ # optional-dependencies fastapi-cli, - httpx, + httpx2, jinja2, itsdangerous, python-multipart, @@ -40,14 +40,14 @@ buildPythonPackage (finalAttrs: { pname = "fastapi"; - version = "0.136.3"; + version = "0.139.0"; pyproject = true; src = fetchFromGitHub { owner = "tiangolo"; repo = "fastapi"; tag = finalAttrs.version; - hash = "sha256-lfmk8ZveKPukEEfwWq2mKtWmOHAtVzGuE5BsOskDzh0="; + hash = "sha256-c4balkkmBv7zKRQnYRpRohVjP23m0HvtdiVrJtgNKYo="; }; build-system = [ pdm-backend ]; @@ -63,7 +63,7 @@ buildPythonPackage (finalAttrs: { optional-dependencies = { all = [ fastapi-cli - httpx + httpx2 jinja2 python-multipart itsdangerous @@ -78,7 +78,7 @@ buildPythonPackage (finalAttrs: { standard = [ fastapi-cli # FIXME package fastar - httpx + httpx2 jinja2 python-multipart email-validator @@ -90,7 +90,7 @@ buildPythonPackage (finalAttrs: { ++ uvicorn.optional-dependencies.standard; standard-no-fastapi-cloud-cli = [ fastapi-cli - httpx + httpx2 jinja2 python-multipart email-validator From 22ab7ac180af00130df05c8fc03e65df72d42f4c Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 6 Jul 2026 16:14:35 +0300 Subject: [PATCH 091/284] python3Packages.fastapi: set strictDeps & __structuredAttrs --- pkgs/development/python-modules/fastapi/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index af0831bb11ca..60dbe8fbfaf0 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -42,6 +42,8 @@ buildPythonPackage (finalAttrs: { pname = "fastapi"; version = "0.139.0"; pyproject = true; + __structuredAttrs = true; + strictDeps = true; src = fetchFromGitHub { owner = "tiangolo"; From c9bccd97ca86a84cb4cce385a85e0141fa2dff9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= Date: Sun, 25 May 2025 20:58:21 +0000 Subject: [PATCH 092/284] glog: Enable generation of pkg-config .pc file so dependents can find it glog 0.7.0 changed the default to off: https://github.com/google/glog/commit/e1f424a7e29c5ca493cfa07a59c4ca859b680f14 --- pkgs/by-name/gl/glog/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/gl/glog/package.nix b/pkgs/by-name/gl/glog/package.nix index cfe37529d3b3..ef5fb3be4277 100644 --- a/pkgs/by-name/gl/glog/package.nix +++ b/pkgs/by-name/gl/glog/package.nix @@ -38,6 +38,8 @@ stdenv.mkDerivation (finalAttrs: { # consumers of the CMake config file to fail at the configuration step. # Explicitly disabling unwind support sidesteps the issue. "-DWITH_UNWIND=OFF" + # Enable pkg-config support so that a `.pc` file is generated. + "-DWITH_PKGCONFIG=ON" ]; doCheck = true; From 47f7109d73cf814264f925736523ae2b5bde52e7 Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Mon, 6 Jul 2026 17:43:04 +0200 Subject: [PATCH 093/284] tree-sitter-grammars: enable __structuredAttrs * Move existing env variables into env and stringify them, as is required. * `language` is used as an env variable by `jq`, so move it to env as well. * Do not clobber `env` if it exists, but merge in these attributes. --- .../tr/tree-sitter/grammars/build-grammar.nix | 39 ++++++++++++------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/pkgs/by-name/tr/tree-sitter/grammars/build-grammar.nix b/pkgs/by-name/tr/tree-sitter/grammars/build-grammar.nix index 598a14ff6ec3..177c031e1d62 100644 --- a/pkgs/by-name/tr/tree-sitter/grammars/build-grammar.nix +++ b/pkgs/by-name/tr/tree-sitter/grammars/build-grammar.nix @@ -37,21 +37,28 @@ stdenv.mkDerivation ( tree-sitter ]; - CFLAGS = [ - "-Isrc" - # Match upstream `tree-sitter build --wasm` - (if isWasi then "-Os" else "-O2") - ] - ++ lib.optionals isWasi [ - "-fvisibility=hidden" - ]; - CXXFLAGS = [ - "-Isrc" - (if isWasi then "-Os" else "-O2") - ] - ++ lib.optionals isWasi [ - "-fvisibility=hidden" - ]; + env = args.env or { } // { + CFLAGS = toString ( + [ + "-Isrc" + # Match upstream `tree-sitter build --wasm` + (if isWasi then "-Os" else "-O2") + ] + ++ lib.optionals isWasi [ + "-fvisibility=hidden" + ] + ); + CXXFLAGS = toString ( + [ + "-Isrc" + (if isWasi then "-Os" else "-O2") + ] + ++ lib.optionals isWasi [ + "-fvisibility=hidden" + ] + ); + inherit language; + }; stripDebugList = [ "parser" ]; @@ -170,5 +177,7 @@ stdenv.mkDerivation ( "generate" "excludeBrokenTreeSitterJson" "meta" + "language" + "env" ] ) From 26317899f1d6165752798f9b71601f7d7ddb618d Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 6 Jul 2026 23:39:45 +0200 Subject: [PATCH 094/284] python3Packages.hypothesis: 6.151.10 -> 6.156.1 https://hypothesis.readthedocs.io/en/latest/changelog.html#v6-156-1 --- .../python-modules/hypothesis/default.nix | 82 +++++++++---------- 1 file changed, 38 insertions(+), 44 deletions(-) diff --git a/pkgs/development/python-modules/hypothesis/default.nix b/pkgs/development/python-modules/hypothesis/default.nix index 6b2e44c08d79..c47616ad37ae 100644 --- a/pkgs/development/python-modules/hypothesis/default.nix +++ b/pkgs/development/python-modules/hypothesis/default.nix @@ -3,27 +3,43 @@ buildPythonPackage, isPyPy, fetchFromGitHub, - setuptools, attrs, + gitMinimal, pexpect, doCheck ? true, pytestCheckHook, pytest-xdist, + rustPlatform, sortedcontainers, - pythonAtLeast, + syrupy, tzdata, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "hypothesis"; - version = "6.151.10"; + version = "6.156.1"; pyproject = true; + __structuredAttrs = true; + src = fetchFromGitHub { owner = "HypothesisWorks"; repo = "hypothesis"; - tag = "hypothesis-python-${version}"; - hash = "sha256-zxX4zF6huOF7sTpVFAiN0iElxsW2C5BE0kiZbpPzXpc="; + tag = "v${finalAttrs.version}"; + hash = "sha256-Z3LffzA+tsJtvXebTayfRZo32b0LcU2RFDS6bAdCDqU="; + }; + + sourceRoot = "${finalAttrs.src.name}/hypothesis"; + + cargoRoot = "rust"; + cargoDeps = rustPlatform.fetchCargoVendor { + inherit (finalAttrs) + pname + version + src + cargoRoot + ; + hash = "sha256-WEuCK1jpemnNpO+UxsfpdAkFLSM0v2WRjZr3qmSLBJI="; }; # I tried to package sphinx-selective-exclude, but it throws @@ -39,9 +55,13 @@ buildPythonPackage rec { sed -i -e '/sphinx_selective_exclude.eager_only/ d' docs/conf.py ''; - postUnpack = "sourceRoot=$sourceRoot/hypothesis-python"; + nativeBuildInputs = [ + rustPlatform.cargoSetupHook + ]; - build-system = [ setuptools ]; + build-system = [ + rustPlatform.maturinBuildHook + ]; dependencies = [ attrs @@ -49,9 +69,11 @@ buildPythonPackage rec { ]; nativeCheckInputs = [ + gitMinimal pexpect pytest-xdist pytestCheckHook + (syrupy.overridePythonAttrs { doCheck = false; }) ] ++ lib.optionals isPyPy [ tzdata ]; @@ -65,8 +87,13 @@ buildPythonPackage rec { preCheck = '' rm tox.ini export HYPOTHESIS_PROFILE=ci + export TMPDIR=$(mktemp -d) ''; + pytestFlags = [ + "-o cache_dir=$TMPDIR/.pytest_cache" + ]; + enabledTestPaths = [ "tests/cover" ]; # Hypothesis by default activates several "Health Checks", including one that fires if the builder is "too slow". @@ -82,46 +109,13 @@ buildPythonPackage rec { setupHook = ./setup-hook.sh; disabledTests = [ - # racy, fails to find a file sometimes - "test_recreate_charmap" - "test_uses_cached_charmap" # fail when using CI profile "test_given_does_not_pollute_state" "test_find_does_not_pollute_state" "test_does_print_on_reuse_from_database" "test_prints_seed_only_on_healthcheck" - # calls script with the naked interpreter - "test_constants_from_running_file" - # fails consistenly "test_prints_seed_on_very_slow_shrinking" - ] - ++ lib.optionals (pythonAtLeast "3.12") [ - # AssertionError: assert [b'def \... f(): pass'] == [b'def\\', b' f(): pass'] - # https://github.com/HypothesisWorks/hypothesis/issues/4355 - "test_clean_source" - ] - ++ lib.optionals (pythonAtLeast "3.14") [ - "test_attrs_inference_builds" - "test_bound_missing_dot_access_forward_ref" - "test_bound_missing_forward_ref" - "test_bound_type_checking_only_forward_ref_wrong_type" - "test_bound_type_cheking_only_forward_ref" - "test_builds_suggests_from_type" - "test_bytestring_not_treated_as_generic_sequence" - "test_evil_prng_registration_nonsense" - "test_issue_4194_regression" - "test_passing_referenced_instance_within_function_scope_warns" - "test_registering_a_Random_is_idempotent" - "test_register_random_within_nested_function_scope" - "test_resolve_fwd_refs" - "test_resolves_forwardrefs_to_builtin_types" - "test_resolving_standard_collection_as_generic" - "test_resolving_standard_container_as_generic" - "test_resolving_standard_contextmanager_as_generic" - "test_resolving_standard_iterable_as_generic" - "test_resolving_standard_reversible_as_generic" - "test_resolving_standard_sequence_as_generic" - "test_specialised_collection_types" + "test_regex_output_should_print_as_string" ] ++ lib.optionals isPyPy [ # hypothesis.errors.Unsatisfiable: Could not find any examples from datetimes(min_value=datetime.datetime(2003, 1, 1, 0, 0), max_value=datetime.datetime(2005, 12, 31, 23, 59, 59, 999999)) that satisfied lambda x: x.month == 2 and x.day == 29 @@ -135,11 +129,11 @@ buildPythonPackage rec { mainProgram = "hypothesis"; homepage = "https://github.com/HypothesisWorks/hypothesis"; changelog = "https://hypothesis.readthedocs.io/en/latest/changes.html#v${ - lib.replaceStrings [ "." ] [ "-" ] version + lib.replaceStrings [ "." ] [ "-" ] finalAttrs.version }"; license = lib.licenses.mpl20; maintainers = [ lib.maintainers.fliegendewurst ]; }; -} +}) From 1eb592928127cabe94171c763f624f3c1443f090 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Mon, 6 Jul 2026 17:56:16 -0400 Subject: [PATCH 095/284] c-ares: 1.34.6 -> 1.34.7 Release notes: https://github.com/c-ares/c-ares/releases/tag/v1.34.7 Handles: - GHSA-pjmc-gx33-gc76 - GHSA-jv8r-gqr9-68wj - GHSA-6wfj-rwm7-3542 (CVE-2026-33630) --- pkgs/by-name/c-/c-ares/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/c-/c-ares/package.nix b/pkgs/by-name/c-/c-ares/package.nix index 35d956d9d5b1..78a4a573cff7 100644 --- a/pkgs/by-name/c-/c-ares/package.nix +++ b/pkgs/by-name/c-/c-ares/package.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { pname = "c-ares"; - version = "1.34.6"; + version = "1.34.7"; strictDeps = true; __structuredAttrs = true; @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { src = fetchurl { # Note: tag name varies in some versions, e.g. v1.30.0, c-ares-1_17_0. url = "https://github.com/c-ares/c-ares/releases/download/v${version}/c-ares-${version}.tar.gz"; - hash = "sha256-kS3XzDs+innFL9f7nA9Ozwqqc+Re/aiAJmotbia4TvU="; + hash = "sha256-VW94HdGIrZMtyCY/7grTqrpnW0zY5U2GkIaBtDzj4yc="; }; outputs = [ From b7511a628d08daeec0143a3c23cbbd58bdf96198 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 7 Jul 2026 00:00:00 +0200 Subject: [PATCH 096/284] python3Packages.filelock: 3.29.0 -> 3.29.5 https://github.com/tox-dev/filelock/releases/tag/3.29.1 https://github.com/tox-dev/filelock/releases/tag/3.29.2 https://github.com/tox-dev/filelock/releases/tag/3.29.3 https://github.com/tox-dev/filelock/releases/tag/3.29.4 https://github.com/tox-dev/filelock/releases/tag/3.29.5 --- pkgs/development/python-modules/filelock/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/filelock/default.nix b/pkgs/development/python-modules/filelock/default.nix index 80810b707766..94ff66aa5620 100644 --- a/pkgs/development/python-modules/filelock/default.nix +++ b/pkgs/development/python-modules/filelock/default.nix @@ -10,16 +10,16 @@ pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "filelock"; - version = "3.29.0"; + version = "3.29.5"; pyproject = true; src = fetchFromGitHub { owner = "tox-dev"; repo = "filelock"; - tag = version; - hash = "sha256-efBEyjuCcLkHsfpG61eKN6ALk4QW4UMdNmD56rSgFLc="; + tag = finalAttrs.version; + hash = "sha256-rpkRk3SwpUWNdjyLCk6FMwNvEhHMSOKWnn096thkhWE="; }; build-system = [ @@ -44,10 +44,10 @@ buildPythonPackage rec { ]; meta = { - changelog = "https://github.com/tox-dev/py-filelock/releases/tag/${version}"; + changelog = "https://github.com/tox-dev/filelock/releases/tag/${finalAttrs.version}"; description = "Platform independent file lock for Python"; homepage = "https://github.com/benediktschmitt/py-filelock"; license = lib.licenses.mit; maintainers = [ ]; }; -} +}) From 0dafa129ecbafde9d10ca0a712e5653444ac7af9 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Tue, 7 Jul 2026 12:27:16 +0200 Subject: [PATCH 097/284] nodejs: enable use-prefix-to-find-headers This is just a flag to allow node-gyp to find node sources automatically. This has been supported since Node.js v22 and node-gyp 10.1.0. https://github.com/nodejs/node/commit/9936d4586dcfc96cecf18fbdb65e7731ade8bbe0 https://github.com/nodejs/node-gyp/commit/329873141f0d3e3787d3c006801431da04e4ed0c This is also done on Alpine: https://github.com/alpinelinux/aports/blob/c4989684c6e9ea277530c7f3ec8c838ee0024ca0/main/nodejs/APKBUILD#L281 Signed-off-by: Sefa Eyeoglu --- pkgs/development/web/nodejs/nodejs.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index 22d0c3361a68..b9412696ca18 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -331,6 +331,7 @@ let ] ++ lib.optional useSharedTemporal "--v8-enable-temporal-support" ++ lib.optionals (lib.versionOlder version "19") [ "--without-dtrace" ] + ++ lib.optionals (lib.versionAtLeast version "22") [ "--use-prefix-to-find-headers" ] ++ lib.concatMap (name: [ "--shared-${name}" "--shared-${name}-libpath=${lib.getLib sharedLibDeps.${name}}/lib" From 4fca7cee9b157b70e993ce91f8d43c4124436db4 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Tue, 7 Jul 2026 22:56:42 +0800 Subject: [PATCH 098/284] bundlerApp: set __StructuredAttrs = true for result package --- doc/release-notes/rl-2611.section.md | 3 +++ pkgs/development/ruby-modules/bundler-app/default.nix | 2 ++ 2 files changed, 5 insertions(+) diff --git a/doc/release-notes/rl-2611.section.md b/doc/release-notes/rl-2611.section.md index ff7cc69284c9..14a80922bcd1 100644 --- a/doc/release-notes/rl-2611.section.md +++ b/doc/release-notes/rl-2611.section.md @@ -21,6 +21,9 @@ By the time of this release, Homebrew will offer only limited [Tier 3](https://docs.brew.sh/Support-Tiers#tier-3) support for the platform, but MacPorts will likely continue to support it for a long time. We also recommend users consider installing NixOS, which should continue to run on essentially all Intel Macs, especially after Apple stops security support for macOS 26 in 2028. +- `bundlerApp` now sets `__structuredAttrs = true` for its result package. + Out-of-tree packages passing `postBuild` to `bundlerApp` should examine if their `postBuild` commands are compatible with structured attributes. + - `databricks-cli` has been updated from `0.290.2` to `1.x.x`, the first major release. OAuth tokens for interactive logins (`auth_type = databricks-cli`) are now stored in the OS-native secure store by default (Secret Service on Linux) instead of `~/.databricks/token-cache.json`; cached tokens from older versions are not migrated, so run `databricks auth login` once per profile after upgrading. To keep the previous file-backed storage, set `DATABRICKS_AUTH_STORAGE=plaintext` or add `auth_storage = plaintext` under `[__settings__]` in `~/.databrickscfg`. Additionally, the `vector_search_endpoints` DABs resource renamed `min_qps` to `target_qps` (and the `vector-search-endpoints` command renamed `--min-qps` to `--target-qps`). See the [upstream changelog](https://github.com/databricks/cli/blob/main/CHANGELOG.md) for details. - `hurl` has been updated to `8.x.x` which has some breaking changes. See [upstream changelog](https://github.com/Orange-OpenSource/hurl/releases/tag/8.0.0) for details. diff --git a/pkgs/development/ruby-modules/bundler-app/default.nix b/pkgs/development/ruby-modules/bundler-app/default.nix index f3aa66cae7c1..b4cde70bdce2 100644 --- a/pkgs/development/ruby-modules/bundler-app/default.nix +++ b/pkgs/development/ruby-modules/bundler-app/default.nix @@ -56,6 +56,8 @@ let "gemdir" ] // { + __structuredAttrs = true; + inherit preferLocalBuild allowSubstitutes; # pass the defaults inherit (basicEnv) version pname; From eb8d97ca2d234b6259911bb70175c3f73ea1f2e6 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Tue, 7 Jul 2026 21:44:48 +0200 Subject: [PATCH 099/284] libapparmor: 5.0.0 -> 5.0.1 --- pkgs/by-name/ap/apparmor-parser/package.nix | 9 --------- pkgs/by-name/li/libapparmor/package.nix | 4 ++-- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/ap/apparmor-parser/package.nix b/pkgs/by-name/ap/apparmor-parser/package.nix index de39713f0c10..2bd4ca79bed3 100644 --- a/pkgs/by-name/ap/apparmor-parser/package.nix +++ b/pkgs/by-name/ap/apparmor-parser/package.nix @@ -37,15 +37,6 @@ stdenv.mkDerivation (finalAttrs: { --replace-fail "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h" ''; - patches = [ - (fetchpatch { - # https://gitlab.com/apparmor/apparmor/-/merge_requests/2133 - # Patches generated yacc parser code to compile with format-security - url = "https://gitlab.com/apparmor/apparmor/-/commit/6bdec74d5e74660b97e00b4b8fafc014b05907b7.diff"; - hash = "sha256-7c5EFByrGIDj2lc31bRttyeybwndDm4iS4qdPMVaG/I="; - }) - ]; - nativeBuildInputs = [ bison flex diff --git a/pkgs/by-name/li/libapparmor/package.nix b/pkgs/by-name/li/libapparmor/package.nix index 7cfb71447ceb..e7411cc092ce 100644 --- a/pkgs/by-name/li/libapparmor/package.nix +++ b/pkgs/by-name/li/libapparmor/package.nix @@ -32,13 +32,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "libapparmor"; - version = "5.0.0"; + version = "5.0.1"; src = fetchFromGitLab { owner = "apparmor"; repo = "apparmor"; tag = "v${finalAttrs.version}"; - hash = "sha256-seEREIc83alEPyZGD/GY48hjpqiw3QENnqYsdjHOGgs="; + hash = "sha256-y5r8X7Cpwp7TSsKYXNoAeyy0MbgxLSW8gNtLsIvKP8c="; }; sourceRoot = "${finalAttrs.src.name}/libraries/libapparmor"; From 97b993b6dec7c4e91fceabbcecff9b3cd84160a7 Mon Sep 17 00:00:00 2001 From: Tom Herbers Date: Tue, 7 Jul 2026 22:27:17 +0200 Subject: [PATCH 100/284] go_1_26: 1.26.4 -> 1.26.5 Changelog: https://go.dev/doc/devel/release#go1.26.minor --- pkgs/development/compilers/go/1.26.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/go/1.26.nix b/pkgs/development/compilers/go/1.26.nix index 242fa4c91de8..b9c04a91729c 100644 --- a/pkgs/development/compilers/go/1.26.nix +++ b/pkgs/development/compilers/go/1.26.nix @@ -25,11 +25,11 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "go"; - version = "1.26.4"; + version = "1.26.5"; src = fetchurl { url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz"; - hash = "sha256-T2aKMvv8ETLmqIH7lowvHa2mMUkqM5IRc1+7JVpCYC0="; + hash = "sha256-SVvkvIcXasVnOS5bQRar2YRm0z17SdQedkzMaXay3EI="; }; strictDeps = true; From 1e7d467566f5640431265feea3c22546009ce26e Mon Sep 17 00:00:00 2001 From: whispers Date: Tue, 7 Jul 2026 22:32:05 -0400 Subject: [PATCH 101/284] libxfont_2: 2.0.7 -> 2.0.8 announcement: https://lists.x.org/archives/xorg-announce/2026-July/003715.html advisory: https://lists.x.org/archives/xorg-announce/2026-July/003714.html Fixes: CVE-2026-56001, CVE-2026-56002, CVE-2026-56003 --- pkgs/by-name/li/libxfont_2/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libxfont_2/package.nix b/pkgs/by-name/li/libxfont_2/package.nix index 9f1dbea7359e..0156515019d1 100644 --- a/pkgs/by-name/li/libxfont_2/package.nix +++ b/pkgs/by-name/li/libxfont_2/package.nix @@ -15,7 +15,7 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "libxfont_2"; - version = "2.0.7"; + version = "2.0.8"; outputs = [ "out" @@ -24,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://xorg/individual/lib/libXfont2-${finalAttrs.version}.tar.xz"; - hash = "sha256-i3uC/eukh2m2lDPo4/u5hKX2vzaLDV9Hq+7EnePljvs="; + hash = "sha256-9VbA4Qk6TmkRzJC8SxBtIBkC7hh/10ryBv8WL35qJNU="; }; strictDeps = true; From 5285fba2417d291d6b9c052acaf51057d3f62e2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 8 Jul 2026 10:49:29 +0200 Subject: [PATCH 102/284] c-ares: 1.34.7 -> 1.34.8 https://github.com/c-ares/c-ares/releases/tag/v1.34.8 --- pkgs/by-name/c-/c-ares/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/c-/c-ares/package.nix b/pkgs/by-name/c-/c-ares/package.nix index 78a4a573cff7..d26bcba991fd 100644 --- a/pkgs/by-name/c-/c-ares/package.nix +++ b/pkgs/by-name/c-/c-ares/package.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { pname = "c-ares"; - version = "1.34.7"; + version = "1.34.8"; strictDeps = true; __structuredAttrs = true; @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { src = fetchurl { # Note: tag name varies in some versions, e.g. v1.30.0, c-ares-1_17_0. url = "https://github.com/c-ares/c-ares/releases/download/v${version}/c-ares-${version}.tar.gz"; - hash = "sha256-VW94HdGIrZMtyCY/7grTqrpnW0zY5U2GkIaBtDzj4yc="; + hash = "sha256-wiK21oEJb5RE0sSGPSwRdAGeJ8rMoKSlwRTTbdfXv3g="; }; outputs = [ From ddab585265ba2f87f813bba9e51e382c4f8ee344 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 8 Jul 2026 21:27:20 +0200 Subject: [PATCH 103/284] libffiReal: 3.6.0 -> 3.7.0 --- pkgs/by-name/li/libffiReal/package.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libffiReal/package.nix b/pkgs/by-name/li/libffiReal/package.nix index 8b91df2f4ebf..3ccee9419fc5 100644 --- a/pkgs/by-name/li/libffiReal/package.nix +++ b/pkgs/by-name/li/libffiReal/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libffi"; - version = "3.6.0"; + version = "3.7.0"; src = fetchurl { url = with finalAttrs; "https://github.com/libffi/libffi/releases/download/v${version}/${pname}-${version}.tar.gz"; - hash = "sha256-Mf8f4y3q6/uziHJ/Mmd7slS/KkE4LFFGTAsYN8numCg="; + hash = "sha256-IlXFpjjftRv2fCChKnu3DRf+senqurrAX1VzFG9YZDY="; }; # Note: this package is used for bootstrapping fetchurl, and thus @@ -32,6 +32,9 @@ stdenv.mkDerivation (finalAttrs: { ./freebsd-tsan-pthread.patch ]; + # To workaround https://github.com/libffi/libffi/issues/993, we empty the test file: + postPatch = lib.optionalString stdenv.hostPlatform.isDarwin "echo 'int main (void) { return 0; }' > testsuite/libffi.call/i128-1.c"; + strictDeps = true; outputs = [ "out" From 006c7936a2e92017d4d7812baeeb9f0dea1fc8f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 17 Jun 2026 12:18:27 -0700 Subject: [PATCH 104/284] python3Packages.pythonMetadataCheckHook: init --- .../interpreters/python/hooks/default.nix | 14 +++++++ .../hooks/python-metadata-check-hook.sh | 37 +++++++++++++++++++ .../python/mk-python-derivation.nix | 16 ++++++++ 3 files changed, 67 insertions(+) create mode 100644 pkgs/development/interpreters/python/hooks/python-metadata-check-hook.sh diff --git a/pkgs/development/interpreters/python/hooks/default.nix b/pkgs/development/interpreters/python/hooks/default.nix index f5f8dc59c072..4982332e88d1 100644 --- a/pkgs/development/interpreters/python/hooks/default.nix +++ b/pkgs/development/interpreters/python/hooks/default.nix @@ -361,6 +361,20 @@ in } ./python-imports-check-hook.sh ) { }; + pythonMetadataCheckHook = callPackage ( + { makePythonHook }: + makePythonHook { + name = "python-metadata-check-hook.sh"; + substitutions = { + inherit pythonInterpreter pythonSitePackages; + pythonWithPackaging = lib.getExe (pythonOnBuildForHost.withPackages (ps: [ ps.packaging ])); + }; + meta = { + maintainers = [ lib.maintainers.dotlambda ]; + }; + } ./python-metadata-check-hook.sh + ) { }; + pythonNamespacesHook = callPackage ( { makePythonHook, buildPackages }: makePythonHook { diff --git a/pkgs/development/interpreters/python/hooks/python-metadata-check-hook.sh b/pkgs/development/interpreters/python/hooks/python-metadata-check-hook.sh new file mode 100644 index 000000000000..f942e5bee76a --- /dev/null +++ b/pkgs/development/interpreters/python/hooks/python-metadata-check-hook.sh @@ -0,0 +1,37 @@ +# shellcheck shell=bash + +# Setup hook for checking whether metadata in .dist-info matches the derivation +echo "Sourcing python-metadata-check-hook.sh" + +pythonMetadataCheckPhase() { + echo "Executing pythonMetadataCheckPhase" + + # shellcheck disable=SC2154 + pythonMetadataCheckOutput="$out" + if [[ -n "${python-}" ]]; then + echo "Using python specific output \$python for metadata check" + pythonMetadataCheckOutput=$python + fi + # shellcheck disable=SC2154 + derivationPname="$pname" + # shellcheck disable=SC2154 + derivationVersion="$version" + # `python -P` avoids picking up egg-info dirs in $PWD + metadataVersion="$(PYTHONPATH="$pythonMetadataCheckOutput/@pythonSitePackages@:$PYTHONPATH" \ + @pythonInterpreter@ -P -c 'from importlib.metadata import version; import sys; print(version(sys.argv[1]))' "$derivationPname")" + + # chethat both versions can be parsed + @pythonWithPackaging@ -c "from packaging.version import Version; from sys import argv; Version(argv[1]); Version(argv[2])" "$derivationVersion" "$metadataVersion" + + if @pythonWithPackaging@ -c "from packaging.version import Version; from sys import argv, exit; exit(Version(argv[1]) == Version(argv[2]))" "$derivationVersion" "$metadataVersion"; then + echo "The '$derivationPname' derivation has version '$derivationVersion' but .dist-info/METADATA specifies version '$metadataVersion'." + echo "This usually means that the wrong version is hardcoded in pyproject.toml or setup.{py,cfg}." + echo "Use the pyprojectVersionPatchHook or patch the version manually so that the project metadata matches the derivation's version." + exit 1 + fi +} + +if [ -z "${dontCheckPythonMetadata-}" ]; then + echo "Using pythonMetadataCheckPhase" + appendToVar preDistPhases pythonMetadataCheckPhase +fi diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index bc44a7de7178..48748b5eec77 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -18,6 +18,7 @@ pypaInstallHook, pythonCatchConflictsHook, pythonImportsCheckHook, + pythonMetadataCheckHook, pythonNamespacesHook, pythonOutputDistHook, pythonRelaxDepsHook, @@ -358,6 +359,21 @@ lib.extendMkDerivation { # This is a test, however, it should be ran independent of the checkPhase and checkInputs pythonImportsCheckHook ] + ++ + optionals + ( + finalAttrs ? "pname" + && finalAttrs ? "version" + # We don't care about the METADATA of Python applications. + && isPythonModule finalAttrs.passthru + # METADATA is unlikely to be correct if pyproject is false or null. + && pyproject == true + && !lib.hasInfix "unstable-" finalAttrs.version + && !isBootstrapPackage + ) + [ + pythonMetadataCheckHook + ] ++ optionals (python.pythonAtLeast "3.3") [ # Optionally enforce PEP420 for python3 pythonNamespacesHook From 4752f9796258eb1518231cf5d0bd31d999b075d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 10:10:59 -0700 Subject: [PATCH 105/284] python3Packages.pytest-cov-stub: align project name with pname --- .../python-modules/pytest-cov-stub/src/pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pytest-cov-stub/src/pyproject.toml b/pkgs/development/python-modules/pytest-cov-stub/src/pyproject.toml index 1f356aa7f996..9c73b45061ad 100644 --- a/pkgs/development/python-modules/pytest-cov-stub/src/pyproject.toml +++ b/pkgs/development/python-modules/pytest-cov-stub/src/pyproject.toml @@ -3,7 +3,7 @@ requires = ["hatchling"] build-backend = "hatchling.build" [project] -name = "pytest-cov-nixpkgs-stub" +name = "pytest-cov-stub" version = "1.0.0" [tool.hatch.build.targets.wheel] From b72cbb85d8e6db4a033a25fe3a082d3b543c4c81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 10:20:45 -0700 Subject: [PATCH 106/284] python3Packages.ancpbids: rename from ancp-bids The project name (e.g. on PyPI) is ancpbids. --- .../python-modules/{ancp-bids => ancpbids}/default.nix | 2 +- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) rename pkgs/development/python-modules/{ancp-bids => ancpbids}/default.nix (97%) diff --git a/pkgs/development/python-modules/ancp-bids/default.nix b/pkgs/development/python-modules/ancpbids/default.nix similarity index 97% rename from pkgs/development/python-modules/ancp-bids/default.nix rename to pkgs/development/python-modules/ancpbids/default.nix index 1e0b8e9158c1..fa240945d297 100644 --- a/pkgs/development/python-modules/ancp-bids/default.nix +++ b/pkgs/development/python-modules/ancpbids/default.nix @@ -9,7 +9,7 @@ }: buildPythonPackage rec { - pname = "ancp-bids"; + pname = "ancpbids"; version = "0.3.1"; pyproject = true; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 16df0610345a..a6b6947956b4 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -86,6 +86,7 @@ mapAliases { amazon-kclpy = throw "amazon-kclpy has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-03 amazon_kclpy = throw "'amazon_kclpy' has been renamed to/replaced by 'amazon-kclpy'"; # Converted to throw 2025-10-29 amqplib = throw "amqplib has been removed as it was unmaintained upstream"; # Added 2025-11-22 + ancp-bids = ancpbids; # added 2026-06-18 ansiconv = throw "ansiconv has been removed because it was archived upstream"; # Added 2026-01-14 ansiwrap = throw "ansiwrap has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-03 apkit = throw "apkit was removed because it is unmaintained upstream and different from apkit on PyPI"; # added 2025-09-13 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 86476eafd4fd..69d74691c137 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1069,7 +1069,7 @@ self: super: with self; { anchor-kr = callPackage ../development/python-modules/anchor-kr { }; - ancp-bids = callPackage ../development/python-modules/ancp-bids { }; + ancpbids = callPackage ../development/python-modules/ancpbids { }; androguard = callPackage ../development/python-modules/androguard { }; From 6ac3a34121e7da64375c9749e188b4d50653f5c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 10:25:49 -0700 Subject: [PATCH 107/284] python3Packages.aiotarfile: fix version in Cargo.toml --- pkgs/development/python-modules/aiotarfile/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/development/python-modules/aiotarfile/default.nix b/pkgs/development/python-modules/aiotarfile/default.nix index 6234535a9836..4008a15e1e1b 100644 --- a/pkgs/development/python-modules/aiotarfile/default.nix +++ b/pkgs/development/python-modules/aiotarfile/default.nix @@ -7,6 +7,7 @@ cargo, rustc, rustPlatform, + semver, }: buildPythonPackage rec { @@ -26,6 +27,15 @@ buildPythonPackage rec { hash = "sha256-Yf6N615X9ZB+HDp3xehMc3kjKbdsSbIJrqARRXwCRDQ="; }; + postPatch = '' + patchShebangs release.py + ./release.py finalize + ''; + + build-system = [ + semver # required for release.py + ]; + nativeBuildInputs = [ cargo rustPlatform.cargoSetupHook From 0ab3722264ad3efa8632dbac103a2b97a64d6b99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 11:02:44 -0700 Subject: [PATCH 108/284] python3Packages.approvaltests: fix version in version.py --- pkgs/development/python-modules/approvaltests/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/approvaltests/default.nix b/pkgs/development/python-modules/approvaltests/default.nix index 5c91f2217155..60ba742323c7 100644 --- a/pkgs/development/python-modules/approvaltests/default.nix +++ b/pkgs/development/python-modules/approvaltests/default.nix @@ -33,6 +33,8 @@ buildPythonPackage rec { postPatch = '' test -f setup.py || mv setup/setup.approvaltests.py setup.py + python3 setup/set_version.py '${version}' + patchShebangs internal_documentation/scripts ''; From b21d0c873967fce2506f7379b3a3a34cd637e183 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 11:19:20 -0700 Subject: [PATCH 109/284] python3Packages.aspell-python-py3: rename from aspell-python The project name (e.g. on PyPI) is aspell-python-py3. --- pkgs/by-name/co/codespell/package.nix | 2 +- .../{aspell-python => aspell-python-py3}/default.nix | 2 +- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) rename pkgs/development/python-modules/{aspell-python => aspell-python-py3}/default.nix (97%) diff --git a/pkgs/by-name/co/codespell/package.nix b/pkgs/by-name/co/codespell/package.nix index d033c7beb9f7..7478cf94b047 100644 --- a/pkgs/by-name/co/codespell/package.nix +++ b/pkgs/by-name/co/codespell/package.nix @@ -22,7 +22,7 @@ python3.pkgs.buildPythonApplication (finalAttrs: { ]; nativeCheckInputs = with python3.pkgs; [ - aspell-python + aspell-python-py3 chardet pytestCheckHook pytest-cov-stub diff --git a/pkgs/development/python-modules/aspell-python/default.nix b/pkgs/development/python-modules/aspell-python-py3/default.nix similarity index 97% rename from pkgs/development/python-modules/aspell-python/default.nix rename to pkgs/development/python-modules/aspell-python-py3/default.nix index 4bc47fe3bd51..a7ed13759267 100644 --- a/pkgs/development/python-modules/aspell-python/default.nix +++ b/pkgs/development/python-modules/aspell-python-py3/default.nix @@ -9,7 +9,7 @@ }: buildPythonPackage rec { - pname = "aspell-python"; + pname = "aspell-python-py3"; version = "1.15"; pyproject = true; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index a6b6947956b4..824f686e868c 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -93,6 +93,7 @@ mapAliases { APScheduler = throw "'APScheduler' has been renamed to/replaced by 'apscheduler'"; # Converted to throw 2025-10-29 argon2_cffi = throw "'argon2_cffi' has been renamed to/replaced by 'argon2-cffi'"; # Converted to throw 2025-10-29 asmog = throw "'asmog' has been removed because the service it polled is offline and the library has been unmaintained since 2019"; # Added 2026-06-04 + aspell-python = aspell-python-py3; # added 2026-06-18 aspy-refactor-imports = throw "'aspy-refactor-imports' has been renamed to/replaced by 'classify-imports'"; # Added 2026-05-22 aspy-yaml = throw "'aspy-yaml' has been removed because the upstream repository was archived in 2020"; # Added 2026-06-04 astropy-extension-helpers = extension-helpers; # Added 2025-10-15 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 69d74691c137..39d190de381b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1397,7 +1397,7 @@ self: super: with self; { aspectlib = callPackage ../development/python-modules/aspectlib { }; - aspell-python = callPackage ../development/python-modules/aspell-python { }; + aspell-python-py3 = callPackage ../development/python-modules/aspell-python-py3 { }; assay = callPackage ../development/python-modules/assay { }; From d43850d6edeb2dcdb5a33c0e5d303690585925d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 11:58:57 -0700 Subject: [PATCH 110/284] python3Packages.aurorapy: fix version in setup.py --- pkgs/development/python-modules/aurorapy/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/aurorapy/default.nix b/pkgs/development/python-modules/aurorapy/default.nix index b7e82bc72c64..e9f6d41c2ff8 100644 --- a/pkgs/development/python-modules/aurorapy/default.nix +++ b/pkgs/development/python-modules/aurorapy/default.nix @@ -21,6 +21,9 @@ buildPythonPackage (finalAttrs: { }; postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'version="0.2.7"' 'version="${finalAttrs.version}"' + sed -i "/from past.builtins import map/d" aurorapy/client.py ''; From 20382e39add419d95c24492106f299c97825be8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 12:38:25 -0700 Subject: [PATCH 111/284] python3Packages.python-augeas: rename from augeas The project name (e.g. on PyPI) is python-augeas. --- pkgs/by-name/fr/freeipa/package.nix | 2 +- pkgs/by-name/kn/knot-resolver-manager_6/package.nix | 2 +- .../python-modules/{augeas => python-augeas}/default.nix | 2 +- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 4 ++-- 5 files changed, 6 insertions(+), 5 deletions(-) rename pkgs/development/python-modules/{augeas => python-augeas}/default.nix (97%) diff --git a/pkgs/by-name/fr/freeipa/package.nix b/pkgs/by-name/fr/freeipa/package.nix index 6813e656de96..87de4728e992 100644 --- a/pkgs/by-name/fr/freeipa/package.nix +++ b/pkgs/by-name/fr/freeipa/package.nix @@ -60,7 +60,7 @@ let yubico setuptools jinja2 - augeas + python-augeas samba ifaddr ]; diff --git a/pkgs/by-name/kn/knot-resolver-manager_6/package.nix b/pkgs/by-name/kn/knot-resolver-manager_6/package.nix index cb449cb1df97..997daf3861bc 100644 --- a/pkgs/by-name/kn/knot-resolver-manager_6/package.nix +++ b/pkgs/by-name/kn/knot-resolver-manager_6/package.nix @@ -77,7 +77,7 @@ python3Packages.buildPythonPackage { doCheck = python3Packages.stdenv.hostPlatform.isLinux; # maybe in future nativeCheckInputs = with python3Packages; [ - augeas + python-augeas dnspython lief pytestCheckHook diff --git a/pkgs/development/python-modules/augeas/default.nix b/pkgs/development/python-modules/python-augeas/default.nix similarity index 97% rename from pkgs/development/python-modules/augeas/default.nix rename to pkgs/development/python-modules/python-augeas/default.nix index 1f0bb2cb80d2..8a89fd4d5292 100644 --- a/pkgs/development/python-modules/augeas/default.nix +++ b/pkgs/development/python-modules/python-augeas/default.nix @@ -10,7 +10,7 @@ setuptools, }: buildPythonPackage (finalAttrs: { - pname = "augeas"; + pname = "python-augeas"; version = "1.2.0"; pyproject = true; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 824f686e868c..2b2006b9bf78 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -107,6 +107,7 @@ mapAliases { atsim_potentials = throw "'atsim_potentials' has been renamed to/replaced by 'atsim-potentials'"; # Converted to throw 2025-10-29 aubio = throw "'aubio' only direct user LedFX switched to a fork named 'aubio-ledfx', hence the aubio package has been replaced."; # Added 2026-04-20 audio-metadata = throw "'audio-metadata' has been removed as it's unmaintained since 2020"; # Added 2026-03-12 + augeas = python-augeas; # added 2026-06-18 autotrash = throw "'autotrash' has been renamed to/replaced by 'super.pkgs.autotrash'"; # Converted to throw 2025-10-29 av_13 = throw "'av_13' has been renamed to/replaced by 'av'"; # Added 2026-02-01 avion = throw "'avion' has been removed since it depended on the unmaintained bluepy library"; # Added 2026-06-04 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 39d190de381b..4e382b9ef8ed 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1569,8 +1569,6 @@ self: super: with self; { ; }; - augeas = callPackage ../development/python-modules/augeas { inherit (pkgs) augeas; }; - augmax = callPackage ../development/python-modules/augmax { }; auroranoaa = callPackage ../development/python-modules/auroranoaa { }; @@ -16297,6 +16295,8 @@ self: super: with self; { python-arango = callPackage ../development/python-modules/python-arango { }; + python-augeas = callPackage ../development/python-modules/python-augeas { inherit (pkgs) augeas; }; + python-avatars = callPackage ../development/python-modules/python-avatars { }; python-awair = callPackage ../development/python-modules/python-awair { }; From 70feff954018c337a1efd00d0dd6f1c45b3d8265 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 13:04:59 -0700 Subject: [PATCH 112/284] python3Packages.awsiotpythonsdk: fix version in AWSIoTPythonSDK/__init__.py --- pkgs/development/python-modules/awsiotpythonsdk/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/awsiotpythonsdk/default.nix b/pkgs/development/python-modules/awsiotpythonsdk/default.nix index fa6e8cffbd07..2065675dc226 100644 --- a/pkgs/development/python-modules/awsiotpythonsdk/default.nix +++ b/pkgs/development/python-modules/awsiotpythonsdk/default.nix @@ -17,6 +17,11 @@ buildPythonPackage (finalAttrs: { hash = "sha256-Jwj07yAl9LrHRy1y3cjipObqEcwP+j+a5dcvXj02kgA="; }; + postPatch = '' + substituteInPlace AWSIoTPythonSDK/__init__.py \ + --replace-fail '__version__ = "1.5.4"' '__version__ = "${finalAttrs.version}"' + ''; + nativeBuildInputs = [ setuptools ]; # Module has no tests From ca7c1b884ad9fddd057d47d1402de62d22e5be76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 13:12:10 -0700 Subject: [PATCH 113/284] python3Packages.mako: don't add a .dev0 suffix to version --- pkgs/development/python-modules/mako/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/mako/default.nix b/pkgs/development/python-modules/mako/default.nix index a317e542fc80..20da44ffd62a 100644 --- a/pkgs/development/python-modules/mako/default.nix +++ b/pkgs/development/python-modules/mako/default.nix @@ -32,6 +32,11 @@ buildPythonPackage (finalAttrs: { hash = "sha256-YIMmP8CIGUlgnB8/96lR9yDvEZTES766dSN0vT0JfbM="; }; + postPatch = '' + substituteInPlace setup.cfg \ + --replace-fail "tag_build = dev" "" + ''; + build-system = [ setuptools_80 ]; dependencies = [ markupsafe ]; From a4c7bb7c2d7a22a8e02d80cf28ae94330d4225ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 14:17:04 -0700 Subject: [PATCH 114/284] python3Packages.pytest-lazy-fixtures: fix version in pyproject.toml --- .../python-modules/pytest-lazy-fixtures/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pytest-lazy-fixtures/default.nix b/pkgs/development/python-modules/pytest-lazy-fixtures/default.nix index 2a9c5ef6ae7e..e28df32aca72 100644 --- a/pkgs/development/python-modules/pytest-lazy-fixtures/default.nix +++ b/pkgs/development/python-modules/pytest-lazy-fixtures/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, hatchling, + pyprojectVersionPatchHook, pytest, pytest-fixture-classes, pytestCheckHook, @@ -29,6 +30,10 @@ buildPythonPackage rec { build-system = [ hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ pytest ]; nativeCheckInputs = [ From c9cf1135181739a3d5bd10e9849d95f470fe5842 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 14:26:53 -0700 Subject: [PATCH 115/284] python3Packages.caio: fix version in caio/version.py --- pkgs/development/python-modules/caio/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/python-modules/caio/default.nix b/pkgs/development/python-modules/caio/default.nix index 897dbf76fee8..dd6b035a8c9c 100644 --- a/pkgs/development/python-modules/caio/default.nix +++ b/pkgs/development/python-modules/caio/default.nix @@ -20,6 +20,13 @@ buildPythonPackage (finalAttrs: { hash = "sha256-IeyksrYpLMc9PJjpYeaOgLx26CeVMoR/3r2RX66ucDs="; }; + postPatch = '' + substituteInPlace caio/version.py \ + --replace-fail 'version_info = (0, 9, 25)' 'version_info = (${ + lib.replaceString "." ", " finalAttrs.version + })' + ''; + build-system = [ setuptools ]; nativeCheckInputs = [ From 6c3967b67006ae2e632359aa4241944a5003be0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 14:29:55 -0700 Subject: [PATCH 116/284] python3Packages.python-memcached: fix version in memcache.py --- pkgs/development/python-modules/python-memcached/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/python-memcached/default.nix b/pkgs/development/python-modules/python-memcached/default.nix index c3b8e28159b3..e7555b11fad6 100644 --- a/pkgs/development/python-modules/python-memcached/default.nix +++ b/pkgs/development/python-modules/python-memcached/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { hash = "sha256-Qko4Qr9WofeklU0uRRrSPrT8YaBYMCy0GP+TF7YZHLI="; }; + postPatch = '' + substituteInPlace memcache.py \ + --replace-fail '__version__ = "1.60"' '__version__ = "${version}"' + ''; + nativeBuildInputs = [ setuptools ]; nativeCheckInputs = [ From 46bac7fdab8ce685d0f5a2e23e89ae686bcf35b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 14:35:35 -0700 Subject: [PATCH 117/284] python3Packages.iso4217: don't append date to version --- pkgs/development/python-modules/iso4217/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/python-modules/iso4217/default.nix b/pkgs/development/python-modules/iso4217/default.nix index cebace0bf539..22dfbc95fb3a 100644 --- a/pkgs/development/python-modules/iso4217/default.nix +++ b/pkgs/development/python-modules/iso4217/default.nix @@ -26,6 +26,12 @@ buildPythonPackage rec { hash = "sha256-C7TwGlbTwpcJ0rE7notWzZHthWzXKMPbHq00zMhfHeA="; }; + postPatch = '' + # get_version() appends a date to the version prefix + substituteInPlace setup.py \ + --replace-fail 'version=get_version()' 'version="${version}"' + ''; + build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook ]; From 013088869220aab51bcd71e88e0319d5ecd36437 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:19:20 -0700 Subject: [PATCH 118/284] python3Packages.cramjam: fix version in pyproject.toml --- pkgs/development/python-modules/cramjam/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/cramjam/default.nix b/pkgs/development/python-modules/cramjam/default.nix index cd35c8fee54e..5c2a35930e0d 100644 --- a/pkgs/development/python-modules/cramjam/default.nix +++ b/pkgs/development/python-modules/cramjam/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + pyprojectVersionPatchHook, rustPlatform, # tests @@ -28,9 +29,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-evXYLbv+GwSBUJBb0upjQTFtMPdQbKka8KfJltMUmDs="; }; - nativeBuildInputs = with rustPlatform; [ - cargoSetupHook - maturinBuildHook + nativeBuildInputs = [ + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook + pyprojectVersionPatchHook ]; nativeCheckInputs = [ From 596866e0a8e1e9b5c72c4e7712bae165e8f4b227 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:22:02 -0700 Subject: [PATCH 119/284] python3Packages.nest-asyncio: fix version in setup.cfg --- pkgs/development/python-modules/nest-asyncio/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/nest-asyncio/default.nix b/pkgs/development/python-modules/nest-asyncio/default.nix index 652c276534b7..6420fe406bf8 100644 --- a/pkgs/development/python-modules/nest-asyncio/default.nix +++ b/pkgs/development/python-modules/nest-asyncio/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { hash = "sha256-5I5WItOl1QpyI4OXZgZf8GiQ7Jlo+SJbDicIbernaU4="; }; + postPatch = '' + substituteInPlace setup.cfg \ + --replace-fail 'version = 1.5.9' 'version = ${version}' + ''; + build-system = [ setuptools setuptools-scm From eb8b88ae6b8e7f251ae05e49717b616d9ab46e15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:26:09 -0700 Subject: [PATCH 120/284] python3Packages.nbmake: fix version in pyproject.toml --- pkgs/development/python-modules/nbmake/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/nbmake/default.nix b/pkgs/development/python-modules/nbmake/default.nix index f6780ba38981..89f208e77685 100644 --- a/pkgs/development/python-modules/nbmake/default.nix +++ b/pkgs/development/python-modules/nbmake/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + pyprojectVersionPatchHook, # build-system hatchling, @@ -33,6 +34,10 @@ buildPythonPackage rec { hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ ipykernel nbclient From 9e255a89ddac3b9459b66b21917c2444d865c6ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:27:28 -0700 Subject: [PATCH 121/284] python3Packages.rf-protocols: fix version in pyproject.toml --- pkgs/development/python-modules/rf-protocols/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/rf-protocols/default.nix b/pkgs/development/python-modules/rf-protocols/default.nix index 4b6da5258243..395b4c996f6c 100644 --- a/pkgs/development/python-modules/rf-protocols/default.nix +++ b/pkgs/development/python-modules/rf-protocols/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, prek, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, setuptools, @@ -22,6 +23,10 @@ buildPythonPackage (finalAttrs: { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + nativeCheckInputs = [ prek pytest-asyncio From 4087f5d72de69ea0f1509553c0870049e5039cff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:31:01 -0700 Subject: [PATCH 122/284] python3Packages.sure: fix version in setup.py --- pkgs/development/python-modules/sure/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/sure/default.nix b/pkgs/development/python-modules/sure/default.nix index f7e5ea7382bd..83bd386e7034 100644 --- a/pkgs/development/python-modules/sure/default.nix +++ b/pkgs/development/python-modules/sure/default.nix @@ -21,6 +21,9 @@ buildPythonPackage (finalAttrs: { }; postPatch = '' + substituteInPlace setup.py \ + --replace-fail version=version 'version="${finalAttrs.version}"' + substituteInPlace setup.cfg \ --replace "rednose = 1" "" ''; From 52573cc0e719302a84d24676770f9e89f783a318 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:31:58 -0700 Subject: [PATCH 123/284] python3Packages.libvalkey: align pname with attribute name --- pkgs/development/python-modules/libvalkey/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/libvalkey/default.nix b/pkgs/development/python-modules/libvalkey/default.nix index 0119e61608f2..06a80ff2db52 100644 --- a/pkgs/development/python-modules/libvalkey/default.nix +++ b/pkgs/development/python-modules/libvalkey/default.nix @@ -7,7 +7,7 @@ }: buildPythonPackage (finalAttrs: { - pname = "libvalkey-py"; + pname = "libvalkey"; version = "4.0.1"; pyproject = true; From 2bb7a68648d997a82f7be3f598fa9d42f1247cc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:36:11 -0700 Subject: [PATCH 124/284] python3Packages.apischema: fix version in pyproject.toml --- pkgs/development/python-modules/apischema/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/apischema/default.nix b/pkgs/development/python-modules/apischema/default.nix index e3c2c235c596..54cd670036b3 100644 --- a/pkgs/development/python-modules/apischema/default.nix +++ b/pkgs/development/python-modules/apischema/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, graphql-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest8_3CheckHook, pythonAtLeast, @@ -32,6 +33,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + optional-dependencies = { graphql = [ graphql-core ]; }; From 1995f3e0bbdc172a15ef7be807c849dbe012f805 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 Jun 2026 21:41:46 -0700 Subject: [PATCH 125/284] python3Packages.pproxy: use setuptools-scm to get correct version --- pkgs/development/python-modules/pproxy/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pproxy/default.nix b/pkgs/development/python-modules/pproxy/default.nix index 39b9f9f582ea..3816183ec7fe 100644 --- a/pkgs/development/python-modules/pproxy/default.nix +++ b/pkgs/development/python-modules/pproxy/default.nix @@ -8,6 +8,7 @@ aioquic, python-daemon, setuptools, + setuptools-scm, }: buildPythonPackage rec { @@ -22,7 +23,10 @@ buildPythonPackage rec { hash = "sha256-DWxbU2LtXzec1T175cMVJuWuhnxWYhe0FH67stMyOTM="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ + setuptools + setuptools-scm + ]; optional-dependencies = { accelerated = [ From bb997bc7d765012361fc0be17943ce39323f5a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 21 Jun 2026 14:40:30 -0700 Subject: [PATCH 126/284] python3Packages.psycopg-pool: don't check metadata --- pkgs/development/python-modules/psycopg/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/psycopg/default.nix b/pkgs/development/python-modules/psycopg/default.nix index cd9a4d7d6c05..724a8287ea09 100644 --- a/pkgs/development/python-modules/psycopg/default.nix +++ b/pkgs/development/python-modules/psycopg/default.nix @@ -108,6 +108,9 @@ let dependencies = [ typing-extensions ]; + # the psycopg-pool version isn't updated in tandem with psycopg + dontCheckPythonMetadata = true; + # tested in psycopg doCheck = false; From b5e21ce95d236be0c327ba31ef3c642128a08177 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 21 Jun 2026 14:44:07 -0700 Subject: [PATCH 127/284] python3Packages.pyvis: patch version in pyvis/_version.py --- pkgs/development/python-modules/pyvis/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pyvis/default.nix b/pkgs/development/python-modules/pyvis/default.nix index 0a63b6be4062..ea70d09908fd 100644 --- a/pkgs/development/python-modules/pyvis/default.nix +++ b/pkgs/development/python-modules/pyvis/default.nix @@ -23,6 +23,11 @@ buildPythonPackage rec { hash = "sha256-eo9Mk2c0hrBarCrzwmkXha3Qt4Bl1qR7Lhl9EkUx96E="; }; + postPatch = '' + substituteInPlace pyvis/_version.py \ + --replace-fail "__version__ = '0.2.0'" "__version__ = '${version}'" + ''; + nativeBuildInputs = [ setuptools ]; dependencies = [ From d7951b35db5169e1e830ee6f03230555ff219d70 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 22 Jun 2026 17:09:59 +0200 Subject: [PATCH 128/284] python3Packages.clang: enable tests --- pkgs/development/python-modules/clang/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/clang/default.nix b/pkgs/development/python-modules/clang/default.nix index 1f6e2103034f..58f054c893e3 100644 --- a/pkgs/development/python-modules/clang/default.nix +++ b/pkgs/development/python-modules/clang/default.nix @@ -4,6 +4,7 @@ llvmPackages, setuptools, writeText, + pytestCheckHook, }: let @@ -51,6 +52,10 @@ buildPythonPackage { echo 'Config.set_library_path("${lib.getLib libclang}/lib")' >>./clang/cindex.py ''; + nativeCheckInputs = [ + pytestCheckHook + ]; + meta = libclang.meta // { description = "Python bindings for the C language family frontend for LLVM"; maintainers = [ ]; From 757cb598d7a376b977bc2f1a70e3e3d278c45a8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 13:19:01 -0700 Subject: [PATCH 129/284] python3Packages.dacite: fix version in setup.py --- pkgs/development/python-modules/dacite/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/development/python-modules/dacite/default.nix b/pkgs/development/python-modules/dacite/default.nix index ed4bc835a634..1a323d7b709e 100644 --- a/pkgs/development/python-modules/dacite/default.nix +++ b/pkgs/development/python-modules/dacite/default.nix @@ -1,6 +1,7 @@ { lib, fetchFromGitHub, + fetchpatch, buildPythonPackage, pytestCheckHook, pythonAtLeast, @@ -19,6 +20,14 @@ buildPythonPackage rec { hash = "sha256-mAPqWvBpkTbtzHpwtCSDXMNkoc8/hbRH3OIEeK2yStU="; }; + patches = [ + (fetchpatch { + name = "fix-version-in-setup.py.patch"; + url = "https://github.com/konradhalas/dacite/commit/daad7e4a15569321d3cf118f8083a71a65d7e044.patch"; + hash = "sha256-5udIgEf2P9SCZVGnPg/rMtFtkPJyLw9RWvVO47BddK8="; + }) + ]; + postPatch = '' substituteInPlace pyproject.toml \ --replace "--benchmark-autosave --benchmark-json=benchmark.json" "" From 51adff44f676b5b6a38fc57bacd69877def2e271 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 13:22:59 -0700 Subject: [PATCH 130/284] buildbotPackages.buildbot-pkg: fix version in setup.py --- pkgs/development/tools/continuous-integration/buildbot/pkg.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/tools/continuous-integration/buildbot/pkg.nix b/pkgs/development/tools/continuous-integration/buildbot/pkg.nix index 71a79c8132e3..da9e088cefcf 100644 --- a/pkgs/development/tools/continuous-integration/buildbot/pkg.nix +++ b/pkgs/development/tools/continuous-integration/buildbot/pkg.nix @@ -18,6 +18,8 @@ buildPythonPackage { substituteInPlace buildbot_pkg.py --replace "os.listdir = listdir" "" ''; + env.BUILDBOT_VERSION = buildbot.version; + build-system = [ setuptools ]; # No tests From 38911fbe61b33cb8fb57a36355550cc10251a6a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 13:26:40 -0700 Subject: [PATCH 131/284] python3Packages.diskcache-stubs: fix version in pyproject.toml --- pkgs/development/python-modules/diskcache-stubs/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/diskcache-stubs/default.nix b/pkgs/development/python-modules/diskcache-stubs/default.nix index c4d07ea702e1..b976d1c39bc6 100644 --- a/pkgs/development/python-modules/diskcache-stubs/default.nix +++ b/pkgs/development/python-modules/diskcache-stubs/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, hatchling, + pyprojectVersionPatchHook, typing-extensions, }: @@ -20,6 +21,10 @@ buildPythonPackage rec { build-system = [ hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ typing-extensions ]; pythonImportsCheck = [ "diskcache-stubs" ]; From a1c6e43548cf9fa17723754149e12e7d30b5a9fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 15:27:13 -0700 Subject: [PATCH 132/284] python3Packages.asyncclick: remove version suffix --- pkgs/development/python-modules/asyncclick/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/asyncclick/default.nix b/pkgs/development/python-modules/asyncclick/default.nix index 11508f2eedf9..823c921260ab 100644 --- a/pkgs/development/python-modules/asyncclick/default.nix +++ b/pkgs/development/python-modules/asyncclick/default.nix @@ -10,13 +10,13 @@ buildPythonPackage rec { pname = "asyncclick"; - version = "8.3.0.5+async"; + version = "8.3.0.5"; pyproject = true; src = fetchFromGitHub { owner = "python-trio"; repo = "asyncclick"; - tag = version; + tag = "${version}+async"; hash = "sha256-gKtxwI/vDB2pDrhiA+e1TClwW5nXvBRCMF3oCNoLaDo="; }; From 3f0f7cef473657aba5864542761c2516db024a8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 15:35:13 -0700 Subject: [PATCH 133/284] python3Packages.tag-expressions: fix version in setup.py --- pkgs/development/python-modules/tag-expressions/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/tag-expressions/default.nix b/pkgs/development/python-modules/tag-expressions/default.nix index fec5184933ea..19a9999b2fa6 100644 --- a/pkgs/development/python-modules/tag-expressions/default.nix +++ b/pkgs/development/python-modules/tag-expressions/default.nix @@ -17,6 +17,11 @@ buildPythonPackage rec { hash = "sha256-EbSwfAH+sL3JGW+COfDA2f7cLGyKmQMsbyyDGy13Lkg="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'version=read_version()' 'version="${version}"' + ''; + build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook ]; From 8121751fd4d7ffdbb8e24503986106769637744e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 15:43:05 -0700 Subject: [PATCH 134/284] python3Packages.compressed-rtf: fetch tag --- .../python-modules/compressed-rtf/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/compressed-rtf/default.nix b/pkgs/development/python-modules/compressed-rtf/default.nix index acd0efdfc47a..022475c9073c 100644 --- a/pkgs/development/python-modules/compressed-rtf/default.nix +++ b/pkgs/development/python-modules/compressed-rtf/default.nix @@ -6,7 +6,7 @@ setuptools, }: -buildPythonPackage { +buildPythonPackage (finalAttrs: { pname = "compressed-rtf"; version = "1.0.7"; pyproject = true; @@ -14,12 +14,11 @@ buildPythonPackage { src = fetchFromGitHub { owner = "delimitry"; repo = "compressed_rtf"; - # https://github.com/delimitry/compressed_rtf/issues/15 - rev = "581400c1b4c69ab0d944cfb5ca82c32059bbcc96"; - hash = "sha256-ivvND+cOCAmRyO8yL0+WhFY/2OkrJ+E/o4xWWd7ivHA="; + tag = finalAttrs.version; + hash = "sha256-eQ1rX+IyQG6oStd+ELIMNJ3EjTKJTA3tHzuxdIuKgGs="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook ]; @@ -28,9 +27,10 @@ buildPythonPackage { enabledTestPaths = [ "tests/tests.py" ]; meta = { + changelog = "https://github.com/delimitry/compressed_rtf/releases/tag/${finalAttrs.src.tag}"; description = "Compressed Rich Text Format (RTF) compression and decompression"; homepage = "https://github.com/delimitry/compressed_rtf"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; }; -} +}) From 9f1baceb91642eacf72a05beed2d9c1f1ba869c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 15:45:00 -0700 Subject: [PATCH 135/284] python3Packages.gpiod: don't check metadata --- pkgs/development/python-modules/gpiod/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/gpiod/default.nix b/pkgs/development/python-modules/gpiod/default.nix index 248dffdcc939..9c2a842abe5d 100644 --- a/pkgs/development/python-modules/gpiod/default.nix +++ b/pkgs/development/python-modules/gpiod/default.nix @@ -21,6 +21,9 @@ buildPythonPackage { doCheck = false; pythonImportsCheck = [ "gpiod" ]; + # the tag component of the version doesn't align + dontCheckPythonMetadata = true; + meta = { description = "Python bindings for libgpiod"; homepage = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/about/"; From ac36e0ac0352f3a688e88b11e7c554da9fa64bc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 16:53:58 -0700 Subject: [PATCH 136/284] python3Packages.ttp-templates: fix version in pyproject.toml --- pkgs/development/python-modules/ttp-templates/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/ttp-templates/default.nix b/pkgs/development/python-modules/ttp-templates/default.nix index f6818c7e6a73..26139e8e4e1c 100644 --- a/pkgs/development/python-modules/ttp-templates/default.nix +++ b/pkgs/development/python-modules/ttp-templates/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, poetry-core, pydantic, + pyprojectVersionPatchHook, }: buildPythonPackage (finalAttrs: { @@ -18,7 +19,11 @@ buildPythonPackage (finalAttrs: { hash = "sha256-W6F0/CGm713HhCtgqv+tEDm5mlkx0JJRmnUc9j+Fnvs="; }; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; + + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; dependencies = [ pydantic ]; From 0fdd6cabaa1acf4af5087003c5aabab31bf9d94e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 17:08:15 -0700 Subject: [PATCH 137/284] buildbotPackages.buildbot-worker: don't check metadata --- .../tools/continuous-integration/buildbot/worker.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/tools/continuous-integration/buildbot/worker.nix b/pkgs/development/tools/continuous-integration/buildbot/worker.nix index ad464fc47ebb..b8da7fd6ba3e 100644 --- a/pkgs/development/tools/continuous-integration/buildbot/worker.nix +++ b/pkgs/development/tools/continuous-integration/buildbot/worker.nix @@ -48,6 +48,9 @@ buildPythonPackage { psutil ]; + # the date-based version of buildbot-worker doesn't align with buildbot's version + dontCheckPythonMetadata = true; + passthru.tests = { smoke-test = nixosTests.buildbot; }; From ab4ae03bc7d1be53123e58e85ca2c61d732bd0a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Jun 2026 23:04:53 -0700 Subject: [PATCH 138/284] python3Packages.pyexcel-io: fix version in setup.py --- pkgs/development/python-modules/pyexcel-io/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pyexcel-io/default.nix b/pkgs/development/python-modules/pyexcel-io/default.nix index 8ec7dad0213c..5e4137eb0060 100644 --- a/pkgs/development/python-modules/pyexcel-io/default.nix +++ b/pkgs/development/python-modules/pyexcel-io/default.nix @@ -18,6 +18,11 @@ buildPythonPackage rec { hash = "sha256-DBiHHiKXR26/WPJDmEZpRgjvJitFaidbV41Tvn0etLY="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'VERSION = "0.6.7"' 'VERSION = "${version}"' + ''; + build-system = [ setuptools ]; dependencies = [ lml ]; From 20f348252a33b338ad28c722b56f6d86e51f4793 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 25 Jun 2026 23:40:36 -0700 Subject: [PATCH 139/284] python3Packages.syrupy: fix version in pyproject.toml --- pkgs/development/python-modules/syrupy/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/python-modules/syrupy/default.nix b/pkgs/development/python-modules/syrupy/default.nix index c4f84e150699..84939fcf0ab4 100644 --- a/pkgs/development/python-modules/syrupy/default.nix +++ b/pkgs/development/python-modules/syrupy/default.nix @@ -5,6 +5,7 @@ hatchling, hypothesis, pydantic, + pyprojectVersionPatchHook, pytest, pytest-xdist, invoke, @@ -24,6 +25,11 @@ buildPythonPackage (finalAttrs: { build-system = [ hatchling ]; + nativeBuildInputs = [ + # the commit updating the version happens only after tagging + pyprojectVersionPatchHook + ]; + buildInputs = [ pytest ]; nativeCheckInputs = [ From 2a50b443b50e6403336a59a204e429e1c2f7fdbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 25 Jun 2026 23:49:52 -0700 Subject: [PATCH 140/284] python3Packages.flatten-dict: fix version in pyproject.toml --- pkgs/development/python-modules/flatten-dict/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/flatten-dict/default.nix b/pkgs/development/python-modules/flatten-dict/default.nix index 03b699b3d593..872e3dd75700 100644 --- a/pkgs/development/python-modules/flatten-dict/default.nix +++ b/pkgs/development/python-modules/flatten-dict/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, pytestCheckHook, }: @@ -20,6 +21,10 @@ buildPythonPackage (finalAttrs: { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + nativeCheckInputs = [ pytestCheckHook ]; pythonImportsCheck = [ "flatten_dict" ]; From f121b630ae8ccdaf3a273349425ef8a3ee381919 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 00:11:39 -0700 Subject: [PATCH 141/284] python3Packages.obsws-python: fix version --- pkgs/development/python-modules/obsws-python/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/obsws-python/default.nix b/pkgs/development/python-modules/obsws-python/default.nix index f5beeab35a55..f66746bbbb14 100644 --- a/pkgs/development/python-modules/obsws-python/default.nix +++ b/pkgs/development/python-modules/obsws-python/default.nix @@ -8,7 +8,7 @@ }: buildPythonPackage (finalAttrs: { pname = "obsws-python"; - version = "5.5"; + version = "1.8.0"; pyproject = true; src = fetchFromGitHub { From 701ebd45f1f8f2eeefae45d4aa064b6e219b7848 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 00:18:08 -0700 Subject: [PATCH 142/284] python3Packages.victron-mqtt: fix version in pyproject.toml --- pkgs/development/python-modules/victron-mqtt/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/victron-mqtt/default.nix b/pkgs/development/python-modules/victron-mqtt/default.nix index 501f55142150..5cd21356615a 100644 --- a/pkgs/development/python-modules/victron-mqtt/default.nix +++ b/pkgs/development/python-modules/victron-mqtt/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, hatchling, paho-mqtt, + pyprojectVersionPatchHook, pytest-asyncio, pytest-mock, pytestCheckHook, @@ -26,6 +27,10 @@ buildPythonPackage (finalAttrs: { hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ paho-mqtt ]; From fd360c4429648db133f7c0a13c6182d1a6aaebce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 13:49:11 -0700 Subject: [PATCH 143/284] python3Packages.cgal: fix version in setup.py --- pkgs/development/python-modules/cgal/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/cgal/default.nix b/pkgs/development/python-modules/cgal/default.nix index aedab3c3c09f..900acd45ed52 100644 --- a/pkgs/development/python-modules/cgal/default.nix +++ b/pkgs/development/python-modules/cgal/default.nix @@ -42,6 +42,8 @@ buildPythonPackage rec { hash = "sha256-MnUsl4ozMamKcQ13TV6mtoG7VKq8BuiDSIVq1RPn2rs="; }; + env.CGAL_PYTHON_MODULE_VERSION = version; + dontUseCmakeConfigure = true; build-system = [ From f4b20637d7a4586dae431a2014ce88c9cd770db3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 14:29:04 -0700 Subject: [PATCH 144/284] python3Packages.kgb: don't add a .dev0 suffix to version --- pkgs/development/python-modules/kgb/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/kgb/default.nix b/pkgs/development/python-modules/kgb/default.nix index 4b1a565fe73b..569e6e8583f4 100644 --- a/pkgs/development/python-modules/kgb/default.nix +++ b/pkgs/development/python-modules/kgb/default.nix @@ -18,6 +18,11 @@ buildPythonPackage rec { hash = "sha256-hNJXoUIyrCB9PCWLCmN81F6pBRwZApDR6JWA0adyklw="; }; + postPatch = '' + substituteInPlace setup.cfg \ + --replace-fail "tag_build = .dev" "" + ''; + build-system = [ setuptools ]; pythonImportsCheck = [ "kgb" ]; From 528e62cee44c9dff7db510b66a072cdefe5345be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 14:36:52 -0700 Subject: [PATCH 145/284] python3Packages.aiomusiccast: fix version in aiomusiccast/__init__.py --- pkgs/development/python-modules/aiomusiccast/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiomusiccast/default.nix b/pkgs/development/python-modules/aiomusiccast/default.nix index 5e6d1f494344..9aba589e9abe 100644 --- a/pkgs/development/python-modules/aiomusiccast/default.nix +++ b/pkgs/development/python-modules/aiomusiccast/default.nix @@ -19,8 +19,8 @@ buildPythonPackage rec { }; postPatch = '' - substituteInPlace pyproject.toml \ - --replace '"0.0.0"' '"${version}"' + substituteInPlace aiomusiccast/__init__.py \ + --replace-fail '__version__ = "0.0.0"' '__version__ = "${version}"' ''; build-system = [ hatchling ]; From 72dcf41a6f5b56f15a08bf033ae9766e247cf0f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 14:38:39 -0700 Subject: [PATCH 146/284] python3Packages.aiofile: unpin caio --- pkgs/development/python-modules/aiofile/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/aiofile/default.nix b/pkgs/development/python-modules/aiofile/default.nix index 8122aa00c218..cab97b24e166 100644 --- a/pkgs/development/python-modules/aiofile/default.nix +++ b/pkgs/development/python-modules/aiofile/default.nix @@ -23,6 +23,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + pythonRelaxDeps = [ + "caio" + ]; + dependencies = [ caio ]; nativeCheckInputs = [ From 978b351bf7d105956ece4083340dfea424d5f995 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 14:40:56 -0700 Subject: [PATCH 147/284] python3Packages.aiotractive: fix version in pyproject.toml --- pkgs/development/python-modules/aiotractive/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiotractive/default.nix b/pkgs/development/python-modules/aiotractive/default.nix index 2182709658d1..6b026d1d7e6f 100644 --- a/pkgs/development/python-modules/aiotractive/default.nix +++ b/pkgs/development/python-modules/aiotractive/default.nix @@ -4,6 +4,7 @@ buildPythonPackage, fetchFromGitHub, orjson, + pyprojectVersionPatchHook, setuptools, yarl, }: @@ -22,6 +23,10 @@ buildPythonPackage (finalAttrs: { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + pythonRelaxDeps = [ "orjson" ]; dependencies = [ From 889ea4c0319be40c017a48027b201cccb4319501 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 26 Jun 2026 14:50:15 -0700 Subject: [PATCH 148/284] python3Packages.word2number: fix version in setup.py --- pkgs/development/python-modules/word2number/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/word2number/default.nix b/pkgs/development/python-modules/word2number/default.nix index 0d5d92686d4d..abafd5a46f77 100644 --- a/pkgs/development/python-modules/word2number/default.nix +++ b/pkgs/development/python-modules/word2number/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { hash = "sha256-dgHPEfieNDZnP6+YvywvN3ZzmeICav0WMYKkWDSJ/LE="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "version = '1.0'" "version = '${version}'" + ''; + build-system = [ setuptools-scm ]; From c2e63d6bcb4ab26f81556a3cd98738b729dbe027 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 11:57:57 -0700 Subject: [PATCH 149/284] python3Packages.flask-login: fix version --- pkgs/development/python-modules/flask-login/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/flask-login/default.nix b/pkgs/development/python-modules/flask-login/default.nix index 7841dc704c9c..96dfc323b171 100644 --- a/pkgs/development/python-modules/flask-login/default.nix +++ b/pkgs/development/python-modules/flask-login/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "flask-login"; - version = "0.7.0dev0-2024-06-18"; + version = "0.6.3-unstable-2024-06-18"; pyproject = true; src = fetchFromGitHub { From b973eed9ea1a3680d38353c7cf5b767e81a2c17c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 12:06:57 -0700 Subject: [PATCH 150/284] python3Packages.multiaddr: rename from py-multiaddr The project name (e.g. on PyPI) is multiaddr. --- pkgs/development/python-modules/ipfshttpclient/default.nix | 4 ++-- .../python-modules/{py-multiaddr => multiaddr}/default.nix | 2 +- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 4 ++-- 4 files changed, 6 insertions(+), 5 deletions(-) rename pkgs/development/python-modules/{py-multiaddr => multiaddr}/default.nix (98%) diff --git a/pkgs/development/python-modules/ipfshttpclient/default.nix b/pkgs/development/python-modules/ipfshttpclient/default.nix index bcfab5aceb59..4e1d3160fab9 100644 --- a/pkgs/development/python-modules/ipfshttpclient/default.nix +++ b/pkgs/development/python-modules/ipfshttpclient/default.nix @@ -4,7 +4,7 @@ fetchFromGitHub, flit-core, python, - py-multiaddr, + multiaddr, requests, pytestCheckHook, pytest-cov-stub, @@ -34,7 +34,7 @@ buildPythonPackage rec { nativeBuildInputs = [ flit-core ]; propagatedBuildInputs = [ - py-multiaddr + multiaddr requests ]; diff --git a/pkgs/development/python-modules/py-multiaddr/default.nix b/pkgs/development/python-modules/multiaddr/default.nix similarity index 98% rename from pkgs/development/python-modules/py-multiaddr/default.nix rename to pkgs/development/python-modules/multiaddr/default.nix index 9b002fd4058e..7f9849778956 100644 --- a/pkgs/development/python-modules/py-multiaddr/default.nix +++ b/pkgs/development/python-modules/multiaddr/default.nix @@ -17,7 +17,7 @@ }: buildPythonPackage rec { - pname = "py-multiaddr"; + pname = "multiaddr"; version = "0.0.11"; pyproject = true; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 2b2006b9bf78..914dc3073626 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -445,6 +445,7 @@ mapAliases { Pweave = throw "'Pweave' has been renamed to/replaced by 'pweave'"; # Converted to throw 2025-10-29 py-deprecate = throw "'py-deprecate' has been renamed to/replaced by 'pydeprecate'"; # Converted to throw 2026-06-19 py-eth-sig-utils = throw "py-eth-sig-utils has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-04 + py-multiaddr = multiaddr; # added 2026-06-27 py-scrypt = scrypt; # added 2025-08-07 py_stringmatching = throw "'py_stringmatching' has been renamed to/replaced by 'py-stringmatching'"; # Converted to throw 2025-10-29 pybind11-protobuf = throw "'pybind11-protobuf' was only used by or-tools, and with some overrides, so vendored in there until it's used in other places."; # Converted to throw 2025-11-06 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4e382b9ef8ed..24f791c3e035 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10911,6 +10911,8 @@ self: super: with self; { multi-key-dict = callPackage ../development/python-modules/multi-key-dict { }; + multiaddr = callPackage ../development/python-modules/multiaddr { }; + multidict = callPackage ../development/python-modules/multidict { }; multimethod = callPackage ../development/python-modules/multimethod { }; @@ -13869,8 +13871,6 @@ self: super: with self; { py-moneyed = callPackage ../development/python-modules/py-moneyed { }; - py-multiaddr = callPackage ../development/python-modules/py-multiaddr { }; - py-multibase = callPackage ../development/python-modules/py-multibase { }; py-multicodec = callPackage ../development/python-modules/py-multicodec { }; From 9650af3a296de326de9f4cbf850c58aea9a930b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 12:16:34 -0700 Subject: [PATCH 151/284] python3Packages.stups-tokens: fix version in tokens/__init__.py --- pkgs/development/python-modules/stups-tokens/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/stups-tokens/default.nix b/pkgs/development/python-modules/stups-tokens/default.nix index a2614e55969e..8a0f9cebad98 100644 --- a/pkgs/development/python-modules/stups-tokens/default.nix +++ b/pkgs/development/python-modules/stups-tokens/default.nix @@ -22,6 +22,11 @@ buildPythonPackage rec { sha256 = "09z3l3xzdlwpivbi141gk1k0zd9m75mjwbdy81zc386rr9k8s0im"; }; + postPatch = '' + substituteInPlace tokens/__init__.py \ + --replace-fail "__version__ = '0.8'" "__version__ = '${version}'" + ''; + build-system = [ setuptools ]; dependencies = [ requests ]; From fb290d5d24ff35af71102ad0bd878d908c2977b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 07:56:52 -0700 Subject: [PATCH 152/284] python3Packages.pyspx: fix version in setup.py --- pkgs/development/python-modules/pyspx/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pyspx/default.nix b/pkgs/development/python-modules/pyspx/default.nix index 07e9db803be8..94b8a5a9bf79 100644 --- a/pkgs/development/python-modules/pyspx/default.nix +++ b/pkgs/development/python-modules/pyspx/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { fetchSubmodules = true; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'version="0.5.0"' 'version="${version}"' + ''; + build-system = [ cffi setuptools From 5f0ee842597f22dcf06e1e4643457295de0b740e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 08:06:10 -0700 Subject: [PATCH 153/284] python3Packages.yamlloader: fix version in pyproject.toml --- pkgs/development/python-modules/yamlloader/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/yamlloader/default.nix b/pkgs/development/python-modules/yamlloader/default.nix index 82ed1b8cee62..99c300aa96bc 100644 --- a/pkgs/development/python-modules/yamlloader/default.nix +++ b/pkgs/development/python-modules/yamlloader/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, hatch-vcs, hatchling, + pyprojectVersionPatchHook, pytestCheckHook, pyyaml, hypothesis, @@ -26,6 +27,10 @@ buildPythonPackage rec { hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ pyyaml ]; nativeCheckInputs = [ From a16de1dccf36e33726bba9238a84cd817cf21f29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 08:38:29 -0700 Subject: [PATCH 154/284] python3Packages.chroma-hnswlib: fix version in setup.py --- pkgs/development/python-modules/chroma-hnswlib/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/chroma-hnswlib/default.nix b/pkgs/development/python-modules/chroma-hnswlib/default.nix index 4deccaccc2af..85f76789a636 100644 --- a/pkgs/development/python-modules/chroma-hnswlib/default.nix +++ b/pkgs/development/python-modules/chroma-hnswlib/default.nix @@ -21,6 +21,11 @@ buildPythonPackage rec { hash = "sha256-Fs/BuocZblMSlmP6yp+aykbs0n1AdvL3AVAQI1AnZ9o="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail '__version__ = "0.7.6"' '__version__ = "${version}"' + ''; + nativeBuildInputs = [ numpy pybind11 From a55f8f39bf1744187cf77fdfe26231e165a1b990 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 08:48:54 -0700 Subject: [PATCH 155/284] python3Packages.cx-logging: fix version in VERSION --- pkgs/development/python-modules/cx-logging/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/cx-logging/default.nix b/pkgs/development/python-modules/cx-logging/default.nix index cda1235ed4d3..b8809fde80dc 100644 --- a/pkgs/development/python-modules/cx-logging/default.nix +++ b/pkgs/development/python-modules/cx-logging/default.nix @@ -22,6 +22,8 @@ buildPythonPackage (finalAttrs: { postPatch = '' substituteInPlace pyproject.toml \ --replace-fail "setuptools>=70.1,<75" "setuptools" + + echo '${finalAttrs.version}' > VERSION '' # The flag -soname isn't recognized by the linker on darwin. Only -install_name is valid. + lib.optionalString stdenv.hostPlatform.isDarwin '' From f0c9c59635b042337af205cfe1ac0911768fe4e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 08:51:16 -0700 Subject: [PATCH 156/284] python3Packages.minimock: fix version in minimock.py --- pkgs/development/python-modules/minimock/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/minimock/default.nix b/pkgs/development/python-modules/minimock/default.nix index fa45081db6a1..45800dd802ef 100644 --- a/pkgs/development/python-modules/minimock/default.nix +++ b/pkgs/development/python-modules/minimock/default.nix @@ -17,6 +17,11 @@ buildPythonPackage rec { hash = "sha256-Ut3iKc7Sr28uGgWCV3K3CS+gBta2icvbUPMjjo4fflU="; }; + postPatch = '' + substituteInPlace minimock.py \ + --replace-fail "__version__ = '1.2.10.dev0'" "__version__ = '${version}'" + ''; + nativeBuildInputs = [ setuptools ]; # Module has no tests From 3a4ada4f4d2d73ded0e372aaf0ec557b934dddef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 08:54:02 -0700 Subject: [PATCH 157/284] python3Packages.openant: fix pname --- pkgs/development/python-modules/openant/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/openant/default.nix b/pkgs/development/python-modules/openant/default.nix index e3a549fd5d03..f37cfd052dfc 100644 --- a/pkgs/development/python-modules/openant/default.nix +++ b/pkgs/development/python-modules/openant/default.nix @@ -11,7 +11,7 @@ }: buildPythonPackage rec { - pname = "openant-unstable"; + pname = "openant"; version = "1.3.1"; pyproject = true; From 2538c000a624873209a93bec4e3c14ab71c92b3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 08:55:05 -0700 Subject: [PATCH 158/284] python3Packages.python3-nmap: fix version in setup.py --- pkgs/development/python-modules/python3-nmap/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/python3-nmap/default.nix b/pkgs/development/python-modules/python3-nmap/default.nix index c41f20fc6acf..d4728a58a3b7 100644 --- a/pkgs/development/python-modules/python3-nmap/default.nix +++ b/pkgs/development/python-modules/python3-nmap/default.nix @@ -18,6 +18,11 @@ buildPythonPackage rec { hash = "sha256-d/rH3aRNh9SDyVvbiTFCQyfZ6amtnH2iSwKqTOlVLNY="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'version="1.9.1"' 'version="${version}"' + ''; + build-system = [ setuptools ]; dependencies = [ simplejson ]; From 94d27db0150acace1735f4a934039a5ffe1ec7de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:12:24 -0700 Subject: [PATCH 159/284] python3Packages.tlsh: fix version in py_ext/setup.py --- pkgs/development/python-modules/tlsh/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/tlsh/default.nix b/pkgs/development/python-modules/tlsh/default.nix index 1c2c8aa8532a..b71daa2736d9 100644 --- a/pkgs/development/python-modules/tlsh/default.nix +++ b/pkgs/development/python-modules/tlsh/default.nix @@ -18,6 +18,11 @@ buildPythonPackage rec { hash = "sha256-cYvXZrd+8ZC5LfucguFFNlEX8FR+AkchmCFButYoiMg="; }; + postPatch = '' + substituteInPlace py_ext/setup.py \ + --replace-fail "version = '4.5.0'" "version = '${version}'" + ''; + patches = [ # https://github.com/trendmicro/tlsh/pull/152 ./cmake-4-compat.patch From 66086b79bac26db5a0ca59bb61eaf98f7650242d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:14:20 -0700 Subject: [PATCH 160/284] python3Packages.riden: fix version in pyproject.toml --- pkgs/development/python-modules/riden/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/riden/default.nix b/pkgs/development/python-modules/riden/default.nix index 2fa2f095aead..c0f35bfc1927 100644 --- a/pkgs/development/python-modules/riden/default.nix +++ b/pkgs/development/python-modules/riden/default.nix @@ -5,6 +5,7 @@ fetchFromGitHub, modbus-tk, poetry-core, + pyprojectVersionPatchHook, pyserial, setuptools, }: @@ -26,6 +27,10 @@ buildPythonPackage rec { setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ click modbus-tk From 4bc8a3b4ac24a598f2bdf8dba3481c7a976aa718 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:15:46 -0700 Subject: [PATCH 161/284] python3Packages.pysmi: fix version in pyproject.toml --- pkgs/development/python-modules/pysmi/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pysmi/default.nix b/pkgs/development/python-modules/pysmi/default.nix index 39ade30d993e..f1171b0b8932 100644 --- a/pkgs/development/python-modules/pysmi/default.nix +++ b/pkgs/development/python-modules/pysmi/default.nix @@ -5,6 +5,7 @@ flit-core, jinja2, lark, + pyprojectVersionPatchHook, pysmi, pysnmp, pytestCheckHook, @@ -25,6 +26,10 @@ buildPythonPackage (finalAttrs: { build-system = [ flit-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ jinja2 lark From 12efcad2434397f97efdf7cde247d9c9ad371432 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:23:20 -0700 Subject: [PATCH 162/284] python3Packages.pylbfgs: rename from dedupe-pylbfgs The project name (e.g. on PyPI) is pylbfgs. --- pkgs/development/python-modules/pyhacrf-datamade/default.nix | 4 ++-- .../python-modules/{dedupe-pylbfgs => pylbfgs}/default.nix | 2 +- .../{dedupe-pylbfgs => pylbfgs}/tests-numpy-2.4.patch | 0 pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 4 ++-- 5 files changed, 6 insertions(+), 5 deletions(-) rename pkgs/development/python-modules/{dedupe-pylbfgs => pylbfgs}/default.nix (97%) rename pkgs/development/python-modules/{dedupe-pylbfgs => pylbfgs}/tests-numpy-2.4.patch (100%) diff --git a/pkgs/development/python-modules/pyhacrf-datamade/default.nix b/pkgs/development/python-modules/pyhacrf-datamade/default.nix index db850e5809ff..abe4ed7b0f0f 100644 --- a/pkgs/development/python-modules/pyhacrf-datamade/default.nix +++ b/pkgs/development/python-modules/pyhacrf-datamade/default.nix @@ -10,7 +10,7 @@ setuptools, # dependencies - dedupe-pylbfgs, + pylbfgs, # tests pytestCheckHook, @@ -37,7 +37,7 @@ buildPythonPackage { ]; dependencies = [ - dedupe-pylbfgs + pylbfgs numpy ]; diff --git a/pkgs/development/python-modules/dedupe-pylbfgs/default.nix b/pkgs/development/python-modules/pylbfgs/default.nix similarity index 97% rename from pkgs/development/python-modules/dedupe-pylbfgs/default.nix rename to pkgs/development/python-modules/pylbfgs/default.nix index 738177ec8106..07dba43c1d0b 100644 --- a/pkgs/development/python-modules/dedupe-pylbfgs/default.nix +++ b/pkgs/development/python-modules/pylbfgs/default.nix @@ -14,7 +14,7 @@ }: buildPythonPackage rec { - pname = "dedupe-pylbfgs"; + pname = "pylbfgs"; version = "0.2.0.16"; pyproject = true; diff --git a/pkgs/development/python-modules/dedupe-pylbfgs/tests-numpy-2.4.patch b/pkgs/development/python-modules/pylbfgs/tests-numpy-2.4.patch similarity index 100% rename from pkgs/development/python-modules/dedupe-pylbfgs/tests-numpy-2.4.patch rename to pkgs/development/python-modules/pylbfgs/tests-numpy-2.4.patch diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 914dc3073626..60886810b4cb 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -165,6 +165,7 @@ mapAliases { datatable = throw "'datatable' has been removed due to lack of upstream maintenance"; # added 2026-02-02 dateutil = throw "'dateutil' has been renamed to/replaced by 'python-dateutil'"; # Converted to throw 2025-10-29 debian = throw "'debian' has been renamed to/replaced by 'python-debian'"; # Converted to throw 2025-10-29 + dedupe-pylbfgs = pylbfgs; # added 2026-06-28 deepsearch-glm = throw "'deepsearch-glm' has been removed due to lack of upstream maintenance"; # Added 2025-03-04 dictpath = throw "'dictpath' has been renamed to/replaced by 'pathable'"; # Converted to throw 2025-10-29 diff_cover = throw "'diff_cover' has been renamed to/replaced by 'diff-cover'"; # Converted to throw 2025-10-29 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 24f791c3e035..9cd1c0b0c16b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4135,8 +4135,6 @@ self: super: with self; { dedupe-levenshtein-search = callPackage ../development/python-modules/dedupe-levenshtein-search { }; - dedupe-pylbfgs = callPackage ../development/python-modules/dedupe-pylbfgs { }; - deebot-client = callPackage ../development/python-modules/deebot-client { }; deemix = callPackage ../development/python-modules/deemix { }; @@ -14850,6 +14848,8 @@ self: super: with self; { pylaunches = callPackage ../development/python-modules/pylaunches { }; + pylbfgs = callPackage ../development/python-modules/pylbfgs { }; + pyld = callPackage ../development/python-modules/pyld { }; pyldavis = callPackage ../development/python-modules/pyldavis { }; From fe92563706cf70c45001ad2dc642434ad56d1a39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:28:49 -0700 Subject: [PATCH 163/284] python3Packages.goodwe: fix version in VERSION --- pkgs/development/python-modules/goodwe/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/goodwe/default.nix b/pkgs/development/python-modules/goodwe/default.nix index 0cf36da8a8f9..e5ec15975a46 100644 --- a/pkgs/development/python-modules/goodwe/default.nix +++ b/pkgs/development/python-modules/goodwe/default.nix @@ -18,6 +18,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-2wnfc+W1lhUgvWa1iwHxJu4WGZHaXvmxgtBAkTJHJ3E="; }; + postPatch = '' + echo '${finalAttrs.version}' > VERSION + ''; + build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook ]; From cc89337b564ea76a5048d162d1901acc6adce00d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:31:02 -0700 Subject: [PATCH 164/284] python3Packages.pycasbin: fix version in pyproject.toml --- pkgs/development/python-modules/pycasbin/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pycasbin/default.nix b/pkgs/development/python-modules/pycasbin/default.nix index 2d152c3c0a35..06210b965936 100644 --- a/pkgs/development/python-modules/pycasbin/default.nix +++ b/pkgs/development/python-modules/pycasbin/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + pyprojectVersionPatchHook, pytestCheckHook, setuptools, simpleeval, @@ -22,6 +23,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ simpleeval wcmatch From 0763df0110d4bd8fece56b1757ec72874b756ead Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:33:44 -0700 Subject: [PATCH 165/284] python3Packages.pyequihash: don't check metadata --- pkgs/development/python-modules/pyequihash/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/pyequihash/default.nix b/pkgs/development/python-modules/pyequihash/default.nix index 54b033d2b89e..18d8e4a38e3f 100644 --- a/pkgs/development/python-modules/pyequihash/default.nix +++ b/pkgs/development/python-modules/pyequihash/default.nix @@ -31,6 +31,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "equihash" ]; + # The Python bindings' version isn't updated in tandem with equihash + dontCheckPythonMetadata = true; + checkPhase = '' runHook preCheck From 388a73241ce513a0f5ae3a81164d65f1e33d7c39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:37:40 -0700 Subject: [PATCH 166/284] python3Packages.sphinxfeed-lsaffre: fix version in sphinxfeed.py --- .../python-modules/sphinxfeed-lsaffre/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/sphinxfeed-lsaffre/default.nix b/pkgs/development/python-modules/sphinxfeed-lsaffre/default.nix index 1bddcab744a7..0d829173438c 100644 --- a/pkgs/development/python-modules/sphinxfeed-lsaffre/default.nix +++ b/pkgs/development/python-modules/sphinxfeed-lsaffre/default.nix @@ -22,6 +22,11 @@ buildPythonPackage (finalAttrs: { hash = "sha256-2hS8EzaUlxAqBT0R5NMYAuj3ZMPq+x5nqJnidQOAGfM="; }; + postPatch = '' + substituteInPlace sphinxfeed.py \ + --replace-fail "__version__ = '0.3.5'" "__version__ = '${finalAttrs.version}'" + ''; + build-system = [ hatchling ]; From 4ec747bd48f934be0f5af60c1482fc50570145cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 19:41:33 -0700 Subject: [PATCH 167/284] python3Packages.pymilter: fix version in setup.py --- pkgs/development/python-modules/pymilter/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pymilter/default.nix b/pkgs/development/python-modules/pymilter/default.nix index a54d852e3b83..dda74831930e 100644 --- a/pkgs/development/python-modules/pymilter/default.nix +++ b/pkgs/development/python-modules/pymilter/default.nix @@ -21,6 +21,11 @@ buildPythonPackage rec { hash = "sha256-plaWXwDAIsVzEtrabZuZj7T4WNfz2ntQHgcMCVf5S70="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "version = '1.0.5'" "version = '${version}'" + ''; + build-system = [ setuptools ]; From 00278dcc759fb538e300755606de47305fed3218 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 28 Jun 2026 21:03:34 -0700 Subject: [PATCH 168/284] python3Packages.iterative-telemetry: fix pname --- pkgs/development/python-modules/iterative-telemetry/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/iterative-telemetry/default.nix b/pkgs/development/python-modules/iterative-telemetry/default.nix index 6e7f0ab17ca8..7312b62bd3fc 100644 --- a/pkgs/development/python-modules/iterative-telemetry/default.nix +++ b/pkgs/development/python-modules/iterative-telemetry/default.nix @@ -12,7 +12,7 @@ }: buildPythonPackage rec { - pname = "iterative-telemtry"; + pname = "iterative-telemetry"; version = "0.0.10"; pyproject = true; From d8f24a5dd02ab1a565aefeace68cd5d2d03a7ec8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 29 Jun 2026 10:21:56 -0700 Subject: [PATCH 169/284] python3Packages.accuweather: fix version in pyproject.toml --- pkgs/development/python-modules/accuweather/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/accuweather/default.nix b/pkgs/development/python-modules/accuweather/default.nix index 91318f108b18..7cb2d9b93d81 100644 --- a/pkgs/development/python-modules/accuweather/default.nix +++ b/pkgs/development/python-modules/accuweather/default.nix @@ -5,6 +5,7 @@ buildPythonPackage, fetchFromGitHub, orjson, + pyprojectVersionPatchHook, pytest-asyncio, pytest-error-for-skips, pytestCheckHook, @@ -27,6 +28,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp orjson From 34f55ec38cf54f883df37865c86c043ff6fbf3c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 29 Jun 2026 10:24:45 -0700 Subject: [PATCH 170/284] python3Packages.aioazuredevops: remove .dev0 suffix from version --- pkgs/development/python-modules/aioazuredevops/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aioazuredevops/default.nix b/pkgs/development/python-modules/aioazuredevops/default.nix index 3573c5ab088f..0d3afa5d7746 100644 --- a/pkgs/development/python-modules/aioazuredevops/default.nix +++ b/pkgs/development/python-modules/aioazuredevops/default.nix @@ -34,6 +34,11 @@ buildPythonPackage rec { hash = "sha256-0KQHL9DmNeRvEs51XPcncxNzXb+SqYM5xPDvOdKSQMI="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail .dev0 "" + ''; + build-system = [ incremental setuptools From 40abd3e2cbd43c6a289177c8a3ddd11460b52e1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 29 Jun 2026 10:26:18 -0700 Subject: [PATCH 171/284] python3Packages.aioecowitt: fix version in pyproject.toml --- pkgs/development/python-modules/aioecowitt/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aioecowitt/default.nix b/pkgs/development/python-modules/aioecowitt/default.nix index 81f42e2bc72e..5478e356a3ba 100644 --- a/pkgs/development/python-modules/aioecowitt/default.nix +++ b/pkgs/development/python-modules/aioecowitt/default.nix @@ -4,6 +4,7 @@ buildPythonPackage, fetchFromGitHub, meteocalc, + pyprojectVersionPatchHook, pytest-aiohttp, pytestCheckHook, setuptools, @@ -23,6 +24,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp meteocalc From f6229cee1bbf2791deca48d66de163cdc16a2fb4 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 30 Jun 2026 20:03:55 +0200 Subject: [PATCH 172/284] pythonPackages.aioshelly: fix version in pyproject.toml --- pkgs/development/python-modules/aioshelly/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aioshelly/default.nix b/pkgs/development/python-modules/aioshelly/default.nix index d911ebfa39e0..e79935cdce1e 100644 --- a/pkgs/development/python-modules/aioshelly/default.nix +++ b/pkgs/development/python-modules/aioshelly/default.nix @@ -8,6 +8,7 @@ fetchFromGitHub, habluetooth, orjson, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, setuptools, @@ -29,6 +30,10 @@ buildPythonPackage (finalAttrs: { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp bleak-retry-connector From db5d42a1fb4584587772930acad7ae6d9d276b96 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 30 Jun 2026 20:11:11 +0200 Subject: [PATCH 173/284] python3Packages.ttp: fix wrong version metadata in pyproject.toml --- pkgs/development/python-modules/ttp/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/ttp/default.nix b/pkgs/development/python-modules/ttp/default.nix index dffb57bc6d97..0eb01d3ea45d 100644 --- a/pkgs/development/python-modules/ttp/default.nix +++ b/pkgs/development/python-modules/ttp/default.nix @@ -11,6 +11,7 @@ openpyxl, pytestCheckHook, poetry-core, + pyprojectVersionPatchHook, pyyaml, tabulate, ttp-templates, @@ -29,7 +30,11 @@ buildPythonPackage rec { hash = "sha256-A0McQRpSjr0EYIrHQExtBqMe+AmL+IGWaRHeexyvtvg="; }; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; + + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; propagatedBuildInputs = [ # https://github.com/dmulyalin/ttp/blob/master/docs/source/Installation.rst#additional-dependencies From 6d8fcd0ed4abf65053bb6fc06c50f1ba2850c13d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 08:42:11 -0700 Subject: [PATCH 174/284] python3Packages.inkex: don't check metadata --- pkgs/development/python-modules/inkex/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/inkex/default.nix b/pkgs/development/python-modules/inkex/default.nix index e3633c2c536d..a65642f7d2ee 100644 --- a/pkgs/development/python-modules/inkex/default.nix +++ b/pkgs/development/python-modules/inkex/default.nix @@ -62,6 +62,9 @@ buildPythonPackage { pythonImportsCheck = [ "inkex" ]; + # The inkex version isn't update in tandem with inkscape + dontCheckPythonMetadata = true; + nativeCheckInputs = [ gobject-introspection pytestCheckHook From 152201b5f8e3b1aeec5a371fbd9b11d31562455c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 09:09:28 -0700 Subject: [PATCH 175/284] python3Packages.openai-whisper: fix pname --- pkgs/development/python-modules/openai-whisper/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/openai-whisper/default.nix b/pkgs/development/python-modules/openai-whisper/default.nix index 0fa011ac0a75..8ec856b23b72 100644 --- a/pkgs/development/python-modules/openai-whisper/default.nix +++ b/pkgs/development/python-modules/openai-whisper/default.nix @@ -27,7 +27,7 @@ }: buildPythonPackage (finalAttrs: { - pname = "whisper"; + pname = "openai-whisper"; version = "20250625"; pyproject = true; __structuredAttrs = true; From 16294a2525f58cd9116a8a0e1d06419678b89b27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 10:10:24 -0700 Subject: [PATCH 176/284] python3Packages.simpleitk: remove +ggit.n suffix from metadata version --- pkgs/development/python-modules/simpleitk/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/simpleitk/default.nix b/pkgs/development/python-modules/simpleitk/default.nix index a8503a1197f2..18b4ad91ec34 100644 --- a/pkgs/development/python-modules/simpleitk/default.nix +++ b/pkgs/development/python-modules/simpleitk/default.nix @@ -28,6 +28,11 @@ buildPythonPackage rec { swig scikit-build ]; + + cmakeFlags = [ + "-DSimpleITK_BUILD_DISTRIBUTE=ON" + ]; + propagatedBuildInputs = [ elastix itk From a3d32276688924001dfcfc18cfbabe619deb98ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 10:50:50 -0700 Subject: [PATCH 177/284] python3Packages.git-versioner: fix version in pyproject.toml --- .../python-modules/git-versioner/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/git-versioner/default.nix b/pkgs/development/python-modules/git-versioner/default.nix index e05d20dad3d4..46e9e6f5747e 100644 --- a/pkgs/development/python-modules/git-versioner/default.nix +++ b/pkgs/development/python-modules/git-versioner/default.nix @@ -1,8 +1,9 @@ { lib, buildPythonPackage, - setuptools-scm, + setuptools, fetchFromGitLab, + pyprojectVersionPatchHook, }: buildPythonPackage rec { @@ -13,11 +14,15 @@ buildPythonPackage rec { src = fetchFromGitLab { owner = "alelec"; repo = "__version__"; - rev = "v${version}"; + tag = "v${version}"; hash = "sha256-bnpuFJSd4nBXJA75V61kiB+nU5pUzdEAIScfKx7aaGU="; }; - nativeBuildInputs = [ setuptools-scm ]; + build-system = [ setuptools ]; + + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; pythonImportsCheck = [ "__version__" ]; From 434bdf3e314e0f8b6024a050f609803ccb2bd58e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 10:55:22 -0700 Subject: [PATCH 178/284] python3Packages.gattlib: fix version --- pkgs/development/python-modules/gattlib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/gattlib/default.nix b/pkgs/development/python-modules/gattlib/default.nix index e9bf36c3d599..3073ee291ddc 100644 --- a/pkgs/development/python-modules/gattlib/default.nix +++ b/pkgs/development/python-modules/gattlib/default.nix @@ -16,13 +16,13 @@ buildPythonPackage rec { pname = "gattlib"; - version = "20210616"; + version = "0.20210616"; pyproject = true; src = fetchFromGitHub { owner = "oscaracena"; repo = "pygattlib"; - rev = "v.${version}"; + tag = "v.${lib.removePrefix "0." version}"; hash = "sha256-n3D9CWKvgw4FYmbvsfhaHN963HARBG0p4CcZBC8Gkb0="; }; From e6bf6e9fdcf5b9c7a833d05b3f8857142924fe50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 10:57:39 -0700 Subject: [PATCH 179/284] python3Packages.osadl-matrix: fix version in VERSION --- pkgs/development/python-modules/osadl-matrix/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/osadl-matrix/default.nix b/pkgs/development/python-modules/osadl-matrix/default.nix index 405fcc7e1e7d..f781f29389d7 100644 --- a/pkgs/development/python-modules/osadl-matrix/default.nix +++ b/pkgs/development/python-modules/osadl-matrix/default.nix @@ -24,6 +24,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-vcSaWDX8P07Bj035vGq5dZYO+WkZOod7tTubWygl27k="; }; + postPatch = '' + echo '${finalAttrs.version}' > VERSION + ''; + build-system = [ setuptools ]; From b29ec61921f769e6aaf8a2ee0e24f915dd2327b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 11:01:18 -0700 Subject: [PATCH 180/284] python3Packages.pyhanko.testData: fix version in pyproject.toml --- pkgs/development/python-modules/pyhanko/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/pyhanko/default.nix b/pkgs/development/python-modules/pyhanko/default.nix index 575cd470b4da..0b18e48eb38c 100644 --- a/pkgs/development/python-modules/pyhanko/default.nix +++ b/pkgs/development/python-modules/pyhanko/default.nix @@ -153,6 +153,10 @@ buildPythonPackage (finalAttrs: { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ certomancer pyhanko-certvalidator From a372dc5edb1c02096a3e07caf4e01661529d7b46 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 30 Jun 2026 20:21:20 +0200 Subject: [PATCH 181/284] python3Packages.vncdotool: rename from vncdo --- pkgs/development/python-modules/pyvirtualdisplay/default.nix | 4 ++-- .../python-modules/{vncdo => vncdotool}/default.nix | 2 +- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 +- 6 files changed, 7 insertions(+), 5 deletions(-) rename pkgs/development/python-modules/{vncdo => vncdotool}/default.nix (97%) diff --git a/pkgs/development/python-modules/pyvirtualdisplay/default.nix b/pkgs/development/python-modules/pyvirtualdisplay/default.nix index 1f76c8690a2a..9e015ee0d775 100644 --- a/pkgs/development/python-modules/pyvirtualdisplay/default.nix +++ b/pkgs/development/python-modules/pyvirtualdisplay/default.nix @@ -21,7 +21,7 @@ pytest-timeout, pytest-xdist, pytestCheckHook, - vncdo, + vncdotool, }: buildPythonPackage rec { @@ -53,7 +53,7 @@ buildPythonPackage rec { psutil pytest-timeout pytestCheckHook - (vncdo.overridePythonAttrs { doCheck = false; }) + (vncdotool.overridePythonAttrs { doCheck = false; }) xorg-server xmessage xvfb diff --git a/pkgs/development/python-modules/vncdo/default.nix b/pkgs/development/python-modules/vncdotool/default.nix similarity index 97% rename from pkgs/development/python-modules/vncdo/default.nix rename to pkgs/development/python-modules/vncdotool/default.nix index 5fdcf62d14e1..bd748fc8156d 100644 --- a/pkgs/development/python-modules/vncdo/default.nix +++ b/pkgs/development/python-modules/vncdotool/default.nix @@ -12,7 +12,7 @@ }: buildPythonPackage rec { - pname = "vncdo"; + pname = "vncdotool"; version = "1.2.0"; pyproject = true; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 2725af403fa1..0d4d0cb570b3 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -2341,6 +2341,7 @@ mapAliases { vkBasalt = throw "'vkBasalt' has been renamed to/replaced by 'vkbasalt'"; # Converted to throw 2025-10-27 vkdt-wayland = throw "'vkdt-wayland' has been renamed to/replaced by 'vkdt'"; # Converted to throw 2025-10-27 vmfs-tools = throw "'vmfs-tools' has been removed as it depends on unsupported fuse2 and is unmaintained upstream"; # Added 2026-06-07 + vncdo = warnAlias "'vncdo' has been renamed to 'vncdotool'" vncdotool; # Added 2026-06-30 vokoscreen = throw "'vokoscreen' has been replaced by vokoscreen-ng"; # Added 2025-10-21 volk_2 = throw "'volk_2' has been removed after not being used by any package for a long time"; # Added 2025-10-25 volnoti = throw "'volnoti' has been removed due to lack of maintenance upstream. Consider using 'rumno' instead."; # Added 2024-12-04 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a4cbba225ac2..47ccce701199 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3073,7 +3073,7 @@ with pkgs; vinyl-cache = vinyl-cache_9; - vncdo = with python3Packages; toPythonApplication vncdo; + vncdotool = with python3Packages; toPythonApplication vncdotool; # An alias to work around the splicing incidents # Related: diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 60886810b4cb..7c4b1dcb1f1c 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -680,6 +680,7 @@ mapAliases { vcver = throw "vcver has been removed, since it was an unused leaf package"; # added 2025-08-25 vega_datasets = throw "'vega_datasets' has been renamed to/replaced by 'vega-datasets'"; # Converted to throw 2025-10-29 ViennaRNA = throw "'ViennaRNA' has been renamed to/replaced by 'viennarna'"; # Converted to throw 2025-10-29 + vncdo = vncdotool; # Added 2026-06-30 vulcan-api = throw "vulcan-api has been removed. Their API has changed and they don't allow access from unofficial software anymore."; # added 2025-09-05 vxi11 = throw "'vxi11' has been removed as it was broken and unmaintained upstream"; # Added 2025-11-27 Wand = throw "'Wand' has been renamed to/replaced by 'wand'"; # Converted to throw 2025-10-29 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9cd1c0b0c16b..9bbbab5e3b97 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -21763,7 +21763,7 @@ self: super: with self; { vmprof = callPackage ../development/python-modules/vmprof { }; - vncdo = callPackage ../development/python-modules/vncdo { }; + vncdotool = callPackage ../development/python-modules/vncdotool { }; vnoise = callPackage ../development/python-modules/vnoise { }; From 61ac5736f427642244c265c76857eb450a4db982 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 11:37:18 -0700 Subject: [PATCH 182/284] python3Packages.vncdotool: use __structuredAttrs --- pkgs/development/python-modules/vncdotool/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/vncdotool/default.nix b/pkgs/development/python-modules/vncdotool/default.nix index bd748fc8156d..5bfb05292676 100644 --- a/pkgs/development/python-modules/vncdotool/default.nix +++ b/pkgs/development/python-modules/vncdotool/default.nix @@ -15,6 +15,7 @@ buildPythonPackage rec { pname = "vncdotool"; version = "1.2.0"; pyproject = true; + __structuredAttrs = true; src = fetchFromGitHub { owner = "sibson"; From a8ea58d3664c38cb3e1400e268c84190d52025a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 16:43:19 -0700 Subject: [PATCH 183/284] python3Packages.bencode-py: fix pname --- pkgs/development/python-modules/bencode-py/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/bencode-py/default.nix b/pkgs/development/python-modules/bencode-py/default.nix index 5d1293e6e9e5..0f0c09680d8a 100644 --- a/pkgs/development/python-modules/bencode-py/default.nix +++ b/pkgs/development/python-modules/bencode-py/default.nix @@ -7,7 +7,7 @@ pytestCheckHook, }: buildPythonPackage (finalAttrs: { - pname = "beconde-py"; + pname = "bencode-py"; version = "4.0.0"; pyproject = true; From 5f2bcd2a01e3d0580eba02bacbdb4eedd8863219 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 16:52:08 -0700 Subject: [PATCH 184/284] python3Packages.sqlite-vec: fix version in pyproject.toml --- pkgs/development/python-modules/sqlite-vec/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/sqlite-vec/default.nix b/pkgs/development/python-modules/sqlite-vec/default.nix index fa5786b24425..2f710628c9b6 100644 --- a/pkgs/development/python-modules/sqlite-vec/default.nix +++ b/pkgs/development/python-modules/sqlite-vec/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchpatch, + pyprojectVersionPatchHook, # build-system setuptools, @@ -58,6 +59,10 @@ buildPythonPackage rec { setuptools-scm ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ sqlite-vec-c ]; From 1f07ef191f4d0dae5c655e71c5c7e1abe6c68e70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 19:17:32 -0700 Subject: [PATCH 185/284] python3Packages.gradio.sans-reverse-dependencies: don't check metadata --- pkgs/development/python-modules/gradio/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/gradio/default.nix b/pkgs/development/python-modules/gradio/default.nix index 073163aa7a8b..a15ce768d8d5 100644 --- a/pkgs/development/python-modules/gradio/default.nix +++ b/pkgs/development/python-modules/gradio/default.nix @@ -439,6 +439,7 @@ buildPythonPackage (finalAttrs: { shopt -u globstar ''; pythonImportsCheck = null; + dontCheckPythonMetadata = true; dontCheckRuntimeDeps = true; }); From 8ca5e47471b3bf9d1b3973874dd22fa09dda6c4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 19:53:54 -0700 Subject: [PATCH 186/284] python3Packages.dlms-cosem: fix version in setup.py --- pkgs/development/python-modules/dlms-cosem/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/dlms-cosem/default.nix b/pkgs/development/python-modules/dlms-cosem/default.nix index 43a2da0ef092..1f7e5bee54bb 100644 --- a/pkgs/development/python-modules/dlms-cosem/default.nix +++ b/pkgs/development/python-modules/dlms-cosem/default.nix @@ -25,6 +25,11 @@ buildPythonPackage rec { hash = "sha256-ZsF+GUVG9bZNZE5daROQJIZZgqpjAkB/bFyre2oGu+E="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'VERSION = "24.1.0"' 'VERSION = "${version}"' + ''; + build-system = [ setuptools ]; dependencies = [ From 691f9d4a8a24afd771501e580c76eb0548b5fca4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 20:00:28 -0700 Subject: [PATCH 187/284] python3Packages.python-apt: fix pname --- pkgs/development/python-modules/python-apt/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/python-apt/default.nix b/pkgs/development/python-modules/python-apt/default.nix index 9df487e14ac0..0c0056888e6e 100644 --- a/pkgs/development/python-modules/python-apt/default.nix +++ b/pkgs/development/python-modules/python-apt/default.nix @@ -7,7 +7,7 @@ }: buildPythonPackage rec { - pname = "apt"; + pname = "python-apt"; version = "3.1.0"; pyproject = true; From 00766a5d4fbf94fcc18aae768d72a2ba386e56c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 20:04:04 -0700 Subject: [PATCH 188/284] python3Packages.laszip: fix pname --- pkgs/development/python-modules/laszip/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/laszip/default.nix b/pkgs/development/python-modules/laszip/default.nix index 50bc114b7f7e..04c56f831b45 100644 --- a/pkgs/development/python-modules/laszip/default.nix +++ b/pkgs/development/python-modules/laszip/default.nix @@ -14,7 +14,7 @@ }: buildPythonPackage (finalAttrs: { - pname = "laszip-python"; + pname = "laszip"; version = "0.3.0"; pyproject = true; From e1b40f53816ac5713addbb7f4e1dd1a07414a801 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 30 Jun 2026 20:40:43 -0700 Subject: [PATCH 189/284] python3Packages.ourgroceries: fix version in setup.py --- pkgs/development/python-modules/ourgroceries/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/ourgroceries/default.nix b/pkgs/development/python-modules/ourgroceries/default.nix index 833f6072ae5b..b95a92ed680c 100644 --- a/pkgs/development/python-modules/ourgroceries/default.nix +++ b/pkgs/development/python-modules/ourgroceries/default.nix @@ -19,6 +19,11 @@ buildPythonPackage rec { hash = "sha256-tlgctQvbR2YzM6Q1A/P1i40LSt4/2hsetlDeO07RBPE="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "version='1.5.3'" "version='${version}'" + ''; + build-system = [ setuptools ]; dependencies = [ From be1222f4f69f3a1f4b4d378dac89215975ab6c6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 17:38:54 -0700 Subject: [PATCH 190/284] python3Packages.pyportainer: fix version in pyproject.toml --- pkgs/development/python-modules/pyportainer/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pyportainer/default.nix b/pkgs/development/python-modules/pyportainer/default.nix index 82d1a4a55b4f..4cb6fd4c0e3b 100644 --- a/pkgs/development/python-modules/pyportainer/default.nix +++ b/pkgs/development/python-modules/pyportainer/default.nix @@ -8,6 +8,7 @@ lib, mashumaro, orjson, + pyprojectVersionPatchHook, pytest-cov-stub, pytestCheckHook, syrupy, @@ -29,6 +30,10 @@ buildPythonPackage (finalAttrs: { build-system = [ hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp mashumaro From 694bc89ebc86b2e3a170ec1e9a8494a4b7bda87a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 17:40:45 -0700 Subject: [PATCH 191/284] python3Packages.meteo-lt-pkg: fix version in pyproject.toml --- pkgs/development/python-modules/meteo-lt-pkg/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/meteo-lt-pkg/default.nix b/pkgs/development/python-modules/meteo-lt-pkg/default.nix index dd1639485fce..8b9cc97c733f 100644 --- a/pkgs/development/python-modules/meteo-lt-pkg/default.nix +++ b/pkgs/development/python-modules/meteo-lt-pkg/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, lib, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, setuptools, @@ -22,6 +23,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp ]; From 7991a730996469fe3960d705dc111ce3c4bd71b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 17:42:29 -0700 Subject: [PATCH 192/284] python3Packages.london-tube-status: fix version in setup.py --- .../python-modules/london-tube-status/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/london-tube-status/default.nix b/pkgs/development/python-modules/london-tube-status/default.nix index 9f47872987fd..656ff7b39003 100644 --- a/pkgs/development/python-modules/london-tube-status/default.nix +++ b/pkgs/development/python-modules/london-tube-status/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { hash = "sha256-0uDCrF3abx94X47LQxgALirSF/spJPVD91G2WqXaDVs="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'VERSION = "0.6.1"' 'VERSION = "${version}"' + ''; + build-system = [ setuptools ]; From 5c2746b34c0b26a00ce26ae75c53f8e72e65c12a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 17:43:32 -0700 Subject: [PATCH 193/284] python3Packages.knocki: fix version in pyproject.toml --- pkgs/development/python-modules/knocki/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/knocki/default.nix b/pkgs/development/python-modules/knocki/default.nix index 6073ba2b48c4..4400dba5559e 100644 --- a/pkgs/development/python-modules/knocki/default.nix +++ b/pkgs/development/python-modules/knocki/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, poetry-core, + pyprojectVersionPatchHook, pytestCheckHook, pytest-aiohttp, pytest-cov-stub, @@ -28,6 +29,10 @@ buildPythonPackage rec { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp mashumaro From 5acdac6455601cd53b551f4f539df252155ba3c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 17:44:34 -0700 Subject: [PATCH 194/284] python3Packages.nyt-games: fix version in pyproject.toml --- pkgs/development/python-modules/nyt-games/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/nyt-games/default.nix b/pkgs/development/python-modules/nyt-games/default.nix index 4a434194de3c..12249abf7c4e 100644 --- a/pkgs/development/python-modules/nyt-games/default.nix +++ b/pkgs/development/python-modules/nyt-games/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -28,6 +29,10 @@ buildPythonPackage rec { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp mashumaro From efa4c69a952f8591eec174648fce9854b067a953 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 17:47:35 -0700 Subject: [PATCH 195/284] python3Packages.ha-philipsjs: don't check metadata --- pkgs/development/python-modules/ha-philipsjs/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/ha-philipsjs/default.nix b/pkgs/development/python-modules/ha-philipsjs/default.nix index f6371faf06cf..99624cd564cb 100644 --- a/pkgs/development/python-modules/ha-philipsjs/default.nix +++ b/pkgs/development/python-modules/ha-philipsjs/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "ha-philipsjs"; - version = "3.3.4"; + version = "3.3.4"; # FIXME Can we check metadata again? pyproject = true; src = fetchFromGitHub { @@ -39,6 +39,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "haphilipsjs" ]; + # the tag 3.3.4 actually corresponds to version 3.2.4 + dontCheckPythonMetadata = true; + meta = { description = "Library to interact with Philips TVs with jointSPACE API"; homepage = "https://github.com/danielperna84/ha-philipsjs"; From 64c320b8d26f872dad526815c45c2a7a79b151b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 18:08:40 -0700 Subject: [PATCH 196/284] python3Packages.imgw-pib: fix version in pyproject.toml --- pkgs/development/python-modules/imgw-pib/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/imgw-pib/default.nix b/pkgs/development/python-modules/imgw-pib/default.nix index ed303cde63e0..399032553e99 100644 --- a/pkgs/development/python-modules/imgw-pib/default.nix +++ b/pkgs/development/python-modules/imgw-pib/default.nix @@ -8,6 +8,7 @@ freezegun, lib, orjson, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, setuptools, @@ -28,6 +29,10 @@ buildPythonPackage (finalAttrs: { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + pythonRelaxDeps = [ "aiohttp" ]; From d4856b14c29cf3e0891b0c6b3f51f02275811be9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 1 Jul 2026 19:41:40 -0700 Subject: [PATCH 197/284] python3Packages.python-homeassistant-analytics: fix version in pyproject.toml --- .../python-homeassistant-analytics/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/python-homeassistant-analytics/default.nix b/pkgs/development/python-modules/python-homeassistant-analytics/default.nix index ae64842dd512..e5410c6c1cf1 100644 --- a/pkgs/development/python-modules/python-homeassistant-analytics/default.nix +++ b/pkgs/development/python-modules/python-homeassistant-analytics/default.nix @@ -5,6 +5,7 @@ # build-system poetry-core, + pyprojectVersionPatchHook, # dependencies aiohttp, @@ -34,6 +35,10 @@ buildPythonPackage rec { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp yarl From 84b47fef2f55b0fa70af3ada58f885fc8427c660 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:26:16 -0700 Subject: [PATCH 198/284] python3Packages.aiomealie: fix version in pyproject.toml --- pkgs/development/python-modules/aiomealie/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiomealie/default.nix b/pkgs/development/python-modules/aiomealie/default.nix index bcade95a6377..7e2c8e6306d4 100644 --- a/pkgs/development/python-modules/aiomealie/default.nix +++ b/pkgs/development/python-modules/aiomealie/default.nix @@ -8,6 +8,7 @@ mashumaro, orjson, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -29,6 +30,10 @@ buildPythonPackage (finalAttrs: { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp awesomeversion From b99e56874cbc02553db31d5e95818d8696189fc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:27:53 -0700 Subject: [PATCH 199/284] python3Packages.ovoenergy: remove .dev0 suffix from version --- pkgs/development/python-modules/ovoenergy/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/ovoenergy/default.nix b/pkgs/development/python-modules/ovoenergy/default.nix index fcb2e2207313..2303a97ebd9a 100644 --- a/pkgs/development/python-modules/ovoenergy/default.nix +++ b/pkgs/development/python-modules/ovoenergy/default.nix @@ -22,6 +22,11 @@ buildPythonPackage rec { hash = "sha256-oWJxpiC83C/ghs/Ik8+DrPWtP/j5jWEZ3+9Nqg4ARKU="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail .dev0 "" + ''; + build-system = [ incremental setuptools From 715961232de96e6f1ebe69a789909d84cba6cfdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:28:54 -0700 Subject: [PATCH 200/284] python3Packages.youless-api: fix version in setup.py --- pkgs/development/python-modules/youless-api/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/youless-api/default.nix b/pkgs/development/python-modules/youless-api/default.nix index bead558a6cb5..80138d34e1cb 100644 --- a/pkgs/development/python-modules/youless-api/default.nix +++ b/pkgs/development/python-modules/youless-api/default.nix @@ -19,6 +19,8 @@ buildPythonPackage rec { hash = "sha256-BAIwShbIZaX5QOkxajwv6vtL8/EouHA3ELCLAm9ylKA="; }; + env.PUBLISH_VERSION = version; + build-system = [ setuptools ]; dependencies = [ requests ]; From ba7c0447e4880fe0629ff6ac96048eeed13e37c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:31:05 -0700 Subject: [PATCH 201/284] python3Packages.pyanglianwater: fix version in pyanglianwater/_version.py --- pkgs/development/python-modules/pyanglianwater/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pyanglianwater/default.nix b/pkgs/development/python-modules/pyanglianwater/default.nix index becb9af2a267..dd330e669d7c 100644 --- a/pkgs/development/python-modules/pyanglianwater/default.nix +++ b/pkgs/development/python-modules/pyanglianwater/default.nix @@ -22,6 +22,11 @@ buildPythonPackage rec { hash = "sha256-AkdWWiw1FMs/uuJNSocMBpReXY2mrxouQfWuu4ntRWY="; }; + postPatch = '' + substituteInPlace pyanglianwater/_version.py \ + --replace-fail '__version__ = "0.0.0"' '__version__ = "${version}"' + ''; + build-system = [ setuptools ]; dependencies = [ From 5c418480fbb489a1b4a889a009eda76281b88810 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:32:22 -0700 Subject: [PATCH 202/284] python3Packages.pysmartthings: fix version in pyproject.toml --- pkgs/development/python-modules/pysmartthings/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pysmartthings/default.nix b/pkgs/development/python-modules/pysmartthings/default.nix index f58967964499..ed09d5f5369c 100644 --- a/pkgs/development/python-modules/pysmartthings/default.nix +++ b/pkgs/development/python-modules/pysmartthings/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, hatchling, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -31,6 +32,10 @@ buildPythonPackage (finalAttrs: { build-system = [ hatchling ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp mashumaro From 7c0a098ada389af2044298445fc305da740d8572 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:33:34 -0700 Subject: [PATCH 203/284] python3Packages.aiowaqi: fix version in pyproject.toml --- pkgs/development/python-modules/aiowaqi/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiowaqi/default.nix b/pkgs/development/python-modules/aiowaqi/default.nix index 01fc555be2df..38473486785b 100644 --- a/pkgs/development/python-modules/aiowaqi/default.nix +++ b/pkgs/development/python-modules/aiowaqi/default.nix @@ -5,6 +5,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -26,6 +27,10 @@ buildPythonPackage rec { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp yarl From 46488a93442ef3c921a8b24e812c779ac6ba18b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:34:52 -0700 Subject: [PATCH 204/284] python3Packages.eq3btsmart: fix version in pyproject.toml --- pkgs/development/python-modules/eq3btsmart/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/eq3btsmart/default.nix b/pkgs/development/python-modules/eq3btsmart/default.nix index 3a464212b2fb..e8bba45a8535 100644 --- a/pkgs/development/python-modules/eq3btsmart/default.nix +++ b/pkgs/development/python-modules/eq3btsmart/default.nix @@ -6,6 +6,7 @@ bleak, bleak-retry-connector, construct-typing, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, }: @@ -24,6 +25,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ bleak bleak-retry-connector From 34af3065e5f1beea8c1f127daf4ebf7a8faefd8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:36:10 -0700 Subject: [PATCH 205/284] python3Packages.powerfox: fix version in pyproject.toml --- pkgs/development/python-modules/powerfox/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/powerfox/default.nix b/pkgs/development/python-modules/powerfox/default.nix index 390d30818988..a68d36d5a336 100644 --- a/pkgs/development/python-modules/powerfox/default.nix +++ b/pkgs/development/python-modules/powerfox/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -28,6 +29,10 @@ buildPythonPackage (finalAttrs: { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp mashumaro From d4b703e78434371c9ebf3718f8d79b296e26db1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:37:59 -0700 Subject: [PATCH 206/284] python3Packages.nextcloudmonitor: fix version in setup.py --- pkgs/development/python-modules/nextcloudmonitor/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/nextcloudmonitor/default.nix b/pkgs/development/python-modules/nextcloudmonitor/default.nix index 9333a1679db2..be23ee8ea5b5 100644 --- a/pkgs/development/python-modules/nextcloudmonitor/default.nix +++ b/pkgs/development/python-modules/nextcloudmonitor/default.nix @@ -18,6 +18,11 @@ buildPythonPackage rec { hash = "sha256-748cDMxPjOQFKdSt1GrQqZHmPgz20HN1+lMzo2vMj6c="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'version="1.5.1"' 'version="${version}"' + ''; + build-system = [ setuptools ]; dependencies = [ requests ]; From 2736b2e92296585c64ff53675e73cf89f546c848 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:43:54 -0700 Subject: [PATCH 207/284] python3Packages.qnapstats: fix version in setup.py --- pkgs/development/python-modules/qnapstats/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/qnapstats/default.nix b/pkgs/development/python-modules/qnapstats/default.nix index bcbe9c775469..a59fd07c99a1 100644 --- a/pkgs/development/python-modules/qnapstats/default.nix +++ b/pkgs/development/python-modules/qnapstats/default.nix @@ -21,6 +21,11 @@ buildPythonPackage rec { hash = "sha256-4zGCMwuPL9QFVLgyZ6/aV9YBQJBomPkX34C7ULEd4Fw="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "version='0.4.0'" "version='${version}'" + ''; + build-system = [ setuptools ]; dependencies = [ From 4f5c0a4447c73489d50a2edb438fc517ff477ee0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 09:44:56 -0700 Subject: [PATCH 208/284] python3Packages.youtubeaio: fix version in pyproject.toml --- pkgs/development/python-modules/youtubeaio/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/youtubeaio/default.nix b/pkgs/development/python-modules/youtubeaio/default.nix index ddb4a6edb589..82c3c629455e 100644 --- a/pkgs/development/python-modules/youtubeaio/default.nix +++ b/pkgs/development/python-modules/youtubeaio/default.nix @@ -7,6 +7,7 @@ pydantic, yarl, aresponses, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -27,6 +28,10 @@ buildPythonPackage rec { build-system = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + dependencies = [ aiohttp pydantic From 6f4a56db8ee5de1c4359e662a6acf5c9aa53f6ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 16:06:47 -0700 Subject: [PATCH 209/284] python3Packages.awesomeversion: use pyprojectVersionPatchHook --- .../python-modules/awesomeversion/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/awesomeversion/default.nix b/pkgs/development/python-modules/awesomeversion/default.nix index e932afa10828..fe1fd26bd603 100644 --- a/pkgs/development/python-modules/awesomeversion/default.nix +++ b/pkgs/development/python-modules/awesomeversion/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, hatchling, + pyprojectVersionPatchHook, pytest-codspeed, pytest-snapshot, pytestCheckHook, @@ -20,13 +21,12 @@ buildPythonPackage rec { hash = "sha256-2CEuJagUkYwtjzpQLYLlz+V5e2feEU6di3wI0+uWuy4="; }; - postPatch = '' + nativeBuildInputs = [ # Upstream doesn't set a version - substituteInPlace pyproject.toml \ - --replace-fail 'version = "0"' 'version = "${version}"' - ''; + pyprojectVersionPatchHook + ]; - nativeBuildInputs = [ hatchling ]; + build-system = [ hatchling ]; pythonImportsCheck = [ "awesomeversion" ]; From 75395c0592e6384aea676afd9ecf247da526bfd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 21:57:17 -0700 Subject: [PATCH 210/284] python3Packages.tuya-device-handlers: fix version in pyproject.toml --- .../python-modules/tuya-device-handlers/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/tuya-device-handlers/default.nix b/pkgs/development/python-modules/tuya-device-handlers/default.nix index d5036e207ca2..6da570b300eb 100644 --- a/pkgs/development/python-modules/tuya-device-handlers/default.nix +++ b/pkgs/development/python-modules/tuya-device-handlers/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, tuya-device-sharing-sdk, pytestCheckHook, syrupy, @@ -20,6 +21,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-O08/NRB3xPjCGWjv5GHJJmn8/rL1rP6J7OlqR17zHeA="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ tuya-device-sharing-sdk ]; From e5a478dc03466f65efca92f832fe2aeb2bd88334 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 21:58:50 -0700 Subject: [PATCH 211/284] python3Packages.aiowithings: fix version in pyproject.toml --- pkgs/development/python-modules/aiowithings/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiowithings/default.nix b/pkgs/development/python-modules/aiowithings/default.nix index 5e9e6f7ac3c5..76d29829c716 100644 --- a/pkgs/development/python-modules/aiowithings/default.nix +++ b/pkgs/development/python-modules/aiowithings/default.nix @@ -5,6 +5,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -24,6 +25,10 @@ buildPythonPackage rec { hash = "sha256-YC1rUyPXWbJ/xfUus5a7vw44gw7PIAdwhrUstXB/+nI="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ From 6552955c764533b13a6716c8f21c98a5cc787fc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:01:12 -0700 Subject: [PATCH 212/284] python3Packages.nsw-fuel-api-client: fix version in nsw_fuel/__init__.py --- .../python-modules/nsw-fuel-api-client/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/nsw-fuel-api-client/default.nix b/pkgs/development/python-modules/nsw-fuel-api-client/default.nix index fc03069077b0..bf309741dbc0 100644 --- a/pkgs/development/python-modules/nsw-fuel-api-client/default.nix +++ b/pkgs/development/python-modules/nsw-fuel-api-client/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { hash = "sha256-3nkBDLmFOfYLvG5fi2subA9zxb51c7zWlhT4GaCQo9I="; }; + postPatch = '' + substituteInPlace nsw_fuel/__init__.py \ + --replace-fail '__version__ = "0.0.0-dev"' '__version__ = "${version}"' + ''; + build-system = [ setuptools ]; From 3ba12cd3e48bb0427c518485f33253b45b1f18e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:02:34 -0700 Subject: [PATCH 213/284] python3Packages.here-transit: fix version in pyproject.toml --- pkgs/development/python-modules/here-transit/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/here-transit/default.nix b/pkgs/development/python-modules/here-transit/default.nix index 87541d36fd17..3d4e1cd35a18 100644 --- a/pkgs/development/python-modules/here-transit/default.nix +++ b/pkgs/development/python-modules/here-transit/default.nix @@ -7,6 +7,7 @@ async-timeout, yarl, aresponses, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, }: @@ -28,6 +29,10 @@ buildPythonPackage rec { sed -i "/^addopts/d" pyproject.toml ''; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ From 2248791fc5ee80643dc84ac02ac1c624ef39667a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:03:53 -0700 Subject: [PATCH 214/284] python3Packages.here-routing: fix version in pyproject.toml --- pkgs/development/python-modules/here-routing/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/here-routing/default.nix b/pkgs/development/python-modules/here-routing/default.nix index 1dfddf8e5306..4e6290a1adaa 100644 --- a/pkgs/development/python-modules/here-routing/default.nix +++ b/pkgs/development/python-modules/here-routing/default.nix @@ -7,6 +7,7 @@ async-timeout, yarl, aresponses, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -24,6 +25,10 @@ buildPythonPackage rec { hash = "sha256-h3y5hjaSHH6oIfSt5JTt1+pH7mFLOFiq1RuMZ1uYtTE="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ From 842f0627437dddaee9ac4cc454dcc010fd7a117b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:06:16 -0700 Subject: [PATCH 215/284] python3Packages.aioskybell: use finalAttrs --- pkgs/development/python-modules/aioskybell/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/aioskybell/default.nix b/pkgs/development/python-modules/aioskybell/default.nix index 3cd0d0b024ad..6910307f0bee 100644 --- a/pkgs/development/python-modules/aioskybell/default.nix +++ b/pkgs/development/python-modules/aioskybell/default.nix @@ -12,7 +12,7 @@ setuptools, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "aioskybell"; version = "23.12.0"; pyproject = true; @@ -20,13 +20,13 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "tkdrob"; repo = "aioskybell"; - tag = version; + tag = finalAttrs.version; hash = "sha256-5F0B5z0pJLKJPzKIowE07vEgmNXnDVEeGFbPGnJ6H9I="; }; postPatch = '' substituteInPlace setup.py \ - --replace 'version="master",' 'version="${version}",' + --replace 'version="master",' 'version="${finalAttrs.version}",' ''; nativeBuildInputs = [ setuptools ]; @@ -59,4 +59,4 @@ buildPythonPackage rec { license = with lib.licenses; [ mit ]; maintainers = with lib.maintainers; [ fab ]; }; -} +}) From cb157f07f972b91a6de8797589cb3f2f1b210abe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:09:35 -0700 Subject: [PATCH 216/284] python3Packages.python-opensky: use pyprojectVersionPatchHook --- .../python-modules/python-opensky/default.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/python-opensky/default.nix b/pkgs/development/python-modules/python-opensky/default.nix index 49391b7b032e..034fdcb6b102 100644 --- a/pkgs/development/python-modules/python-opensky/default.nix +++ b/pkgs/development/python-modules/python-opensky/default.nix @@ -6,6 +6,7 @@ fetchFromGitHub, poetry-core, pydantic, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -26,13 +27,15 @@ buildPythonPackage rec { }; postPatch = '' - substituteInPlace pyproject.toml \ - --replace 'version = "0.0.0"' 'version = "${version}"' substituteInPlace src/python_opensky/opensky.py \ --replace ".joinpath(uri)" "/ uri" ''; - nativeBuildInputs = [ poetry-core ]; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + + build-system = [ poetry-core ]; propagatedBuildInputs = [ aiohttp From 09ffbef1deea4c0d626755cef6e081ef9b57f580 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:10:30 -0700 Subject: [PATCH 217/284] python3Packages.python-melcloud: fix version in pyproject.toml --- pkgs/development/python-modules/python-melcloud/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/python-melcloud/default.nix b/pkgs/development/python-modules/python-melcloud/default.nix index 5c81e0547f3c..e1eb073a32c9 100644 --- a/pkgs/development/python-modules/python-melcloud/default.nix +++ b/pkgs/development/python-modules/python-melcloud/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -30,6 +31,10 @@ buildPythonPackage rec { --replace-fail "poetry-core>=1.5,<2.0" poetry-core ''; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; pythonRemoveDeps = [ From 5c560639cc580bfde65a246d2e9518d75adaca57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:16:17 -0700 Subject: [PATCH 218/284] python3Packages.greeneye-monitor: use poetry-core --- .../python-modules/greeneye-monitor/default.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/greeneye-monitor/default.nix b/pkgs/development/python-modules/greeneye-monitor/default.nix index 04a30f73a4ef..6c15df1dbf96 100644 --- a/pkgs/development/python-modules/greeneye-monitor/default.nix +++ b/pkgs/development/python-modules/greeneye-monitor/default.nix @@ -3,9 +3,9 @@ aiohttp, buildPythonPackage, fetchFromGitHub, + poetry-core, pytest-socket, pytestCheckHook, - setuptools, siobrultech-protocols, }: @@ -21,7 +21,19 @@ buildPythonPackage rec { hash = "sha256-7EDuQ+wECcTzxkEufMpg3WSzosWeiwfxcVIVtQi+0BI="; }; - build-system = [ setuptools ]; + postPatch = '' + cat >> pyproject.toml << EOF + [build-system] + requires = ["poetry-core"] + build-backend = "poetry.core.masonry.api" + EOF + ''; + + build-system = [ poetry-core ]; + + pythonRelaxDeps = [ + "siobrultech-protocols" + ]; dependencies = [ aiohttp From 576e53b26317188bd5b7306147819f5646a46a8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:18:16 -0700 Subject: [PATCH 219/284] python3Packages.aiowebdav2: fix version in pyproject.toml --- pkgs/development/python-modules/aiowebdav2/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiowebdav2/default.nix b/pkgs/development/python-modules/aiowebdav2/default.nix index 6b557be078ee..9b9a46a38273 100644 --- a/pkgs/development/python-modules/aiowebdav2/default.nix +++ b/pkgs/development/python-modules/aiowebdav2/default.nix @@ -7,6 +7,7 @@ hatchling, lib, lxml, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -26,6 +27,10 @@ buildPythonPackage rec { hash = "sha256-W3TdumweNyGz2qDFgSGu+ZPnEpLvWQQ216jER6e4k18="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ From 38af1bb8e43fd3231d0da1dc3f06bcef26a28af3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:23:13 -0700 Subject: [PATCH 220/284] python3Packages.python-technove: fix version in pyproject.toml --- pkgs/development/python-modules/python-technove/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/python-technove/default.nix b/pkgs/development/python-modules/python-technove/default.nix index aeecb0d10bdd..d6da0d80d0e3 100644 --- a/pkgs/development/python-modules/python-technove/default.nix +++ b/pkgs/development/python-modules/python-technove/default.nix @@ -8,6 +8,7 @@ cachetools, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -26,6 +27,10 @@ buildPythonPackage rec { hash = "sha256-TAB70EVrjxpl+vm3ncg45l2duaIXHjn7YKOURkS6k0k="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ From 6dd6e9ec1a08e16f06aa2cc31447448cdbf653d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:23:54 -0700 Subject: [PATCH 221/284] python3Packages.trmnl: fix version in pyproject.toml --- pkgs/development/python-modules/trmnl/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/trmnl/default.nix b/pkgs/development/python-modules/trmnl/default.nix index 8bc2662263b9..4b9f1c266999 100644 --- a/pkgs/development/python-modules/trmnl/default.nix +++ b/pkgs/development/python-modules/trmnl/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, aiohttp, mashumaro, orjson, @@ -26,6 +27,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-Gpyhp+d27/IxDOTFxcN9ltYbOJOg9scf17qVb/ArBw0="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ From f43e09c13b6c8cb41b7dafa090a1de9fd3e333aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:24:41 -0700 Subject: [PATCH 222/284] python3Packages.aiobafi6: fix version in pyproject.toml --- pkgs/development/python-modules/aiobafi6/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiobafi6/default.nix b/pkgs/development/python-modules/aiobafi6/default.nix index 6986e634c95e..18325d9d0ce4 100644 --- a/pkgs/development/python-modules/aiobafi6/default.nix +++ b/pkgs/development/python-modules/aiobafi6/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, poetry-core, protobuf, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, zeroconf, @@ -21,6 +22,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-EXLMrZobSICAmWPREjx5D8boj/S/3AH5+lsWQlTCl1g="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ From dc9b2d36d5e53ca6729bde2c1fb47ef32e1a6b1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:26:17 -0700 Subject: [PATCH 223/284] python3Packages.pycfdns: use pyprojectVersionPatchHook --- pkgs/development/python-modules/pycfdns/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/pycfdns/default.nix b/pkgs/development/python-modules/pycfdns/default.nix index 3ad4b1c12ed1..488d5fee4994 100644 --- a/pkgs/development/python-modules/pycfdns/default.nix +++ b/pkgs/development/python-modules/pycfdns/default.nix @@ -4,6 +4,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, }: buildPythonPackage rec { @@ -18,14 +19,13 @@ buildPythonPackage rec { hash = "sha256-bLzDakxKq8fcjEKSxc6D5VN9gfAu1M3/zaAU2UYnwSs="; }; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace 'version="0",' 'version="${version}",' - ''; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; - propagatedBuildInputs = [ aiohttp ]; + dependencies = [ aiohttp ]; # Project has no tests doCheck = false; From 4cf7f131b7c2c3c3fd9ca40a8dad625ca4a8393e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:41:09 -0700 Subject: [PATCH 224/284] python3Packages.letpot: fix version in pyproject.toml --- pkgs/development/python-modules/letpot/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/letpot/default.nix b/pkgs/development/python-modules/letpot/default.nix index 27cc39a877af..18d8f6778fdc 100644 --- a/pkgs/development/python-modules/letpot/default.nix +++ b/pkgs/development/python-modules/letpot/default.nix @@ -6,6 +6,7 @@ freezegun, lib, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytestCheckHook, }: @@ -22,6 +23,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-w4WS0AyNd4dNtA/fBKieDW2YXwBFltRkJvaGemRjsv4="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ From 1297b0e3ea06217cfeac1b1e3eb2d2338b4939c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:42:09 -0700 Subject: [PATCH 225/284] python3Packages.bluecurrent-api: fix version in pyproject.toml --- pkgs/development/python-modules/bluecurrent-api/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/bluecurrent-api/default.nix b/pkgs/development/python-modules/bluecurrent-api/default.nix index 5d66b378581f..b9cc22101da9 100644 --- a/pkgs/development/python-modules/bluecurrent-api/default.nix +++ b/pkgs/development/python-modules/bluecurrent-api/default.nix @@ -5,6 +5,7 @@ setuptools, pytz, websockets, + pyprojectVersionPatchHook, pytest-asyncio, pytest-mock, pytestCheckHook, @@ -22,6 +23,10 @@ buildPythonPackage rec { hash = "sha256-px4kZOvMUP5aGOQ1uxWnY6w77Woie/hVVdyylW8uSX4="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ setuptools ]; dependencies = [ From dc3e183262bab5f95acfa49f93c388830a4102ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:44:22 -0700 Subject: [PATCH 226/284] python3Packages.aiolyric: remove .dev0 suffix from version --- pkgs/development/python-modules/aiolyric/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiolyric/default.nix b/pkgs/development/python-modules/aiolyric/default.nix index df2a318f6ac2..efdbe5a96921 100644 --- a/pkgs/development/python-modules/aiolyric/default.nix +++ b/pkgs/development/python-modules/aiolyric/default.nix @@ -22,6 +22,11 @@ buildPythonPackage (finalAttrs: { hash = "sha256-+OYMe63sX5TtvJpNn6dzvnephlhS/MyFXmUerYZqF5A="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail .dev0 "" + ''; + build-system = [ setuptools ]; From 4d1475e1ceb9ae96e08b5bf3e809171fe93eb5ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:45:26 -0700 Subject: [PATCH 227/284] python3Packages.fressnapftracker: fix version in pyproject.toml --- pkgs/development/python-modules/fressnapftracker/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/fressnapftracker/default.nix b/pkgs/development/python-modules/fressnapftracker/default.nix index 5f41c7fd723e..53b1b86b88dc 100644 --- a/pkgs/development/python-modules/fressnapftracker/default.nix +++ b/pkgs/development/python-modules/fressnapftracker/default.nix @@ -5,6 +5,7 @@ hatchling, httpx, pydantic, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytest-mock, @@ -24,6 +25,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-gJsE/1HnUXEDa5Y7eLtHexx+G00MGQDZJu3pui9OeMM="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ From 10f52e1ff08f2e41760e58651acb9b748ff4c6ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:47:36 -0700 Subject: [PATCH 228/284] python3Packages.forecast-solar: fix version in pyproject.toml --- pkgs/development/python-modules/forecast-solar/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/forecast-solar/default.nix b/pkgs/development/python-modules/forecast-solar/default.nix index 616961728241..ef104fc6f244 100644 --- a/pkgs/development/python-modules/forecast-solar/default.nix +++ b/pkgs/development/python-modules/forecast-solar/default.nix @@ -6,6 +6,7 @@ aiohttp, aresponses, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytest-freezer, @@ -28,7 +29,9 @@ buildPythonPackage rec { build-system = [ poetry-core ]; - env.PACKAGE_VERSION = version; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; dependencies = [ aiodns From 38f72584a703617fe77db207fc4beae1e8032723 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:48:32 -0700 Subject: [PATCH 229/284] python3Packages.brother: fix version in pyproject.toml --- pkgs/development/python-modules/brother/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/brother/default.nix b/pkgs/development/python-modules/brother/default.nix index b1a0a3470c68..1c25f62293ab 100644 --- a/pkgs/development/python-modules/brother/default.nix +++ b/pkgs/development/python-modules/brother/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, freezegun, dacite, + pyprojectVersionPatchHook, pysnmp, pytest-asyncio, pytest-error-for-skips, @@ -27,6 +28,10 @@ buildPythonPackage rec { hash = "sha256-7m0fakQCckIpG8Tc09P81xzHlIgeal9L2BwerUvBuX8="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ setuptools ]; dependencies = [ From dbe230e5f789d805e0f1d52da2e41c01ddcf6e3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:49:42 -0700 Subject: [PATCH 230/284] python3Packages.volvocarsapi: fix version in pyproject.toml --- pkgs/development/python-modules/volvocarsapi/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/volvocarsapi/default.nix b/pkgs/development/python-modules/volvocarsapi/default.nix index 06eddaead2cd..7b766bc312ae 100644 --- a/pkgs/development/python-modules/volvocarsapi/default.nix +++ b/pkgs/development/python-modules/volvocarsapi/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + pyprojectVersionPatchHook, pythonOlder, aiohttp, yarl, @@ -22,6 +23,10 @@ buildPythonPackage rec { hash = "sha256-GC2vktTFWh4z/sO+2hhsVKInSl5GQCtzq4q0YtfkfKg="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; From b076d257c0460319dba1bd5a2039cf0d451e5e0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:52:59 -0700 Subject: [PATCH 231/284] python3Packages.systembridgeconnector: remove .dev0 suffix from version --- .../python-modules/systembridgeconnector/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/systembridgeconnector/default.nix b/pkgs/development/python-modules/systembridgeconnector/default.nix index 1f0245bc6955..d2f99e25f13a 100644 --- a/pkgs/development/python-modules/systembridgeconnector/default.nix +++ b/pkgs/development/python-modules/systembridgeconnector/default.nix @@ -25,6 +25,11 @@ buildPythonPackage rec { hash = "sha256-gkZRvS0abfXFEz2oRuaGJRmhFoxe92F3czNkahNdTm8="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail .dev0 "" + ''; + build-system = [ incremental setuptools From 672778a2730391c94406525ed841e26cdb47aca6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 2 Jul 2026 22:55:29 -0700 Subject: [PATCH 232/284] python3Packages.tessie-api: fix version in pyproject.toml --- pkgs/development/python-modules/tessie-api/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/tessie-api/default.nix b/pkgs/development/python-modules/tessie-api/default.nix index dbe80af65752..67113809b1c6 100644 --- a/pkgs/development/python-modules/tessie-api/default.nix +++ b/pkgs/development/python-modules/tessie-api/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, aiohttp, hatchling, + pyprojectVersionPatchHook, pytz, pytestCheckHook, pytest-asyncio, @@ -21,6 +22,10 @@ buildPythonPackage rec { hash = "sha256-Ia5J7dGbcfEa6rEKyJzEnzVnMC3HyI7l5g20v7d7Gjo="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ From b0b09e5b61d9d5a995db7e3186b5f818bd8aa059 Mon Sep 17 00:00:00 2001 From: Clara Engler Date: Thu, 9 Jul 2026 11:53:04 +0200 Subject: [PATCH 233/284] libressl: 4.2 -> 4.3 --- pkgs/by-name/li/libressl/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libressl/package.nix b/pkgs/by-name/li/libressl/package.nix index f9b05eb9555b..29dbda06f77d 100644 --- a/pkgs/by-name/li/libressl/package.nix +++ b/pkgs/by-name/li/libressl/package.nix @@ -1,5 +1,5 @@ { - libressl_4_2, + libressl_4_3, }: -libressl_4_2 +libressl_4_3 From 0eb9fc4c11da43dd8a511d143d5e2a012800a1b3 Mon Sep 17 00:00:00 2001 From: whispers Date: Tue, 7 Jul 2026 10:09:10 -0400 Subject: [PATCH 234/284] rust: 1.96.1 -> 1.97.0 blog: https://blog.rust-lang.org/releases/1.97.0 changelog: https://github.com/rust-lang/rust/blob/1.97.0/RELEASES.md diff: https://github.com/rust-lang/rust/compare/1.96.1...1.97.0 --- .../compilers/rust/{1_96.nix => 1_97.nix} | 42 +++++++++---------- pkgs/top-level/all-packages.nix | 8 ++-- 2 files changed, 25 insertions(+), 25 deletions(-) rename pkgs/development/compilers/rust/{1_96.nix => 1_97.nix} (56%) diff --git a/pkgs/development/compilers/rust/1_96.nix b/pkgs/development/compilers/rust/1_97.nix similarity index 56% rename from pkgs/development/compilers/rust/1_96.nix rename to pkgs/development/compilers/rust/1_97.nix index b198c84400b5..3105bef9f841 100644 --- a/pkgs/development/compilers/rust/1_96.nix +++ b/pkgs/development/compilers/rust/1_97.nix @@ -50,8 +50,8 @@ let in import ./default.nix { - rustcVersion = "1.96.1"; - rustcSha256 = "sha256-0Km1GYxBhoU4rhKvKAZBY1UdBtzOqxHvCxvJqm6Yt6c="; + rustcVersion = "1.97.0"; + rustcSha256 = "sha256-HAhV2JgqD7HQMhtgVLVbcy07HRfIRoQet/0Ks3vydvg="; llvmSharedForBuild = llvmSharedFor pkgsBuildBuild; llvmSharedForHost = llvmSharedFor pkgsBuildHost; @@ -65,30 +65,30 @@ import ./default.nix # Note: the version MUST be the same version that we are building. Upstream # ensures that each released compiler can compile itself: # https://github.com/NixOS/nixpkgs/pull/351028#issuecomment-2438244363 - bootstrapVersion = "1.96.1"; + bootstrapVersion = "1.97.0"; # fetch hashes by running `print-hashes.sh ${bootstrapVersion}` bootstrapHashes = { - i686-unknown-linux-gnu = "9a3ef03fa419d662fbaf9b152a81db96379781771e6853ca06e31215fb177449"; - x86_64-unknown-linux-gnu = "b177534946e6e5422d8a75398b39625c08eabad675c08bd3d6565d3ba90c8450"; - x86_64-unknown-linux-musl = "12404d68457d3344877fbba3fde2c68743cd200fc70475451568e18076cc2a3d"; - arm-unknown-linux-gnueabihf = "c0c4b52bf5614dfcf6b9e94876f97509c71831fc09b8f0f0e228e13ce896ea92"; - armv7-unknown-linux-gnueabihf = "59320d46850c750b0a0d3e49939c00c3eed9917fab9a633300fb4d04bd8cfebc"; - aarch64-unknown-linux-gnu = "212cebf45b0669b2176eb08ffa17c90b07f9de2689d6aae3604d78699fa4f5c2"; - aarch64-unknown-linux-musl = "9e936f24cfd76db8a45ab352919336978531c0fb4eab7a7bdecc76b9562fcbdb"; - x86_64-apple-darwin = "c19cc27b3387e2dfe7eb4b5becc75ab5acf348b2a7f2142ad3716d93a0abaa2a"; - aarch64-apple-darwin = "c080e506af9cba3ca9472c17d989c2d8d5bcfc818eb5e196c77beee982788b50"; - powerpc64-unknown-linux-gnu = "7133e2e1ccf0eb66c4feeca8a2bbf21ad3223904a3459b3f228ff7c8dfc76871"; - powerpc64le-unknown-linux-gnu = "4cde26acb968f98fdb2f7f52e7f78b75a24afdea38abed7217e1cd02c6acbe06"; - powerpc64le-unknown-linux-musl = "d20d271134a11b3ba74c1c54fb926ea09f1c629321dcf53fb5d510f1ac1125a6"; - riscv64gc-unknown-linux-gnu = "b4c54315491239d2a4816535cea22a57ad1021e2529812ccfc938e64c53da276"; - s390x-unknown-linux-gnu = "17cb4a74048429dc03be326f976b35500c96290af248ed212071bafb4e366762"; - loongarch64-unknown-linux-gnu = "7f646ab7f798e7258db25286cbaed4fb54cae90afe44efebc7ff6c6120e4d3d9"; - loongarch64-unknown-linux-musl = "fd8e5e02e5c4bf879a54a31ebc4c24bbd2feb353a54b4e690e1cd04a97c60354"; - x86_64-unknown-freebsd = "8f5f247b7195a8925c092949c4eea96a6228d67e643dc10d97b1ed7c17e4c433"; + i686-unknown-linux-gnu = "d066e5dd59c15fc1c793173d53b41719162de4470b5c34041a8bc664542df375"; + x86_64-unknown-linux-gnu = "eb89b20287153391c49ebcdb7fd91b683a12438d129bfb92eadcc495545af3a7"; + x86_64-unknown-linux-musl = "675bb2d574efc64da0563a9cb70cc017560394c5938e04c92987cad383299e8d"; + arm-unknown-linux-gnueabihf = "180e487a1f7abaeda374b942d369dd7faa4364b1267629d48552d9a17a5bc4ab"; + armv7-unknown-linux-gnueabihf = "2f9dfd76694efcf391f6d4947e97be17d1f469c9e989ed194660ddd85877ca60"; + aarch64-unknown-linux-gnu = "70fb01b4894d56fad34c260ce63aee647589be57a26ab33730110d8228cbcf02"; + aarch64-unknown-linux-musl = "28efcf4ee31235eb5f7820dadba46400ab9dbbb030719e7a2ab284b02c8cbf82"; + x86_64-apple-darwin = "3dc9ad8ec35a9f0acd2c5ae2c80c36baf5c7010423bf339ca55709fc995885d4"; + aarch64-apple-darwin = "c2e6a5ef480f5715ae9874188c1fa749b6a6f90d8d911f5a3a5d768f0ac70427"; + powerpc64-unknown-linux-gnu = "62c9f9b7887505fc4dcda40784469f23909657d245e53025a7a8124b016d6631"; + powerpc64le-unknown-linux-gnu = "a8d3f487d07cebc48ce03ad66a970a5f5138a5c1e7c7cec12fb9b6e47a24bf1a"; + powerpc64le-unknown-linux-musl = "09fee3b9ede1e94ff6c3bad3918dc231be909c74bb182e0acd583c03a9f1df5f"; + riscv64gc-unknown-linux-gnu = "be239392f7112f6a81f20c9e715d5743319a8b773592e027ad800d73527d8fae"; + s390x-unknown-linux-gnu = "fee699e31d0a0034f46669c473e61a88af6734f8c5902d77329ac236fcd9b538"; + loongarch64-unknown-linux-gnu = "37ad9d55b98cc680a2d75c7184e6457b632ce82690a56be7a2044e32c91176ce"; + loongarch64-unknown-linux-musl = "bfba202bae252ac372026171d9bc98e5eb80578d576546f56e8aee2e9d64ecf0"; + x86_64-unknown-freebsd = "77101232e3769395e99c0e663d2c8beb3d4127857945cf7c812c1886ba823b8f"; }; - selectRustPackage = pkgs: pkgs.rust_1_96; + selectRustPackage = pkgs: pkgs.rust_1_97; } ( diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6320662fd27c..260217196e1e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4090,15 +4090,15 @@ with pkgs; wrapRustcWith = { rustc-unwrapped, ... }@args: callPackage ../build-support/rust/rustc-wrapper args; wrapRustc = rustc-unwrapped: wrapRustcWith { inherit rustc-unwrapped; }; - rust_1_96 = callPackage ../development/compilers/rust/1_96.nix { }; - rust = rust_1_96; + rust_1_97 = callPackage ../development/compilers/rust/1_97.nix { }; + rust = rust_1_97; mrustc = callPackage ../development/compilers/mrustc { }; mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { }; mrustc-bootstrap = callPackage ../development/compilers/mrustc/bootstrap.nix { }; - rustPackages_1_96 = rust_1_96.packages.stable; - rustPackages = rustPackages_1_96; + rustPackages_1_97 = rust_1_97.packages.stable; + rustPackages = rustPackages_1_97; inherit (rustPackages) cargo From 6e22635a6fa67f95cf56424535448f8a74ebc096 Mon Sep 17 00:00:00 2001 From: K900 Date: Thu, 9 Jul 2026 18:18:57 +0300 Subject: [PATCH 235/284] pipewire: 1.6.7 -> 1.6.8 Diff: https://gitlab.freedesktop.org/pipewire/pipewire/-/compare/1.6.7...1.6.8 Changelog: https://gitlab.freedesktop.org/pipewire/pipewire/-/releases/1.6.8 --- pkgs/by-name/pi/pipewire/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pi/pipewire/package.nix b/pkgs/by-name/pi/pipewire/package.nix index c2ec4a841043..f2dadfc6aa94 100644 --- a/pkgs/by-name/pi/pipewire/package.nix +++ b/pkgs/by-name/pi/pipewire/package.nix @@ -88,7 +88,7 @@ in stdenv.mkDerivation (finalAttrs: { pname = "pipewire"; - version = "1.6.7"; + version = "1.6.8"; outputs = [ "out" @@ -104,7 +104,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "pipewire"; repo = "pipewire"; tag = finalAttrs.version; - hash = "sha256-DSW9ho+NLikW/stlxvHLhRguMZy/4b7VEcC938ObJmQ="; + hash = "sha256-sxS6+LtvpEWCKoKLDUSYkW4+rrcIXPjWPBglReIDh/k="; }; patches = [ From ad865d0009fe55914cba111f3ae8a93e3c8c23e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 9 Jul 2026 09:46:24 -0700 Subject: [PATCH 236/284] python3Packages.pywaze: fix version in pyproject.toml --- pkgs/development/python-modules/pywaze/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pywaze/default.nix b/pkgs/development/python-modules/pywaze/default.nix index 5804de59344e..844208465309 100644 --- a/pkgs/development/python-modules/pywaze/default.nix +++ b/pkgs/development/python-modules/pywaze/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, hatchling, httpx, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -22,6 +23,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-yhECJORKVM8R/+CjhSTwgtCPeQ8QwIuG3EZHmtjVkX0="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ httpx ]; From fdf6502eb38268f8476e80362b75666f31d536bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 9 Jul 2026 09:48:48 -0700 Subject: [PATCH 237/284] python3Packages.pynordpool: fix version in pyproject.toml --- pkgs/development/python-modules/pynordpool/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/pynordpool/default.nix b/pkgs/development/python-modules/pynordpool/default.nix index 0eca17e437d0..7408e687f491 100644 --- a/pkgs/development/python-modules/pynordpool/default.nix +++ b/pkgs/development/python-modules/pynordpool/default.nix @@ -4,6 +4,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + pyprojectVersionPatchHook, }: buildPythonPackage (finalAttrs: { @@ -18,6 +19,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-HDbYrwQ4v5cqej5aUat0gVzaRpJz5jaFHjWUC98gacg="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ aiohttp ]; From 2b69b6b9287a0bc49b204da94d6a6ffe4c043bc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 9 Jul 2026 09:52:58 -0700 Subject: [PATCH 238/284] python3Packages.gios: fix version in pyproject.toml --- pkgs/development/python-modules/gios/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/gios/default.nix b/pkgs/development/python-modules/gios/default.nix index 2eafea3323cc..9e23491cf120 100644 --- a/pkgs/development/python-modules/gios/default.nix +++ b/pkgs/development/python-modules/gios/default.nix @@ -5,6 +5,7 @@ buildPythonPackage, dacite, fetchFromGitHub, + pyprojectVersionPatchHook, pytest-asyncio, pytest-error-for-skips, pytestCheckHook, @@ -27,6 +28,10 @@ buildPythonPackage rec { hash = "sha256-m7baTU7oWcjqCgiZ7GcOYVM23jcvycQcAbPhO1jWahk="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ setuptools ]; dependencies = [ From b71eecfbbe1d6950a47d62d5dda82529730921fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 9 Jul 2026 09:54:01 -0700 Subject: [PATCH 239/284] python3Packages.zinvolt: fix version in pyproject.toml --- pkgs/development/python-modules/zinvolt/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/zinvolt/default.nix b/pkgs/development/python-modules/zinvolt/default.nix index 81bec8ce2c43..975cd9506391 100644 --- a/pkgs/development/python-modules/zinvolt/default.nix +++ b/pkgs/development/python-modules/zinvolt/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, hatchling, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -26,6 +27,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-e4kbAEUxJzc2qOnXhtNMFUeDcsUc/G1Wo0LHwTQcgXs="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ From 49abeb2ebc31bb01257834842a3088e3f5c1f043 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 9 Jul 2026 09:55:32 -0700 Subject: [PATCH 240/284] python3Packages.python-overseerr: fix version in pyproject.toml --- pkgs/development/python-modules/python-overseerr/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/python-overseerr/default.nix b/pkgs/development/python-modules/python-overseerr/default.nix index 040416961f67..b9c44aae59f7 100644 --- a/pkgs/development/python-modules/python-overseerr/default.nix +++ b/pkgs/development/python-modules/python-overseerr/default.nix @@ -7,6 +7,7 @@ mashumaro, orjson, poetry-core, + pyprojectVersionPatchHook, pytest-asyncio, pytest-cov-stub, pytestCheckHook, @@ -26,6 +27,10 @@ buildPythonPackage rec { hash = "sha256-9sJWglF1EqwXG0Cj1hOtNE2dYTmxIZoVWHYT5I4RQu0="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ poetry-core ]; dependencies = [ From c1f7c0ec1d251062baaf2d77b18d6583bfdca9aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 9 Jul 2026 09:57:21 -0700 Subject: [PATCH 241/284] python3Packages.goslide-api: fix version in stup.py --- pkgs/development/python-modules/goslide-api/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/goslide-api/default.nix b/pkgs/development/python-modules/goslide-api/default.nix index 008eb0ea3ab5..2dbe1108e691 100644 --- a/pkgs/development/python-modules/goslide-api/default.nix +++ b/pkgs/development/python-modules/goslide-api/default.nix @@ -18,6 +18,11 @@ buildPythonPackage rec { hash = "sha256-Z3+GijoI+351zV7IpLSBQu6LE2OhhXho4ygNMVbg2xs="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace-fail "version='0.7.3'" "version='${version}'" + ''; + build-system = [ setuptools ]; dependencies = [ aiohttp ]; From 5bffa343a125df8afa6f8ae98f98ab6d99937bc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 27 Jun 2026 21:34:46 -0700 Subject: [PATCH 242/284] python3Packages.starlette: 1.1.0 -> 1.3.1 Diff: https://github.com/Kludex/starlette/compare/1.1.0...1.3.1 Changelog: https://github.com/Kludex/starlette/blob/1.3.1/docs/release-notes.md --- pkgs/development/python-modules/starlette/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/starlette/default.nix b/pkgs/development/python-modules/starlette/default.nix index 98974519d575..b2024f5c8496 100644 --- a/pkgs/development/python-modules/starlette/default.nix +++ b/pkgs/development/python-modules/starlette/default.nix @@ -8,7 +8,6 @@ # dependencies anyio, - typing-extensions, # optional dependencies itsdangerous, @@ -16,6 +15,7 @@ python-multipart, pyyaml, httpx, + httpx2, # tests pytestCheckHook, @@ -27,14 +27,14 @@ buildPythonPackage rec { pname = "starlette"; - version = "1.1.0"; + version = "1.3.1"; pyproject = true; src = fetchFromGitHub { owner = "Kludex"; repo = "starlette"; tag = version; - hash = "sha256-9iQXlpA1VDGw1c7X1zJPmJ3Dub46PwqrVIX1+fWOZ7M="; + hash = "sha256-0eby4cDIU2bPUv+1qSTnZtfo4kkgMDIDYnZ9wp2wtoI="; }; build-system = [ hatchling ]; @@ -47,12 +47,12 @@ buildPythonPackage rec { python-multipart pyyaml httpx + httpx2 ]; nativeCheckInputs = [ pytestCheckHook trio - typing-extensions ] ++ lib.concatAttrValues optional-dependencies; From 6b7ce5124480002df7e1670978d2f7b5c367ce9b Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Fri, 10 Jul 2026 01:36:19 +0800 Subject: [PATCH 243/284] bundlerApp: set strictDeps = true --- pkgs/development/ruby-modules/bundler-app/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/ruby-modules/bundler-app/default.nix b/pkgs/development/ruby-modules/bundler-app/default.nix index f3aa66cae7c1..c271a451edc1 100644 --- a/pkgs/development/ruby-modules/bundler-app/default.nix +++ b/pkgs/development/ruby-modules/bundler-app/default.nix @@ -61,6 +61,8 @@ let nativeBuildInputs = nativeBuildInputs ++ lib.optionals (scripts != [ ]) [ makeWrapper ]; + strictDeps = true; + meta = { mainProgram = pname; inherit (ruby.meta) platforms; From 8fe06cd8ba8e80505328c702ebe6a1ad9e4585fe Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 9 Jul 2026 21:53:37 +0200 Subject: [PATCH 244/284] Reapply "hdrhistogram_c: 0.11.9 -> 0.11.10" This reverts commit 3347d985f201c32b8093a8701f07f34cab18e6e3. Reverted on master due to being a mass-rebuild and now reapplied on staging. --- pkgs/by-name/hd/hdrhistogram_c/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/hd/hdrhistogram_c/package.nix b/pkgs/by-name/hd/hdrhistogram_c/package.nix index f05ebfe5f357..83aa93951d8e 100644 --- a/pkgs/by-name/hd/hdrhistogram_c/package.nix +++ b/pkgs/by-name/hd/hdrhistogram_c/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "hdrhistogram_c"; - version = "0.11.9"; + version = "0.11.10"; src = fetchFromGitHub { owner = "HdrHistogram"; repo = "HdrHistogram_c"; tag = finalAttrs.version; - hash = "sha256-9Xp+gPqJpB7xZr5dzyc9Via9gxG9q/EriCx3cm++0kU="; + hash = "sha256-LMZj7vuxOA1bgU/J10IKnyNe3R0dk2AA1ydLTHun4vg="; }; buildInputs = [ zlib ]; From bdd297d0ff90c2218927d14cbc33ff765ca7e8d6 Mon Sep 17 00:00:00 2001 From: FliegendeWurst Date: Thu, 9 Jul 2026 23:47:21 +0200 Subject: [PATCH 245/284] python3Packages.hypothesis: fix build --- pkgs/development/python-modules/hypothesis/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/hypothesis/default.nix b/pkgs/development/python-modules/hypothesis/default.nix index c47616ad37ae..6556709611a4 100644 --- a/pkgs/development/python-modules/hypothesis/default.nix +++ b/pkgs/development/python-modules/hypothesis/default.nix @@ -37,6 +37,7 @@ buildPythonPackage (finalAttrs: { pname version src + sourceRoot cargoRoot ; hash = "sha256-WEuCK1jpemnNpO+UxsfpdAkFLSM0v2WRjZr3qmSLBJI="; @@ -91,7 +92,7 @@ buildPythonPackage (finalAttrs: { ''; pytestFlags = [ - "-o cache_dir=$TMPDIR/.pytest_cache" + "-p no:cacheprovider" ]; enabledTestPaths = [ "tests/cover" ]; From 5d0c21d22241b8d60a2ffec03f1274df19d6210d Mon Sep 17 00:00:00 2001 From: FliegendeWurst Date: Fri, 10 Jul 2026 00:14:30 +0200 Subject: [PATCH 246/284] cmake: fix parenthesis in patch --- pkgs/by-name/cm/cmake/remove-impure-search-paths.patch | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch b/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch index 87c58b4ecb42..9054302f3785 100644 --- a/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch +++ b/pkgs/by-name/cm/cmake/remove-impure-search-paths.patch @@ -584,7 +584,7 @@ diff --git a/Modules/FindJNI.cmake b/Modules/FindJNI.cmake index a70b00f330..1962b55d4a 100644 --- a/Modules/FindJNI.cmake +++ b/Modules/FindJNI.cmake -@@ -367,57 +367,6 @@ if (WIN32) +@@ -367,56 +367,6 @@ if (WIN32) endif() set(_JNI_JAVA_DIRECTORIES_BASE @@ -638,10 +638,9 @@ index a70b00f330..1962b55d4a 100644 - # SuSE specific paths for default JVM - /usr/lib64/jvm/java - /usr/lib64/jvm/jre -- ) + ) set(_JNI_JAVA_AWT_LIBRARY_TRIES) - set(_JNI_JAVA_INCLUDE_TRIES) diff --git a/Modules/FindJava.cmake b/Modules/FindJava.cmake index 1587ce648b..e92213cba7 100644 --- a/Modules/FindJava.cmake From 8a597f5ae61cb69aa166f77e585b96c1277723bb Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Thu, 9 Jul 2026 09:31:15 +0200 Subject: [PATCH 247/284] checkPhaseThreadLimitHook: rename from openmpCheckPhaseHook, set more thread env vars --- .../check-phase-thread-limit-hook.section.md | 24 ++++++++++++++ doc/hooks/index.md | 2 +- doc/hooks/openmp-check-hook.section.md | 10 ------ doc/redirects.json | 3 +- .../ch/checkPhaseThreadLimitHook/hook.sh | 32 +++++++++++++++++++ .../ch/checkPhaseThreadLimitHook/package.nix | 15 +++++++++ .../op/openmpCheckPhaseHook/omp-check-hook.sh | 11 ------- .../op/openmpCheckPhaseHook/package.nix | 12 ------- pkgs/top-level/aliases.nix | 1 + 9 files changed, 75 insertions(+), 35 deletions(-) create mode 100644 doc/hooks/check-phase-thread-limit-hook.section.md delete mode 100644 doc/hooks/openmp-check-hook.section.md create mode 100644 pkgs/by-name/ch/checkPhaseThreadLimitHook/hook.sh create mode 100644 pkgs/by-name/ch/checkPhaseThreadLimitHook/package.nix delete mode 100644 pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh delete mode 100644 pkgs/by-name/op/openmpCheckPhaseHook/package.nix diff --git a/doc/hooks/check-phase-thread-limit-hook.section.md b/doc/hooks/check-phase-thread-limit-hook.section.md new file mode 100644 index 000000000000..0adc0d309c47 --- /dev/null +++ b/doc/hooks/check-phase-thread-limit-hook.section.md @@ -0,0 +1,24 @@ +# checkPhaseThreadLimitHook {#setup-hook-check-phase-thread-limit} + +This hook defaults a variety of environment variables known +to control thread counts to 1. Many of these otherwise default +to `$(nproc)`, which causes massive overloads on build machines +if nix build jobs and build cores are already tuned to fully utilize +compute capacity of a builder without additional parallelism. + +Currently sets the following environment variables: +- [`OMP_NUM_THREADS`](https://www.openmp.org/spec-html/5.0/openmpse50.html) +- [`OPENBLAS_NUM_THREADS`](https://github.com/OpenMathLib/OpenBLAS/blob/e7b45174355edec1f04de1cabcf5ca6a98ea7fbc/USAGE.md#how-can-i-use-openblas-in-multi-threaded-applications) +- [`MKL_NUM_THREADS`](https://www.intel.com/content/www/us/en/docs/onemkl/developer-guide-linux/2023-0/mkl-domain-num-threads.html) +- [`BLIS_NUM_THREADS`](https://github.com/flame/blis/blob/b8b75b4e19459f5d618b57aa814ca38b1d82eb82/docs/Multithreading.md#specifying-multithreading) +- `VECLIB_MAXIMUM_THREADS`: Only affects darwin, see [`man 7 Accelerate`](https://manp.gs/mac/7/Accelerate) +- [`NUMBA_NUM_THREADS`](https://numba.readthedocs.io/en/stable/reference/envvars.html#threading-control) +- [`NUMEXPR_NUM_THREADS`](https://numexpr.readthedocs.io/en/latest/user_guide.html#threadpool-configuration) + +The `NIX_CHECK_PHASE_DEFAULT_NUM_THREADS` environment variable +can be used to override the default thread count limit. +`dontLimitCheckPhaseThreads = true;` can be used to disable +thread limiting on an individual package. + +This hook will not attempt to override already existing +definitions for thread count environment variables. diff --git a/doc/hooks/index.md b/doc/hooks/index.md index 63cc9b2ded64..2307782dec47 100644 --- a/doc/hooks/index.md +++ b/doc/hooks/index.md @@ -13,6 +13,7 @@ aws-c-common.section.md bmake.section.md breakpoint.section.md cernlib.section.md +check-phase-thread-limit-hook.section.md cmake.section.md desktop-file-utils.section.md gdk-pixbuf.section.md @@ -34,7 +35,6 @@ nodejs-install-manuals.section.md npm-build-hook.section.md npm-config-hook.section.md npm-install-hook.section.md -openmp-check-hook.section.md patch-rc-path-hooks.section.md perl.section.md pkg-config.section.md diff --git a/doc/hooks/openmp-check-hook.section.md b/doc/hooks/openmp-check-hook.section.md deleted file mode 100644 index 5a5842eb5e29..000000000000 --- a/doc/hooks/openmp-check-hook.section.md +++ /dev/null @@ -1,10 +0,0 @@ -# openmpCheckPhaseHook {#setup-hook-omp-check} - - -This hook can be used to setup a check phase that -requires running a OpenMP application. It mostly -serves to limit `OMP_NUM_THREADS` to avoid overloading -build machines. - -This hook will not attempt to override an already existing -definition of `OMP_NUM_THREADS` in the environment. diff --git a/doc/redirects.json b/doc/redirects.json index 183986feb1d9..04d844ceaa2c 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -2920,7 +2920,8 @@ "setup-hook-mpi-check": [ "index.html#setup-hook-mpi-check" ], - "setup-hook-omp-check": [ + "setup-hook-check-phase-thread-limit": [ + "index.html#setup-hook-check-phase-thread-limit", "index.html#setup-hook-omp-check" ], "ninja": [ diff --git a/pkgs/by-name/ch/checkPhaseThreadLimitHook/hook.sh b/pkgs/by-name/ch/checkPhaseThreadLimitHook/hook.sh new file mode 100644 index 000000000000..1b610b631d84 --- /dev/null +++ b/pkgs/by-name/ch/checkPhaseThreadLimitHook/hook.sh @@ -0,0 +1,32 @@ +setupThreadLimit() { + # Limit number of threads used during checks. Default is "all cores". + # Using all cores causes high load on builders if checks are executed with NIX_BUILD_CORE parallelism. + # This gets even worse if multiple builds are scheduled on the same machine, potentially growing O(n^3) without explicit core limits. + + # global value to override all of these at once + NIX_CHECK_PHASE_DEFAULT_NUM_THREADS="${NIX_CHECK_PHASE_DEFAULT_NUM_THREADS:-1}" + + thread_vars=( + OMP_NUM_THREADS + OPENBLAS_NUM_THREADS + MKL_NUM_THREADS + BLIS_NUM_THREADS + VECLIB_MAXIMUM_THREADS + NUMBA_NUM_THREADS + NUMEXPR_NUM_THREADS + ) + + echo "setting known thread variables to default: $NIX_CHECK_PHASE_DEFAULT_NUM_THREADS" + for var in "${thread_vars[@]}"; do + export "$var=${!var:-$NIX_CHECK_PHASE_DEFAULT_NUM_THREADS}" + printf " %s=%s" "$var" "${!var}" + done + printf "\n" +} + + +if [[ -z "${dontLimitCheckPhaseThreads-}" ]]; then + echo "Using checkPhaseThreadLimitHook" + preCheckHooks+=('setupThreadLimit') + preInstallCheckHooks+=('setupThreadLimit') +fi diff --git a/pkgs/by-name/ch/checkPhaseThreadLimitHook/package.nix b/pkgs/by-name/ch/checkPhaseThreadLimitHook/package.nix new file mode 100644 index 000000000000..6bd9bda7135a --- /dev/null +++ b/pkgs/by-name/ch/checkPhaseThreadLimitHook/package.nix @@ -0,0 +1,15 @@ +{ + lib, + makeSetupHook, +}: + +makeSetupHook { + name = "check-phase-thread-limit-hook"; + + __structuredAttrs = true; + + meta = { + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ grimmauld ]; + }; +} ./hook.sh diff --git a/pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh b/pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh deleted file mode 100644 index b3279b170360..000000000000 --- a/pkgs/by-name/op/openmpCheckPhaseHook/omp-check-hook.sh +++ /dev/null @@ -1,11 +0,0 @@ -preCheckHooks+=('setupOmpCheck') -preInstallCheckHooks+=('setupOmpCheck') - - -setupOmpCheck() { - # Limit number of OpenMP threads. Default is "all cores". - # Using all cores causes high load on builders if checks are executed with NIX_BUILD_CORE parallelism. - # This gets even worse if multiple builds are scheduled on the same machine, potentially growing O(n^3) without explicit core limits. - export OMP_NUM_THREADS="${OMP_NUM_THREADS:-1}" -} - diff --git a/pkgs/by-name/op/openmpCheckPhaseHook/package.nix b/pkgs/by-name/op/openmpCheckPhaseHook/package.nix deleted file mode 100644 index 9e30609e8de5..000000000000 --- a/pkgs/by-name/op/openmpCheckPhaseHook/package.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ - lib, - makeSetupHook, -}: - -makeSetupHook { - name = "omp-checkPhase-hook"; - - __structuredAttrs = true; - - meta.license = lib.licenses.mit; -} ./omp-check-hook.sh diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index c514f87d803f..9eec1f8d661f 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1735,6 +1735,7 @@ mapAliases { openjfx23 = throw "OpenJFX 23 was removed as it has reached its end of life"; # Added 2025-11-04 openjfx24 = throw "OpenJFX 24 was removed as it has reached its end of life"; # Added 2025-10-04 openmodelica = throw "'openmodelica' has been removed as it was unmaintained in nixpkgs and depends on insecure&unmtaintained qtwebkit"; # Added 2026-04-26 + openmpCheckPhaseHook = warnAlias "'openmpCheckPhaseHook' has been renamed to 'checkPhaseThreadLimitHook' to reflect its handling of all known thread-limiting mechanisms during check phase" checkPhaseThreadLimitHook; # Added 2026-07-09 openmw-tes3mp = throw "'openmw-tes3mp' has been removed due to lack of maintenance upstream"; # Added 2025-08-30 openssl_3_0 = throw "'openssl_3_0' has been renamed to/replaced by 'openssl_3'"; # Converted to throw 2025-10-27 opensycl = throw "'opensycl' has been renamed to/replaced by 'adaptivecpp'"; # Converted to throw 2025-10-27 From 1d0579657427fb77f57e6f1d57bc5a63b2fd119d Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Thu, 9 Jul 2026 09:33:05 +0200 Subject: [PATCH 248/284] treewide: openmpCheckPhaseHook -> checkPhaseThreadLimitHook --- pkgs/by-name/bl/blas/package.nix | 4 ++-- pkgs/by-name/mc/mctc-lib/package.nix | 4 ++-- pkgs/by-name/mp/mpiCheckPhaseHook/package.nix | 4 ++-- pkgs/by-name/pi/pixman/package.nix | 4 ++-- pkgs/development/compilers/llvm/common/openmp/default.nix | 4 ++-- pkgs/development/python-modules/numpy/1.nix | 4 ++-- pkgs/development/python-modules/numpy/2.nix | 4 ++-- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkgs/by-name/bl/blas/package.nix b/pkgs/by-name/bl/blas/package.nix index 51deec6c5c64..c0023957bcea 100644 --- a/pkgs/by-name/bl/blas/package.nix +++ b/pkgs/by-name/bl/blas/package.nix @@ -3,7 +3,7 @@ stdenv, lapack-reference, openblas, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, isILP64 ? false, blasProvider ? openblas, }: @@ -188,7 +188,7 @@ stdenv.mkDerivation { ]; propagatedNativeBuildInputs = [ - openmpCheckPhaseHook + checkPhaseThreadLimitHook ]; meta = (blasProvider'.meta or { }) // { diff --git a/pkgs/by-name/mc/mctc-lib/package.nix b/pkgs/by-name/mc/mctc-lib/package.nix index a2de791d14f0..0363ab2988cf 100644 --- a/pkgs/by-name/mc/mctc-lib/package.nix +++ b/pkgs/by-name/mc/mctc-lib/package.nix @@ -10,7 +10,7 @@ pkg-config, python3, jonquil, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, }: assert ( @@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: { gfortran pkg-config python3 - openmpCheckPhaseHook + checkPhaseThreadLimitHook ] ++ lib.optionals (buildType == "meson") [ meson diff --git a/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix b/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix index db5832c28a6e..8fc6081e2e14 100644 --- a/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix +++ b/pkgs/by-name/mp/mpiCheckPhaseHook/package.nix @@ -2,7 +2,7 @@ lib, makeSetupHook, stdenv, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, }: makeSetupHook { @@ -14,7 +14,7 @@ makeSetupHook { }; propagatedNativeBuildInputs = [ - openmpCheckPhaseHook + checkPhaseThreadLimitHook ]; meta.license = lib.licenses.mit; diff --git a/pkgs/by-name/pi/pixman/package.nix b/pkgs/by-name/pi/pixman/package.nix index 23755586fe6c..f9e469ede120 100644 --- a/pkgs/by-name/pi/pixman/package.nix +++ b/pkgs/by-name/pi/pixman/package.nix @@ -6,7 +6,7 @@ ninja, pkg-config, libpng, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, glib, # just passthru # for passthru.tests @@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: { meson ninja pkg-config - openmpCheckPhaseHook + checkPhaseThreadLimitHook __flattenIncludeHackHook ]; diff --git a/pkgs/development/compilers/llvm/common/openmp/default.nix b/pkgs/development/compilers/llvm/common/openmp/default.nix index 10f9ce154cb4..0b971ea1d0ef 100644 --- a/pkgs/development/compilers/llvm/common/openmp/default.nix +++ b/pkgs/development/compilers/llvm/common/openmp/default.nix @@ -19,7 +19,7 @@ ompdSupport ? true, ompdGdbSupport ? ompdSupport, getVersionFile, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, }: assert lib.assertMsg (ompdGdbSupport -> ompdSupport) "OMPD GDB support requires OMPD support!"; @@ -61,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: { ]; propagatedNativeBuildInputs = [ - openmpCheckPhaseHook + checkPhaseThreadLimitHook ]; buildInputs = [ diff --git a/pkgs/development/python-modules/numpy/1.nix b/pkgs/development/python-modules/numpy/1.nix index 7167ff94637e..c1c9cb2bed6e 100644 --- a/pkgs/development/python-modules/numpy/1.nix +++ b/pkgs/development/python-modules/numpy/1.nix @@ -18,7 +18,7 @@ blas, lapack, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, # Reverse dependency sage, @@ -112,7 +112,7 @@ buildPythonPackage (finalAttrs: { ]; propagatedNativeBuildInputs = [ - openmpCheckPhaseHook + checkPhaseThreadLimitHook ]; preCheck = '' diff --git a/pkgs/development/python-modules/numpy/2.nix b/pkgs/development/python-modules/numpy/2.nix index 4af4511fdc81..eadc806b327c 100644 --- a/pkgs/development/python-modules/numpy/2.nix +++ b/pkgs/development/python-modules/numpy/2.nix @@ -19,7 +19,7 @@ coreutils, lapack, - openmpCheckPhaseHook, + checkPhaseThreadLimitHook, # Reverse dependency astropy, @@ -118,7 +118,7 @@ buildPythonPackage (finalAttrs: { ''; propagatedNativeBuildInputs = [ - openmpCheckPhaseHook + checkPhaseThreadLimitHook ]; preCheck = '' From b96ed4d6020e57af1bba316256ca71f0399ded01 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Thu, 9 Jul 2026 09:54:01 +0200 Subject: [PATCH 249/284] treewide: add checkPhaseThreadLimitHook to more things used in parallel checks --- pkgs/by-name/bl/blis/package.nix | 10 ++++++++++ pkgs/by-name/mk/mkl/package.nix | 9 +++++++++ .../libraries/science/math/openblas/default.nix | 9 +++++++++ .../python-modules/joblib/default.nix | 16 ++++++++++++++++ .../development/python-modules/numba/default.nix | 10 ++++++++++ .../python-modules/numexpr/default.nix | 9 +++++++++ 6 files changed, 63 insertions(+) diff --git a/pkgs/by-name/bl/blis/package.nix b/pkgs/by-name/bl/blis/package.nix index 1edd86ae85c7..43b1e17c59ed 100644 --- a/pkgs/by-name/bl/blis/package.nix +++ b/pkgs/by-name/bl/blis/package.nix @@ -5,6 +5,12 @@ perl, python3, + # sets BLIS_NUM_THREADS and OMP_NUM_THREADS for packages + # invoking blis during checkPhase/installCheckPhase to + # avoid overloading builders with excessive parallelism + # See also: https://github.com/flame/blis/blob/b8b75b4e19459f5d618b57aa814ca38b1d82eb82/docs/Multithreading.md#specifying-multithreading + checkPhaseThreadLimitHook, + # Enable BLAS interface with 64-bit integer width. blas64 ? false, @@ -36,6 +42,10 @@ stdenv.mkDerivation (finalAttrs: { python3 ]; + propagatedNativeBuildInputs = [ + checkPhaseThreadLimitHook + ]; + doCheck = true; enableParallelBuilding = true; diff --git a/pkgs/by-name/mk/mkl/package.nix b/pkgs/by-name/mk/mkl/package.nix index f9e1dda4e7ab..31b724759e8a 100644 --- a/pkgs/by-name/mk/mkl/package.nix +++ b/pkgs/by-name/mk/mkl/package.nix @@ -8,6 +8,11 @@ _7zz, cctools, validatePkgConfig, + # sets MKL_NUM_THREADS for packages + # invoking mkl during checkPhase/installCheckPhase to + # avoid overloading builders with excessive parallelism + # See also: https://www.intel.com/content/www/us/en/docs/onemkl/developer-guide-linux/2023-0/mkl-domain-num-threads.html + checkPhaseThreadLimitHook, enableStatic ? stdenv.hostPlatform.isStatic, }: @@ -86,6 +91,10 @@ stdenvNoCC.mkDerivation ( [ rpmextract ] ); + propagatedNativeBuildInputs = [ + checkPhaseThreadLimitHook + ]; + buildPhase = if stdenvNoCC.hostPlatform.isDarwin then '' diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix index 97b7596b937c..ee5e6f12caa8 100644 --- a/pkgs/development/libraries/science/math/openblas/default.nix +++ b/pkgs/development/libraries/science/math/openblas/default.nix @@ -4,6 +4,11 @@ fetchFromGitHub, fetchpatch, cmake, + # sets OPENBLAS_NUM_THREADS and OMP_NUM_THREADS for packages + # invoking openblas during checkPhase/installCheckPhase to + # avoid overloading builders with excessive parallelism + # See also: https://github.com/OpenMathLib/OpenBLAS/blob/e7b45174355edec1f04de1cabcf5ca6a98ea7fbc/USAGE.md#how-can-i-use-openblas-in-multi-threaded-applications + checkPhaseThreadLimitHook, # Most packages depending on openblas expect integer width to match # pointer width, but some expect to use 32-bit integers always # (for compatibility with reference BLAS). @@ -232,6 +237,10 @@ stdenv.mkDerivation (finalAttrs: { cmake ]; + propagatedNativeBuildInputs = [ + checkPhaseThreadLimitHook + ]; + buildInputs = lib.optional (stdenv.cc.isClang && config.USE_OPENMP) openmp; depsBuildBuild = [ diff --git a/pkgs/development/python-modules/joblib/default.nix b/pkgs/development/python-modules/joblib/default.nix index 2474439fc910..b4b9c7bf2217 100644 --- a/pkgs/development/python-modules/joblib/default.nix +++ b/pkgs/development/python-modules/joblib/default.nix @@ -5,6 +5,14 @@ pythonAtLeast, stdenv, + # sets various thread limit env vars for packages + # invoking joblib during checkPhase/installCheckPhase to + # avoid overloading builders with excessive parallelism + # See also: + # https://github.com/joblib/joblib/blob/b030e4e1ed6a227c0e587c31b266c03b3b692372/joblib/_parallel_backends.py#L59-L67 + # https://github.com/joblib/joblib/blob/b030e4e1ed6a227c0e587c31b266c03b3b692372/joblib/_parallel_backends.py#L221-L248 + checkPhaseThreadLimitHook, + # build-system setuptools, @@ -40,6 +48,14 @@ buildPythonPackage rec { threadpoolctl ]; + propagatedNativeBuildInputs = [ + checkPhaseThreadLimitHook + ]; + + # joblib expects to set thread limits itself while checking for propagation of thread limit environment variables. + # Setting these via checkPhaseThreadLimitHook on joblib itself causes tests to fail, but we do want the hook to propagate. + dontLimitCheckPhaseThreads = true; + enabledTestPaths = [ "joblib/test" ]; disabledTests = [ diff --git a/pkgs/development/python-modules/numba/default.nix b/pkgs/development/python-modules/numba/default.nix index 11c25c98168d..7c215cdb4aaf 100644 --- a/pkgs/development/python-modules/numba/default.nix +++ b/pkgs/development/python-modules/numba/default.nix @@ -8,6 +8,12 @@ # nativeBuildInputs setuptools, + # sets NUMBA_NUM_THREADS and OMP_NUM_THREADS for packages + # invoking numba during checkPhase/installCheckPhase to + # avoid overloading builders with excessive parallelism + # See also: https://numba.readthedocs.io/en/stable/reference/envvars.html#threading-control + checkPhaseThreadLimitHook, + # dependencies llvmlite, numpy, @@ -104,6 +110,10 @@ buildPythonPackage (finalAttrs: { writableTmpDirAsHomeHook ]; + propagatedNativeBuildInputs = [ + checkPhaseThreadLimitHook + ]; + # https://github.com/NixOS/nixpkgs/issues/255262 preCheck = '' cd $out diff --git a/pkgs/development/python-modules/numexpr/default.nix b/pkgs/development/python-modules/numexpr/default.nix index f4b552c108ec..426b53e7814d 100644 --- a/pkgs/development/python-modules/numexpr/default.nix +++ b/pkgs/development/python-modules/numexpr/default.nix @@ -5,6 +5,11 @@ numpy, pytestCheckHook, setuptools, + # sets NUMEXPR_NUM_THREADS and OMP_NUM_THREADS for packages + # invoking numexpr during checkPhase/installCheckPhase to + # avoid overloading builders with excessive parallelism + # See also: https://numexpr.readthedocs.io/en/latest/user_guide.html#threadpool-configuration + checkPhaseThreadLimitHook, }: buildPythonPackage rec { @@ -31,6 +36,10 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; + propagatedNativeBuildInputs = [ + checkPhaseThreadLimitHook + ]; + preCheck = '' pushd $out ''; From 1488f541dc3309d5e9b64470ce9890aa4a3fcbba Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 10 Jul 2026 00:38:47 +0000 Subject: [PATCH 250/284] gawk: 5.4.0 -> 5.4.1 --- pkgs/tools/text/gawk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/gawk/default.nix b/pkgs/tools/text/gawk/default.nix index 2cbdfd2fa593..bb345afdd482 100644 --- a/pkgs/tools/text/gawk/default.nix +++ b/pkgs/tools/text/gawk/default.nix @@ -25,11 +25,11 @@ assert (doCheck && stdenv.hostPlatform.isLinux) -> glibcLocales != null; stdenv.mkDerivation rec { pname = "gawk" + lib.optionalString interactive "-interactive"; - version = "5.4.0"; + version = "5.4.1"; src = fetchurl { url = "mirror://gnu/gawk/gawk-${version}.tar.xz"; - hash = "sha256-PdQw8M07RCjGw/avwCG5zTwfjJP3pojcJoykKKkLSsE="; + hash = "sha256-B/b3NCt/6+QxP8LCVCrZPWT+IK2HFyABCfEFqCb1/Tc="; }; # When we do build separate interactive version, it makes sense to always include man. From 95b1a21908ac832bcdd37b2a441da4a621e91c2b Mon Sep 17 00:00:00 2001 From: Ihar Hrachyshka Date: Fri, 10 Jul 2026 00:16:57 -0400 Subject: [PATCH 251/284] jemalloc: skip extent test with profiling enabled This fixes rust-jemalloc-sys build on darwin. Linux builds pass only when overcommit is enabled in kernel, so it's better to disable it for both platforms. See: https://github.com/jemalloc/jemalloc/pull/2954 Assisted-by: Codex gpt-5.5 xhigh --- pkgs/by-name/je/jemalloc/package.nix | 8 +++++++ .../skip-extent-test-with-prof-active.patch | 24 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/by-name/je/jemalloc/skip-extent-test-with-prof-active.patch diff --git a/pkgs/by-name/je/jemalloc/package.nix b/pkgs/by-name/je/jemalloc/package.nix index 15d3b903b5f5..3529c01c83cf 100644 --- a/pkgs/by-name/je/jemalloc/package.nix +++ b/pkgs/by-name/je/jemalloc/package.nix @@ -51,6 +51,14 @@ stdenv.mkDerivation (finalAttrs: { # `rtree_read.constprop.0` shows up in some builds but # not others, so we fall back to O2: ./o3-to-o2.patch + + # Active profiling may make xallocx decline to grow non-page-aligned + # allocations, so test/integration/extent can observe decommit without + # the matching commit on platforms with real decommit/commit. + # + # A (longer) patch addressing the failure posted upstream at: + # https://github.com/jemalloc/jemalloc/pull/2954 + ./skip-extent-test-with-prof-active.patch ]; nativeBuildInputs = [ diff --git a/pkgs/by-name/je/jemalloc/skip-extent-test-with-prof-active.patch b/pkgs/by-name/je/jemalloc/skip-extent-test-with-prof-active.patch new file mode 100644 index 000000000000..1440435c1458 --- /dev/null +++ b/pkgs/by-name/je/jemalloc/skip-extent-test-with-prof-active.patch @@ -0,0 +1,24 @@ +diff --git a/test/integration/extent.sh b/test/integration/extent.sh +index 39fb0a73..ee9f3ed4 100644 +--- a/test/integration/extent.sh ++++ b/test/integration/extent.sh +@@ -1,5 +1,19 @@ + #!/bin/sh + ++# With active profiling, xallocx may decline to grow non-page-aligned ++# allocations. On platforms with real decommit/commit, this can make this ++# test observe a successful decommit without the matching commit. ++case ",${MALLOC_CONF_ALL}," in ++ *,prof:true,*) ++ case ",${MALLOC_CONF_ALL}," in ++ *,prof_active:false,*) ++ ;; ++ *) ++ return 1 ++ ;; ++ esac ++esac ++ + if [ "x${enable_fill}" = "x1" ] ; then + export MALLOC_CONF="junk:false" + fi From 5e53adb250811a149e016dfc99edf1f196b62a17 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Wed, 1 Jul 2026 08:56:31 +0000 Subject: [PATCH 252/284] isa-l: 2.32.0 -> 2.32.1 Diff: https://github.com/intel/isa-l/compare/v2.32.0...v2.32.1 Changelog: https://github.com/intel/isa-l/releases/tag/v2.32.1 --- pkgs/by-name/is/isa-l/package.nix | 38 ++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/is/isa-l/package.nix b/pkgs/by-name/is/isa-l/package.nix index 22bdfce4ef02..16d7a49a5658 100644 --- a/pkgs/by-name/is/isa-l/package.nix +++ b/pkgs/by-name/is/isa-l/package.nix @@ -4,9 +4,13 @@ fetchFromGitHub, # nativeBuildInputs + cmake, nasm, - autoreconfHook, + # buildInputs + zlib, + + # nativeInstallCheckInputs versionCheckHook, # passthru @@ -18,27 +22,39 @@ stdenv.mkDerivation (finalAttrs: { pname = "isa-l"; - version = "2.32.0"; + version = "2.32.1"; + + __structuredAttrs = true; + strictDeps = true; src = fetchFromGitHub { owner = "intel"; repo = "isa-l"; tag = "v${finalAttrs.version}"; - hash = "sha256-LvxAlyBUSYEVLrMGcLii7bGvN1GZY/noYRSrBqsGiMI="; + hash = "sha256-JizQXhfDCL8aWEv52TBuXw06HA/8t7Ram/q9vSp5/DI="; }; nativeBuildInputs = [ + cmake nasm - autoreconfHook ]; - # configure.ac has two code paths for assembler detection: - # 1. When AS is unset: searches for nasm and tests with correct nasm syntax - # 2. When AS is set: tests with yasm-style syntax that nasm rejects - # AM_PROG_AS sets AS=as, so we must unset it to use path 1. - preConfigure = '' - unset AS - ''; + buildInputs = [ + zlib + ]; + + env = { + NIX_CFLAGS_COMPILE = toString [ + "-DVERSION=\"${finalAttrs.version}\"" + ]; + }; + cmakeFlags = [ + (lib.cmakeBool "ISAL_BUILD_IGZIP_CLI" true) + + # https://github.com/NixOS/nixpkgs/issues/144170 + (lib.cmakeFeature "CMAKE_INSTALL_INCLUDEDIR" "include") + (lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib") + ]; nativeInstallCheckInputs = [ versionCheckHook From c181c999d910e0bc0b7d839f2d092adfd93a02b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Fri, 10 Jul 2026 15:24:45 +0200 Subject: [PATCH 253/284] isa-l: run upstream test suite --- pkgs/by-name/is/isa-l/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/is/isa-l/package.nix b/pkgs/by-name/is/isa-l/package.nix index 16d7a49a5658..16b1288c99ed 100644 --- a/pkgs/by-name/is/isa-l/package.nix +++ b/pkgs/by-name/is/isa-l/package.nix @@ -60,6 +60,7 @@ stdenv.mkDerivation (finalAttrs: { versionCheckHook ]; doInstallCheck = true; + doCheck = true; passthru = { tests = { From e45f55ed6741e7275c07674ecc4a1a20160511bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 10 Jul 2026 18:36:22 -0700 Subject: [PATCH 254/284] gpgme: 2.1.0 -> 2.1.2 Changelog: https://dev.gnupg.org/source/gpgme/browse/master/NEWS;gpgme-2.1.2?as=remarkup --- pkgs/by-name/gp/gpgme/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gp/gpgme/package.nix b/pkgs/by-name/gp/gpgme/package.nix index 33edca30f448..eb406544e78e 100644 --- a/pkgs/by-name/gp/gpgme/package.nix +++ b/pkgs/by-name/gp/gpgme/package.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "gpgme"; - version = "2.1.0"; + version = "2.1.2"; outputs = [ "out" @@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnupg/gpgme/gpgme-${finalAttrs.version}.tar.bz2"; - hash = "sha256-hBxepT/CYln0+/DovemC3qG4ocoMt35oHIKwUFZr+Ss="; + hash = "sha256-BoepWymYccQUH1B8D3QN5rQpyawGfQ+k4GLjJk31+3c="; }; postPatch = '' From fcd9d5b20b8b027c258722b1d4805149583eeb2c Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 11 Jul 2026 08:03:30 +0100 Subject: [PATCH 255/284] xrdb: 1.2.2 -> 1.2.3 Changes: https://lists.x.org/archives/xorg/2026-July/062258.html --- pkgs/by-name/xr/xrdb/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/xr/xrdb/package.nix b/pkgs/by-name/xr/xrdb/package.nix index fe508438601f..807bfd17fbef 100644 --- a/pkgs/by-name/xr/xrdb/package.nix +++ b/pkgs/by-name/xr/xrdb/package.nix @@ -13,7 +13,7 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "xrdb"; - version = "1.2.2"; + version = "1.2.3"; src = fetchFromGitLab { domain = "gitlab.freedesktop.org"; @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "app"; repo = "xrdb"; tag = "xrdb-${finalAttrs.version}"; - hash = "sha256-XCi/E6tVaLYGRsMWJalCl1J8VIT4xV6KFuo+K//LQGY="; + hash = "sha256-dD9gYceg9RDfTIXBtMT/QFjoByu0cH/imBKAmSMM+7A="; }; strictDeps = true; From f86c4d8b290e462d87d35a6ba3a0276e3b6fd549 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 11 Jul 2026 14:22:02 +0200 Subject: [PATCH 256/284] python3Packages.cross-web: fix version in pyproject.toml --- pkgs/development/python-modules/cross-web/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/cross-web/default.nix b/pkgs/development/python-modules/cross-web/default.nix index 827ce4c250ff..8d69ff5d6211 100644 --- a/pkgs/development/python-modules/cross-web/default.nix +++ b/pkgs/development/python-modules/cross-web/default.nix @@ -10,6 +10,7 @@ hatchling, httpx, litestar, + pyprojectVersionPatchHook, pytest-asyncio, pytest-django, pytestCheckHook, @@ -35,6 +36,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-JxwzTU17jCQMFNCtmcZVAZQnwDZjHNxCGNdKhkCMoPs="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ hatchling ]; dependencies = [ typing-extensions ]; From a187cae4ae6036d4c321c35a6b6bd3121e9d8df2 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 11 Jul 2026 14:30:46 +0200 Subject: [PATCH 257/284] python3Packages.python-fasthtml: rename from fasthtml --- pkgs/development/python-modules/fastprogress/default.nix | 4 ++-- .../python-modules/{fasthtml => python-fasthtml}/default.nix | 2 +- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 4 ++-- 4 files changed, 6 insertions(+), 5 deletions(-) rename pkgs/development/python-modules/{fasthtml => python-fasthtml}/default.nix (98%) diff --git a/pkgs/development/python-modules/fastprogress/default.nix b/pkgs/development/python-modules/fastprogress/default.nix index 8b55e3f99e7d..5094394374c9 100644 --- a/pkgs/development/python-modules/fastprogress/default.nix +++ b/pkgs/development/python-modules/fastprogress/default.nix @@ -5,8 +5,8 @@ setuptools, fastcore, numpy, - fasthtml, ipython, + python-fasthtml, }: buildPythonPackage (finalAttrs: { @@ -26,8 +26,8 @@ buildPythonPackage (finalAttrs: { dependencies = [ fastcore numpy - fasthtml ipython + python-fasthtml ]; # no real tests diff --git a/pkgs/development/python-modules/fasthtml/default.nix b/pkgs/development/python-modules/python-fasthtml/default.nix similarity index 98% rename from pkgs/development/python-modules/fasthtml/default.nix rename to pkgs/development/python-modules/python-fasthtml/default.nix index 12b9b77c0435..0e47a8aa38a1 100644 --- a/pkgs/development/python-modules/fasthtml/default.nix +++ b/pkgs/development/python-modules/python-fasthtml/default.nix @@ -30,7 +30,7 @@ }: buildPythonPackage (finalAttrs: { - pname = "fasthtml"; + pname = "python-fasthtml"; version = "0.13.3"; pyproject = true; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 7c4b1dcb1f1c..29974e6d9751 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -228,6 +228,7 @@ mapAliases { face_recognition = throw "'face_recognition' has been renamed to/replaced by 'face-recognition'"; # Converted to throw 2025-10-29 face_recognition_models = throw "'face_recognition_models' has been renamed to/replaced by 'face-recognition-models'"; # Converted to throw 2025-10-29 factory_boy = throw "'factory_boy' has been renamed to/replaced by 'factory-boy'"; # Converted to throw 2025-10-29 + fasthtml = python-fasthtml; # Added 2026-07-11 fastnlo_toolkit = throw "'fastnlo_toolkit' has been renamed to/replaced by 'fastnlo-toolkit'"; # Converted to throw 2025-10-29 fasttext-predict = throw "'fasttext-predict' has been removed as the only consumer searxng removed its usage"; # Added 2026-03-11 fb-re2 = throw "fb-re2 has been removed since it is unmaintained upstream, consider google-re2 instead"; # added 2025-10-18 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9bbbab5e3b97..c73ffe110bb1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5835,8 +5835,6 @@ self: super: with self; { fastgit = callPackage ../development/python-modules/fastgit { }; - fasthtml = callPackage ../development/python-modules/fasthtml { }; - fastimport = callPackage ../development/python-modules/fastimport { }; fastjet = callPackage ../development/python-modules/fastjet { }; @@ -16411,6 +16409,8 @@ self: super: with self; { python-family-hub-local = callPackage ../development/python-modules/python-family-hub-local { }; + python-fasthtml = callPackage ../development/python-modules/python-fasthtml { }; + python-fedora = callPackage ../development/python-modules/python-fedora { }; python-ffmpeg = callPackage ../development/python-modules/python-ffmpeg { }; From ef2d4cd63aa34ce80eef9e807b25428e169b0e84 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 11 Jul 2026 14:32:46 +0200 Subject: [PATCH 258/284] python3Packages.speechbrain: fix version in pyproject.toml --- pkgs/development/python-modules/speechbrain/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/speechbrain/default.nix b/pkgs/development/python-modules/speechbrain/default.nix index 2bc905414aac..31b943e4ee95 100644 --- a/pkgs/development/python-modules/speechbrain/default.nix +++ b/pkgs/development/python-modules/speechbrain/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + pyprojectVersionPatchHook, # build-system setuptools, @@ -33,6 +34,10 @@ buildPythonPackage (finalAttrs: { hash = "sha256-98g9HSCD6ahsmCSKSKIY1okYOuzUqVuJO9N9WUiZMPk="; }; + nativeBuildInputs = [ + pyprojectVersionPatchHook + ]; + build-system = [ setuptools ]; dependencies = [ From b01149720fb7a0a4c78ec20ab1317e688fb5f585 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 11 Jul 2026 14:59:58 +0200 Subject: [PATCH 259/284] file: relax landlock sandboxing for tar.bz2 compat The new landlock sandbox does not allow executing any programs under /, which prevents it from executing the bzip2 helper to determine the correct mime type response. ``` $ touch foo $ tar -cjf foo.tar.bz2 foo $ file --brief --mime --uncompress foo.tar.bz2 application/x-decompression-error-bzip2-Cannot-posix-spawn--bzip2---Permission-denied compressed-encoding=application/x-bzip2; charset=binary` ``` --- pkgs/tools/misc/file/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix index da9968755584..0fae703c4c4a 100644 --- a/pkgs/tools/misc/file/default.nix +++ b/pkgs/tools/misc/file/default.nix @@ -26,6 +26,14 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-7RRlaIOyOjZLQFfAVZXZMlLam8Rz0wEGUZUZ0NoUEoM="; }; + # Work around too strict landlock hardening + # https://bugs.astron.com/view.php?id=785 + postPatch = '' + substituteInPlace src/landlock.c --replace-fail \ + "LANDLOCK_ACCESS_FS_READ_FILE | LANDLOCK_ACCESS_FS_READ_DIR" \ + "LANDLOCK_ACCESS_FS_READ_FILE | LANDLOCK_ACCESS_FS_READ_DIR | LANDLOCK_ACCESS_FS_EXECUTE" + ''; + outputs = [ "out" "dev" From 7d44dc49ab50decbbe70519b159818b095afd88c Mon Sep 17 00:00:00 2001 From: Adam Dinwoodie Date: Tue, 30 Jun 2026 17:18:21 +0100 Subject: [PATCH 260/284] git: 2.54.0 -> 2.55.0 Changelog: https://github.com/git/git/blob/v2.55.0/Documentation/RelNotes/2.55.0.adoc Packaging changes: - disable the t1517 test, since it's clearly fragile when run against an installed Git package - change Rust argument handling to match the upstream project's switch from Rust being opt-in to opt-out - explicitly set `debug` to an empty string in the installCheck flags, to avoid the test suite printing debug output and triggering new failures in the test harness - remove an osx/rust patch that has been fixed upstream --- .../gi/git/osxkeychain-link-rust_lib.patch | 15 -------- pkgs/by-name/gi/git/package.nix | 36 +++++++++++-------- 2 files changed, 22 insertions(+), 29 deletions(-) delete mode 100644 pkgs/by-name/gi/git/osxkeychain-link-rust_lib.patch diff --git a/pkgs/by-name/gi/git/osxkeychain-link-rust_lib.patch b/pkgs/by-name/gi/git/osxkeychain-link-rust_lib.patch deleted file mode 100644 index a0015f87888d..000000000000 --- a/pkgs/by-name/gi/git/osxkeychain-link-rust_lib.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -ur a/Makefile b/Makefile ---- a/Makefile 2026-02-14 15:58:16.624434564 -0500 -+++ b/Makefile 2026-02-14 15:59:25.701016105 -0500 -@@ -4059,9 +4059,9 @@ - contrib/libgit-sys/libgitpub.a: $(LIBGIT_HIDDEN_EXPORT) - $(AR) $(ARFLAGS) $@ $^ - --contrib/credential/osxkeychain/git-credential-osxkeychain: contrib/credential/osxkeychain/git-credential-osxkeychain.o $(LIB_FILE) GIT-LDFLAGS -+contrib/credential/osxkeychain/git-credential-osxkeychain: contrib/credential/osxkeychain/git-credential-osxkeychain.o $(LIB_FILE) $(RUST_LIB) GIT-LDFLAGS - $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) \ -- $(filter %.o,$^) $(LIB_FILE) $(EXTLIBS) -framework Security -framework CoreFoundation -+ $(filter %.o,$^) $(LIB_FILE) $(RUST_LIB) $(EXTLIBS) -framework Security -framework CoreFoundation - - contrib/credential/osxkeychain/git-credential-osxkeychain.o: contrib/credential/osxkeychain/git-credential-osxkeychain.c GIT-CFLAGS - $(QUIET_LINK)$(CC) -o $@ -c $(dep_args) $(compdb_args) $(ALL_CFLAGS) $(EXTRA_CPPFLAGS) $< diff --git a/pkgs/by-name/gi/git/package.nix b/pkgs/by-name/gi/git/package.nix index 53b6854f57f8..a6fe8a13efc3 100644 --- a/pkgs/by-name/gi/git/package.nix +++ b/pkgs/by-name/gi/git/package.nix @@ -63,7 +63,7 @@ assert sendEmailSupport -> perlSupport; assert svnSupport -> perlSupport; let - version = "2.54.0"; + version = "2.55.0"; svn = subversionClient.override { perlBindings = perlSupport; }; gitwebPerlLibs = with perlPackages; [ CGI @@ -105,7 +105,7 @@ stdenv.mkDerivation (finalAttrs: { }.tar.xz" else "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz"; - hash = "sha256-9okWI2TBDeee+Jqo2/SHMesFfjTtu9IKylEM4BVGgaM="; + hash = "sha256-RX/bBNyHKOAH1GiGleaRLm9oByeSDypAvxHqzBdQU1c="; }; outputs = [ "out" ] ++ lib.optional withManual "doc"; @@ -133,17 +133,6 @@ stdenv.mkDerivation (finalAttrs: { url = "https://lore.kernel.org/git/20260504101429.340123-1-joerg@thalheim.io/raw"; hash = "sha256-44EPfEJ39LjPWjqjFb52EKNaJGzYxZzJaJOis8QnazU="; }) - # Address test failure (new in 2.52.0) caused by `git-gui--askyesno` being - # installed by `make install`. - (fetchurl { - name = "expect-gui--askyesno-failure-in-t1517.patch"; - url = "https://lore.kernel.org/git/20251201031040.1120091-1-brianmlyles@gmail.com/raw"; - hash = "sha256-vvhbvg74OIMzfksHiErSnjOZ+W0M/T9J8GOQ4E4wKbU="; - }) - ] - ++ lib.optionals rustSupport [ - # The above patch doesn’t work with Rust support enabled. - ./osxkeychain-link-rust_lib.patch ] ++ lib.optionals withSsh [ # Hard-code the ssh executable to ${pkgs.openssh}/bin/ssh instead of @@ -272,7 +261,7 @@ stdenv.mkDerivation (finalAttrs: { # See https://github.com/Homebrew/homebrew-core/commit/dfa3ccf1e7d3901e371b5140b935839ba9d8b706 ++ lib.optional stdenv.hostPlatform.isDarwin "TKFRAMEWORK=/nonexistent" # Starting with future Git version 3.0.0, rust will be mandatory. For now, it's optional. - ++ lib.optional rustSupport "WITH_RUST=YesPlease"; + ++ lib.optional (!rustSupport) "NO_RUST=YesPlease"; disallowedReferences = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ stdenv.shellPackage @@ -493,6 +482,13 @@ stdenv.mkDerivation (finalAttrs: { installCheckFlags = [ "DEFAULT_TEST_TARGET=prove" "PERL_PATH=${buildPackages.perl}/bin/perl" + + # Without setting debug explicitly, the test suite inherits the value of + # debug from the environment, which -- if separateDebugInfo is true -- will + # be the debug output path. The test suite then prints out extra debug + # info, as if `--debug` were passed on the command line, which causes test + # failures because that info can't be interpreted by the test harness. + "debug=" ]; nativeInstallCheckInputs = lib.optional ( @@ -553,6 +549,18 @@ stdenv.mkDerivation (finalAttrs: { disable_test t7513-interpret-trailers disable_test t2200-add-update + # Fails when run with GIT_TEST_INSTALLED, that is, when we're testing an + # installed package rather than the build output prior to installation. + # This test is fragile when testing an installed package even in Nix's + # otherwise clean build environment, upstream haven't been keen on patching + # individual failures when they crop up, and nobody has yet managed to + # rewrite the test to be less fragile. + # + # See in particular the below messages and discussions around them: + # https://lore.kernel.org/git/xmqqect7fhnp.fsf@gitster.g/ + # https://lore.kernel.org/git/20251201031040.1120091-1-brianmlyles@gmail.com/ + disable_test t1517-outside-repo + # Fails reproducibly on ZFS on Linux with formD normalization disable_test t0021-conversion disable_test t3910-mac-os-precompose From 94ff2f02a40db7469e78f1e07b509a1ed63433d3 Mon Sep 17 00:00:00 2001 From: dramforever Date: Sat, 11 Jul 2026 22:24:21 +0800 Subject: [PATCH 261/284] systemd: Fix path to find_program('clang', ...) replacement Systemd 261 moved the location of this call, which means that this replacement was lost, which broke cross compilation. See https://github.com/systemd/systemd/commit/e6fc73350f9485064302e687b964f70b28b2e4f6 --- pkgs/os-specific/linux/systemd/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index eab1a27055ec..f7fefd8110f7 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -248,7 +248,7 @@ stdenv.mkDerivation (finalAttrs: { substituteInPlace src/basic/path-util.h --replace "@defaultPathNormal@" "${placeholder "out"}/bin/" '' + lib.optionalString withLibBPF '' - substituteInPlace meson.build \ + substituteInPlace src/bpf/meson.build \ --replace "find_program('clang'" "find_program('${stdenv.cc.targetPrefix}clang'" '' + lib.optionalString withUkify '' From 2a0fe99286c94917de66955dd83d6620098a50bc Mon Sep 17 00:00:00 2001 From: dramforever Date: Sat, 11 Jul 2026 20:34:44 +0800 Subject: [PATCH 262/284] systemd: substituteInPlace --replace-fail everywhere This will catch if any of these replacement targets gets moved around again. --- pkgs/os-specific/linux/systemd/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index f7fefd8110f7..475cf78c4981 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -245,18 +245,18 @@ stdenv.mkDerivation (finalAttrs: { ]; postPatch = '' - substituteInPlace src/basic/path-util.h --replace "@defaultPathNormal@" "${placeholder "out"}/bin/" + substituteInPlace src/basic/path-util.h --replace-fail "@defaultPathNormal@" "${placeholder "out"}/bin/" '' + lib.optionalString withLibBPF '' substituteInPlace src/bpf/meson.build \ - --replace "find_program('clang'" "find_program('${stdenv.cc.targetPrefix}clang'" + --replace-fail "find_program('clang'" "find_program('${stdenv.cc.targetPrefix}clang'" '' + lib.optionalString withUkify '' substituteInPlace src/ukify/ukify.py \ - --replace \ + --replace-fail \ "'readelf'" \ "'${targetPackages.stdenv.cc.bintools.targetPrefix}readelf'" \ - --replace \ + --replace-fail \ "/usr/lib/systemd/boot/efi" \ "$out/lib/systemd/boot/efi" '' @@ -580,7 +580,7 @@ stdenv.mkDerivation (finalAttrs: { ]; preConfigure = '' substituteInPlace src/libsystemd/sd-journal/catalog.c \ - --replace /usr/lib/systemd/catalog/ $out/lib/systemd/catalog/ + --replace-fail /usr/lib/systemd/catalog/ $out/lib/systemd/catalog/ ''; # These defines are overridden by CFLAGS and would trigger annoying @@ -628,7 +628,7 @@ stdenv.mkDerivation (finalAttrs: { # Fix reference to /bin/false in the D-Bus services. for i in $out/share/dbus-1/system-services/*.service; do - substituteInPlace $i --replace /bin/false ${coreutils}/bin/false + substituteInPlace $i --replace-fail /bin/false ${coreutils}/bin/false done # For compatibility with dependents that use sbin instead of bin. From bb507abce1fc804bcf882b05f5f82393451c59a8 Mon Sep 17 00:00:00 2001 From: Michael Daniels Date: Sat, 11 Jul 2026 11:55:29 -0400 Subject: [PATCH 263/284] graphviz: build Quartz plugin on Darwin Fixes #540792 --- pkgs/by-name/gr/graphviz/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/gr/graphviz/package.nix b/pkgs/by-name/gr/graphviz/package.nix index f5686e0274d3..ac0a9723672b 100644 --- a/pkgs/by-name/gr/graphviz/package.nix +++ b/pkgs/by-name/gr/graphviz/package.nix @@ -75,6 +75,7 @@ stdenv.mkDerivation (finalAttrs: { "--with-ltdl-lib=${libtool.lib}/lib" "--with-ltdl-include=${libtool}/include" (lib.withFeature withXorg "x") + (lib.withFeature stdenv.hostPlatform.isDarwin "quartz") ]; enableParallelBuilding = true; From 6cbdc11793f4add233597c276c4ed9e3e0db1f21 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 11 Jul 2026 20:45:41 +0000 Subject: [PATCH 264/284] vim: 9.2.0541 -> 9.2.0782 --- pkgs/applications/editors/vim/common.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix index 71848004202f..f336ecbced79 100644 --- a/pkgs/applications/editors/vim/common.nix +++ b/pkgs/applications/editors/vim/common.nix @@ -4,7 +4,7 @@ stdenv, }: rec { - version = "9.2.0541"; + version = "9.2.0782"; outputs = [ "out" @@ -15,7 +15,7 @@ rec { owner = "vim"; repo = "vim"; rev = "v${version}"; - hash = "sha256-M2vdIAM3P2MZdcMvFX/3/fixliTosR06nvPIX7NXFNo="; + hash = "sha256-D4IyDgl1JdmumDzO0uMg2LhoSnFUeqhcMJ6ImC17wzs="; }; enableParallelBuilding = true; From 747f448ad115b8d01a8525ec46bc9babc6ba6fe9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 12 Jul 2026 04:10:28 +0000 Subject: [PATCH 265/284] mdbook: 0.5.3 -> 0.5.4 --- pkgs/by-name/md/mdbook/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/md/mdbook/package.nix b/pkgs/by-name/md/mdbook/package.nix index fa23ac200d96..0633a329ed5a 100644 --- a/pkgs/by-name/md/mdbook/package.nix +++ b/pkgs/by-name/md/mdbook/package.nix @@ -8,7 +8,7 @@ installShellFiles, }: let - version = "0.5.3"; + version = "0.5.4"; in rustPlatform.buildRustPackage rec { inherit version; @@ -18,10 +18,10 @@ rustPlatform.buildRustPackage rec { owner = "rust-lang"; repo = "mdBook"; tag = "v${version}"; - hash = "sha256-RMJQn58hshBGQSpu30NdUOb3Prywn6NfhauSzFZ35xQ="; + hash = "sha256-1bUMFxPpb9H/pRdCOX0u8Tn8RPmJElDs7o9t5JtRFuU="; }; - cargoHash = "sha256-LlImOjTQjMQURQ81Gn73v+DEHXqyyiz39K9T+MrE7S0="; + cargoHash = "sha256-OmlcPZuQ1RbyFrF5tuztucgtCA544UHJxEaXh/mfSHQ="; nativeBuildInputs = [ installShellFiles ]; From 6304b10b4389694fc7acd46462d5d3f11978ee8a Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Fri, 10 Jul 2026 01:06:47 +0300 Subject: [PATCH 266/284] python3Packages.fastapi: remove strictDeps already set by default --- pkgs/development/python-modules/fastapi/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index 60dbe8fbfaf0..960d9b4451c6 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -43,7 +43,6 @@ buildPythonPackage (finalAttrs: { version = "0.139.0"; pyproject = true; __structuredAttrs = true; - strictDeps = true; src = fetchFromGitHub { owner = "tiangolo"; From 243cd8239c58435dd51cda020757fc6177f75c0e Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sun, 12 Jul 2026 14:17:26 +0300 Subject: [PATCH 267/284] python3Packages.fastapi: use httpx in optional dependencies And explicitly add httpx2 to tests inputs. This is a fixup to commit 40d7bc5a60a5fd585a5818977c9f25ac0dbcef98 . --- pkgs/development/python-modules/fastapi/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index 960d9b4451c6..1be0d0d05b02 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -18,6 +18,7 @@ a2wsgi, dirty-equals, flask, + httpx2, inline-snapshot, pwdlib, pyjwt, @@ -27,7 +28,7 @@ # optional-dependencies fastapi-cli, - httpx2, + httpx, jinja2, itsdangerous, python-multipart, @@ -64,7 +65,7 @@ buildPythonPackage (finalAttrs: { optional-dependencies = { all = [ fastapi-cli - httpx2 + httpx jinja2 python-multipart itsdangerous @@ -79,7 +80,7 @@ buildPythonPackage (finalAttrs: { standard = [ fastapi-cli # FIXME package fastar - httpx2 + httpx jinja2 python-multipart email-validator @@ -91,7 +92,7 @@ buildPythonPackage (finalAttrs: { ++ uvicorn.optional-dependencies.standard; standard-no-fastapi-cloud-cli = [ fastapi-cli - httpx2 + httpx jinja2 python-multipart email-validator @@ -109,6 +110,7 @@ buildPythonPackage (finalAttrs: { a2wsgi dirty-equals flask + httpx2 inline-snapshot pwdlib pyjwt From 1ad21ce2a76ba05eb2a786be459385f202da0c65 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 12 Jul 2026 17:29:06 +0100 Subject: [PATCH 268/284] xset: 1.2.5 -> 1.2.6 Changes: https://lists.freedesktop.org/archives/xorg-announce/2026-July/003721.html --- pkgs/by-name/xs/xset/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/xs/xset/package.nix b/pkgs/by-name/xs/xset/package.nix index 0044bb6a4257..afa4d102f615 100644 --- a/pkgs/by-name/xs/xset/package.nix +++ b/pkgs/by-name/xs/xset/package.nix @@ -11,11 +11,11 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "xset"; - version = "1.2.5"; + version = "1.2.6"; src = fetchurl { url = "mirror://xorg/individual/app/xset-${finalAttrs.version}.tar.xz"; - hash = "sha256-n2ktVWNbOGLNY2M7EiKodoDsKDx6jo7W3WmKMUf3Xi8="; + hash = "sha256-Yjg3NJ6oh7wAPwHuLktrjd2cJ3T2MsbXDurRtWMGtpU="; }; strictDeps = true; From 3b4d9199edfa503509060e2529128f198b8f0197 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 12 Jul 2026 09:59:26 -0700 Subject: [PATCH 269/284] python3Packages.trove-classifiers: 2026.5.20.19 -> 2026.6.1.19 Changelog: https://github.com/pypa/trove-classifiers/releases/tag/2026.6.1.19 --- pkgs/development/python-modules/trove-classifiers/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/trove-classifiers/default.nix b/pkgs/development/python-modules/trove-classifiers/default.nix index 898180da3cd0..96094ed0074b 100644 --- a/pkgs/development/python-modules/trove-classifiers/default.nix +++ b/pkgs/development/python-modules/trove-classifiers/default.nix @@ -10,13 +10,13 @@ let self = buildPythonPackage rec { pname = "trove-classifiers"; - version = "2026.5.20.19"; + version = "2026.6.1.19"; pyproject = true; src = fetchPypi { pname = "trove_classifiers"; inherit version; - hash = "sha256-bmEZk5h8qTJpaK1wRScz2t0xRxWZ05iWBFsolwqbuB4="; + hash = "sha256-xRMrS2GoKdEc+9LXLpfyCkXtbtuV5Fxe/eteAINrJ0U="; }; postPatch = '' From 7b1cb1ff899744ec4823c740a616569009e2a959 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 12 Jul 2026 10:02:27 -0700 Subject: [PATCH 270/284] python3Packages.trove-classifiers: use finalAttrs --- .../trove-classifiers/default.nix | 75 +++++++++---------- 1 file changed, 36 insertions(+), 39 deletions(-) diff --git a/pkgs/development/python-modules/trove-classifiers/default.nix b/pkgs/development/python-modules/trove-classifiers/default.nix index 96094ed0074b..083bb90e8fcd 100644 --- a/pkgs/development/python-modules/trove-classifiers/default.nix +++ b/pkgs/development/python-modules/trove-classifiers/default.nix @@ -7,44 +7,41 @@ setuptools, }: -let - self = buildPythonPackage rec { - pname = "trove-classifiers"; - version = "2026.6.1.19"; - pyproject = true; +buildPythonPackage (finalAttrs: { + pname = "trove-classifiers"; + version = "2026.6.1.19"; + pyproject = true; - src = fetchPypi { - pname = "trove_classifiers"; - inherit version; - hash = "sha256-xRMrS2GoKdEc+9LXLpfyCkXtbtuV5Fxe/eteAINrJ0U="; - }; - - postPatch = '' - substituteInPlace tests/test_cli.py \ - --replace-fail "BINDIR = Path(sys.executable).parent" "BINDIR = '$out/bin'" - ''; - - build-system = [ - calver - setuptools - ]; - - doCheck = false; # avoid infinite recursion with hatchling - - nativeCheckInputs = [ pytestCheckHook ]; - - pythonImportsCheck = [ "trove_classifiers" ]; - - passthru.tests.trove-classifiers = self.overridePythonAttrs { doCheck = true; }; - - meta = { - description = "Canonical source for classifiers on PyPI"; - homepage = "https://github.com/pypa/trove-classifiers"; - changelog = "https://github.com/pypa/trove-classifiers/releases/tag/${version}"; - license = lib.licenses.asl20; - mainProgram = "trove-classifiers"; - maintainers = with lib.maintainers; [ dotlambda ]; - }; + src = fetchPypi { + pname = "trove_classifiers"; + inherit (finalAttrs) version; + hash = "sha256-xRMrS2GoKdEc+9LXLpfyCkXtbtuV5Fxe/eteAINrJ0U="; }; -in -self + + postPatch = '' + substituteInPlace tests/test_cli.py \ + --replace-fail "BINDIR = Path(sys.executable).parent" "BINDIR = '$out/bin'" + ''; + + build-system = [ + calver + setuptools + ]; + + doCheck = false; # avoid infinite recursion with hatchling + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "trove_classifiers" ]; + + passthru.tests.trove-classifiers = finalAttrs.finalPackage.overrideAttrs { doInstallCheck = true; }; + + meta = { + description = "Canonical source for classifiers on PyPI"; + homepage = "https://github.com/pypa/trove-classifiers"; + changelog = "https://github.com/pypa/trove-classifiers/releases/tag/${finalAttrs.version}"; + license = lib.licenses.asl20; + mainProgram = "trove-classifiers"; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +}) From 5a147b95c69153d76ae3d4422123ad9717af1039 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 12 Jul 2026 19:30:22 +0100 Subject: [PATCH 271/284] libseccomp: 2.6.0 -> 2.6.1 Changes: https://github.com/seccomp/libseccomp/releases/tag/v2.6.1 --- pkgs/by-name/li/libseccomp/package.nix | 23 ++--------------------- 1 file changed, 2 insertions(+), 21 deletions(-) diff --git a/pkgs/by-name/li/libseccomp/package.nix b/pkgs/by-name/li/libseccomp/package.nix index 222bda60e16a..64677eb94051 100644 --- a/pkgs/by-name/li/libseccomp/package.nix +++ b/pkgs/by-name/li/libseccomp/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchurl, - fetchpatch, getopt, util-linuxMinimal, which, @@ -13,31 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libseccomp"; - version = "2.6.0"; + version = "2.6.1"; src = fetchurl { url = "https://github.com/seccomp/libseccomp/releases/download/v${finalAttrs.version}/libseccomp-${finalAttrs.version}.tar.gz"; - hash = "sha256-g7YIUjLRWIw3ncm5yuR7s3QHzyYubnSZPGG6ctKnhNw="; + hash = "sha256-UB9mxmciXVN5G5fh18+Fq3ZMKX0EiB9g849FHEsO4b4="; }; - patches = [ - # Remove when version > 2.6.0 - # Fixes test failures on big-endian archs - (fetchpatch { - name = "0001-libseccomp-remove-fuzzer-from-test-62-sim-arch_transactions.patch"; - url = "https://github.com/seccomp/libseccomp/commit/2f0f3b0e9121720108431c5d054164016f476230.patch"; - hash = "sha256-AKAQyALJlLgxnS23OEoqfyDswp0kU2vmja5ohgvFojw="; - }) - - # Remove when version > 2.6.0 - # Fixes OOB reads & tests on musl - (fetchpatch { - name = "0002-libseccomp-fix-seccomp_export_bpf_mem-out-of-bounds-read.patch"; - url = "https://github.com/seccomp/libseccomp/commit/dd759e8c4f5685b526638fba9ec4fc24c37c9aec.patch"; - hash = "sha256-TdfQ5T8FrGE6+P24MIi9rKSC3fQu/Jlr4bsFiJd4yVY="; - }) - ]; - outputs = [ "out" "lib" From 59ae93215f296286cc7f08a895d685c5a1e193d9 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 12 Jul 2026 19:37:33 +0100 Subject: [PATCH 272/284] hwdata: 0.408 -> 0.409 Changes: https://github.com/vcrhonek/hwdata/compare/v0.408...v0.409 --- pkgs/by-name/hw/hwdata/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/hw/hwdata/package.nix b/pkgs/by-name/hw/hwdata/package.nix index 0fc7c9022a62..e88507d495f7 100644 --- a/pkgs/by-name/hw/hwdata/package.nix +++ b/pkgs/by-name/hw/hwdata/package.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "hwdata"; - version = "0.408"; + version = "0.409"; src = fetchFromGitHub { owner = "vcrhonek"; repo = "hwdata"; rev = "v${finalAttrs.version}"; - hash = "sha256-fgKOvVGAdB3uBFuKfGPFfF9wQEdLtnlMdQrLNIr3teo="; + hash = "sha256-WJ7oe94rTb+gzuawafpx7YyNTUzZe7ZWE0ZWWQKoyCA="; }; doCheck = false; # this does build machine-specific checks (e.g. enumerates PCI bus) From 9aa9153c4a7ced2ccaf0dd4dc61c2c04fb102fa5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 13 Jul 2026 14:02:27 +0000 Subject: [PATCH 273/284] netcdf: 4.9.3 -> 4.10.1 --- pkgs/by-name/ne/netcdf/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ne/netcdf/package.nix b/pkgs/by-name/ne/netcdf/package.nix index 5722ab150e9c..34e5b3f47459 100644 --- a/pkgs/by-name/ne/netcdf/package.nix +++ b/pkgs/by-name/ne/netcdf/package.nix @@ -20,11 +20,11 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "netcdf" + lib.optionalString mpiSupport "-mpi"; - version = "4.9.3"; + version = "4.10.1"; src = fetchurl { url = "https://downloads.unidata.ucar.edu/netcdf-c/${finalAttrs.version}/netcdf-c-${finalAttrs.version}.tar.gz"; - hash = "sha256-pHQUmETmFEVmZz+s8Jf+olPchDw3vAp9PeBH3Irdpd0="; + hash = "sha256-2ztp/0pe4afXmlw2Zk0hKLdSwmbpZjafz3MR7F+SdWQ="; }; postPatch = '' From 3f606b755e417d9596ad8fee9d1c6f49c38d042b Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Mon, 13 Jul 2026 15:14:34 +0200 Subject: [PATCH 274/284] nodejs_20: drop --- pkgs/by-name/gi/github-runner/package.nix | 10 +-- .../gyp-patches-pre-v22-import-sys.patch | 24 ------ pkgs/development/web/nodejs/gyp-patches.nix | 29 ------- pkgs/development/web/nodejs/v20.nix | 86 ------------------- pkgs/top-level/aliases.nix | 3 + pkgs/top-level/all-packages.nix | 4 - 6 files changed, 4 insertions(+), 152 deletions(-) delete mode 100644 pkgs/development/web/nodejs/gyp-patches-pre-v22-import-sys.patch delete mode 100644 pkgs/development/web/nodejs/gyp-patches.nix delete mode 100644 pkgs/development/web/nodejs/v20.nix diff --git a/pkgs/by-name/gi/github-runner/package.nix b/pkgs/by-name/gi/github-runner/package.nix index d88a6d2583be..5c7427c84f1b 100644 --- a/pkgs/by-name/gi/github-runner/package.nix +++ b/pkgs/by-name/gi/github-runner/package.nix @@ -17,10 +17,8 @@ runtimeShell, # List of Node.js runtimes the package should support nodeRuntimes ? [ - # Node.js 20.x has reached EOL and is marked as insecure in Nixpkgs, thus omitted here "node24" ], - nodejs_20, nodejs_24, }: @@ -28,7 +26,7 @@ assert builtins.all ( x: builtins.elem x [ - "node20" + # Node.js 20.x has reached EOL and was removed from Nixpkgs, thus omitted here "node24" ] ) nodeRuntimes; @@ -250,9 +248,6 @@ buildDotnetModule (finalAttrs: { export GITHUB_ACTIONS_RUNNER_TRACE=1 mkdir -p _layout/externals '' - + lib.optionalString (lib.elem "node20" nodeRuntimes) '' - ln -s ${nodejs_20} _layout/externals/node20 - '' + lib.optionalString (lib.elem "node24" nodeRuntimes) '' ln -s ${nodejs_24} _layout/externals/node24 ''; @@ -294,9 +289,6 @@ buildDotnetModule (finalAttrs: { # link the Alpine Node flavors. mkdir -p $out/lib/externals '' - + lib.optionalString (lib.elem "node20" nodeRuntimes) '' - ln -s ${nodejs_20} $out/lib/externals/node20 - '' + lib.optionalString (lib.elem "node24" nodeRuntimes) '' ln -s ${nodejs_24} $out/lib/externals/node24 '' diff --git a/pkgs/development/web/nodejs/gyp-patches-pre-v22-import-sys.patch b/pkgs/development/web/nodejs/gyp-patches-pre-v22-import-sys.patch deleted file mode 100644 index fa499c6491c7..000000000000 --- a/pkgs/development/web/nodejs/gyp-patches-pre-v22-import-sys.patch +++ /dev/null @@ -1,24 +0,0 @@ -Add missing import statement for gyp-patches.nix. - ---- a/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py -+++ b/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py -@@ -25,6 +25,7 @@ - import os - import re - import subprocess -+import sys - import gyp - import gyp.common - import gyp.xcode_emulation - ---- a/tools/gyp/pylib/gyp/generator/make.py -+++ b/tools/gyp/pylib/gyp/generator/make.py -@@ -25,6 +25,7 @@ - import os - import re - import subprocess -+import sys - import gyp - import gyp.common - import gyp.xcode_emulation - diff --git a/pkgs/development/web/nodejs/gyp-patches.nix b/pkgs/development/web/nodejs/gyp-patches.nix deleted file mode 100644 index f41d1e1d5384..000000000000 --- a/pkgs/development/web/nodejs/gyp-patches.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - lib, - fetchpatch2, - patch_npm ? true, - patch_tools ? true, -}: -let - url = "https://github.com/nodejs/gyp-next/commit/8224deef984add7e7afe846cfb82c9d3fa6da1fb.patch?full_index=1"; -in -lib.optionals patch_tools [ - # Fixes builds with Nix sandbox on Darwin for gyp. - (fetchpatch2 { - inherit url; - hash = "sha256-kvCMpedjrY64BlaC1R0NVjk/vIVivYAGVgWwMEGeP6k="; - stripLen = 1; - extraPrefix = "tools/gyp/"; - }) -] -++ lib.optionals patch_npm [ - (fetchpatch2 { - inherit url; - hash = "sha256-cXTwmCRHrNhuY1+3cD/EvU0CJ+1Nk4TRh6c3twvfaW8="; - stripLen = 1; - extraPrefix = "deps/npm/node_modules/node-gyp/gyp/"; - }) -] -++ [ - ./gyp-patches-set-fallback-value-for-CLT-darwin.patch -] diff --git a/pkgs/development/web/nodejs/v20.nix b/pkgs/development/web/nodejs/v20.nix deleted file mode 100644 index dbde28aa29ca..000000000000 --- a/pkgs/development/web/nodejs/v20.nix +++ /dev/null @@ -1,86 +0,0 @@ -{ - lib, - stdenv, - callPackage, - fetchpatch2, - openssl, - python3, -}: - -let - buildNodejs = callPackage ./nodejs.nix { - inherit openssl; - python = python3; - }; - - gypPatches = callPackage ./gyp-patches.nix { } ++ [ - # Fixes builds with Nix sandbox on Darwin for gyp. - # See https://github.com/NixOS/nixpkgs/issues/261820 - # and https://github.com/nodejs/gyp-next/pull/216 - (fetchpatch2 { - url = "https://github.com/nodejs/gyp-next/commit/706d04aba5bd18f311dc56f84720e99f64c73466.patch?full_index=1"; - hash = "sha256-iV9qvj0meZkgRzFNur2v1jtLZahbqvSJ237NoM8pPZc="; - stripLen = 1; - extraPrefix = "tools/gyp/"; - }) - (fetchpatch2 { - url = "https://github.com/nodejs/gyp-next/commit/706d04aba5bd18f311dc56f84720e99f64c73466.patch?full_index=1"; - hash = "sha256-1iyeeAprmWpmLafvOOXW45iZ4jWFSloWJxQ0reAKBOo="; - stripLen = 1; - extraPrefix = "deps/npm/node_modules/node-gyp/gyp/"; - }) - - ./gyp-patches-pre-v22-import-sys.patch - ]; -in -buildNodejs { - version = "20.20.2"; - sha256 = "7aeeacdb858299e09a3e0510d4bb8b266923894a9e3ac0058ba89d4ecf4a4cca"; - patches = [ - ./configure-emulator.patch - ./configure-armv6-vfpv2.patch - ./node-npm-build-npm-package-logic.patch - ./use-correct-env-in-tests.patch - ./use-nix-codesign.patch - - # TODO: remove when included in a release - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/8caa1dcee63b2c6fd7a9edf9b9a6222b38a2cf62.patch?full_index=1"; - hash = "sha256-DtN0bpYfo5twHz2GrLLgq4Bu2gFYTkNPMRKhrgeYRyA="; - includes = [ "test/parallel/test-setproctitle.js" ]; - }) - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/499a5c345165f0d4a94b98d08f1ace7268781564.patch?full_index=1"; - hash = "sha256-wF4+CytC1OB5egJGOfLm1USsYY12f9kADymVrxotezE="; - }) - ] - ++ lib.optionals (!stdenv.hostPlatform.isStatic) [ - # Fix builds with shared llhttp - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/ff3a028f8bf88da70dc79e1d7b7947a8d5a8548a.patch?full_index=1"; - hash = "sha256-LJcO3RXVPnpbeuD87fiJ260m3BQXNk3+vvZkBMFUz5w="; - }) - # update tests for nghttp2 1.65 - ./deprecate-http2-priority-signaling.patch - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/a63126409ad4334dd5d838c39806f38c020748b9.diff?full_index=1"; - hash = "sha256-lfq8PMNvrfJjlp0oE3rJkIsihln/Gcs1T/qgI3wW2kQ="; - includes = [ "test/*" ]; - }) - # Patch for nghttp2 1.69 support - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/ecbc22dc3709290dcaadf634a28d8307a75952ee.diff?full_index=1"; - hash = "sha256-LwniqgKlG1IiqSzdP7UgBw3/9cn1jyz/jtx45yb6RWM="; - includes = [ - "test/parallel/test-http2-misbehaving-flow-control-paused.js" - "test/parallel/test-http2-misbehaving-flow-control.js" - ]; - }) - (fetchpatch2 { - url = "https://github.com/nodejs/node/commit/4a32c00fb8dbe55c3bcf9ef43343968c9fe449e6.diff?full_index=1"; - hash = "sha256-pex8ruwa4b/vWvfGA+nyN3JJP8NOturmwAQe4Rkd6nU="; - excludes = [ "tools/nix/*" ]; - }) - ] - ++ gypPatches; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index a5bb5b418569..13258bc3a3a2 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -577,6 +577,7 @@ mapAliases { copilot-language-server-fhs = warnAlias "The package set `copilot-language-server-fhs` has been renamed to `copilot-language-server`." copilot-language-server; # Added 2025-09-07 copper = throw "'copper' has been removed, as it was broken since 22.11"; # Added 2025-08-22 cordless = throw "'cordless' has been removed due to being archived upstream. Consider using 'discordo' instead."; # Added 2025-06-07 + corepack_20 = nodejs_20; corepack_latest = throw "'corepack_latest' has been removed, use 'corepack.override { nodejs-slim = pkgs.nodejs-slim_latest; }' instead"; # Added 2025-10-25 coreth = throw "'coreth' has been moved to 'avalanchego' by upstream"; # Added 2026-01-15 cosmic-applibrary = warnAlias "'cosmic-applibrary' has been renamed to 'cosmic-app-library'" cosmic-app-library; # Added 2026-07-01 @@ -1675,7 +1676,9 @@ mapAliases { nm-tray = throw "'nm-tray' has been removed, as it only works with Plasma 5"; # Added 2025-08-30 nmapsi4 = throw "'nmapsi4' has been removed as it depended on qt5 webengine, which is EOL"; # Added 2026-04-25 node2nix = throw "node2nix has been removed because it was only used to maintain the now-removed nodePackages set. Use the newer builders in nixpkgs instead, such as buildNpmPackage"; # Added 2026-03-03 + nodejs-slim_20 = nodejs_20; nodejs-slim_25 = nodejs_25; + nodejs_20 = throw "Node.js 20 support was removed given upstream End-of-Life on 2026-04-30"; # Added 2026-07-13 nodejs_25 = throw "Node.js 25 support was removed given upstream End-of-Life on 2026-06-01"; # Added 2026-04-26 nodePackages = throw "nodePackages has been removed. Many packages are now available at the top level (e.g. `pkgs.package-name`). Check on https://search.nixos.org to see if the package is still available."; # Added 2026-03-03 nodePackages_latest = throw "nodePackages has been removed. Many packages are now available at the top level (e.g. `pkgs.package-name`). Check on https://search.nixos.org to see if the package is still available."; # Added 2026-03-03 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 73ab09a75de3..5c4837cb079b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2414,10 +2414,6 @@ with pkgs; nodejs = nodejs_24; nodejs-slim = nodejs-slim_24; - nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { }; - nodejs_20 = callPackage ../development/web/nodejs/symlink.nix { nodejs-slim = nodejs-slim_20; }; - corepack_20 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs-slim_20; }; - nodejs-slim_22 = callPackage ../development/web/nodejs/v22.nix { }; nodejs_22 = callPackage ../development/web/nodejs/symlink.nix { nodejs-slim = nodejs-slim_22; }; corepack_22 = callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs-slim_22; }; From 0473ed3fb0cf97cebeab79dbedb0ae188c16ceff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= Date: Mon, 13 Jul 2026 17:17:50 +0000 Subject: [PATCH 275/284] opencv: Add JPEG-XL support --- pkgs/development/libraries/opencv/4.x.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix index 28f66d07bef3..a7412473707e 100644 --- a/pkgs/development/libraries/opencv/4.x.nix +++ b/pkgs/development/libraries/opencv/4.x.nix @@ -28,6 +28,8 @@ libtiff, enableWebP ? true, libwebp, + enableJpegXL ? true, + libjxl, enableEXR ? !stdenv.hostPlatform.isDarwin, openexr, enableJPEG2000 ? true, @@ -382,6 +384,9 @@ effectiveStdenv.mkDerivation { ++ optionals enableWebP [ libwebp ] + ++ optionals enableJpegXL [ + libjxl + ] ++ optionals enableEXR [ openexr ] @@ -504,6 +509,7 @@ effectiveStdenv.mkDerivation { (cmakeBool "WITH_IPP" enableIpp) (cmakeBool "WITH_TIFF" enableTIFF) (cmakeBool "WITH_WEBP" enableWebP) + (cmakeBool "WITH_JPEGXL" enableJpegXL) (cmakeBool "WITH_JPEG" enableJPEG) (cmakeBool "WITH_PNG" enablePNG) (cmakeBool "WITH_OPENEXR" enableEXR) From a0f770b1e044b2b4d28259a5dac0817687dbb8ed Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:42 +0200 Subject: [PATCH 276/284] grpc: 1.81.0 -> 1.82.1 --- pkgs/by-name/gr/grpc/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gr/grpc/package.nix b/pkgs/by-name/gr/grpc/package.nix index 84e80bfc5b7d..7688baf9284e 100644 --- a/pkgs/by-name/gr/grpc/package.nix +++ b/pkgs/by-name/gr/grpc/package.nix @@ -25,7 +25,7 @@ # nixpkgs-update: no auto update stdenv.mkDerivation (finalAttrs: { pname = "grpc"; - version = "1.81.0"; # N.B: if you change this, please update: + version = "1.82.1"; # N.B: if you change this, please update: # pythonPackages.grpcio # pythonPackages.grpcio-channelz # pythonPackages.grpcio-health-checking @@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "grpc"; repo = "grpc"; tag = "v${finalAttrs.version}"; - hash = "sha256-o1wfHrgD2VE6HcPPEWQPQZXrMh+8+GNoUjbCQoRlIWg="; + hash = "sha256-w4tl1y1GITlfeHTsSAZm45d8HQVzqSBVEQXoEqO0h5g="; fetchSubmodules = true; }; From a9b7ff9f68b049b334c709bb96116a0bd8ba5eda Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:45 +0200 Subject: [PATCH 277/284] python3Packages.grpcio: 1.81.0 -> 1.82.1 --- pkgs/development/python-modules/grpcio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio/default.nix b/pkgs/development/python-modules/grpcio/default.nix index 7b786ec380ba..9f22f9b94416 100644 --- a/pkgs/development/python-modules/grpcio/default.nix +++ b/pkgs/development/python-modules/grpcio/default.nix @@ -18,12 +18,12 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio"; - version = "1.81.0"; + version = "1.82.1"; pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-pazX79Ox/ptOsLyqoVB+7WigrQZ4tlTD97Rk35up3KU="; + hash = "sha256-cHskq9kPyx5FvMCAV32h2/mXHRB0kFiblTmvjh53tLU="; }; postPatch = '' From a27367ce58bf9760987ae84362317c5b7bef224a Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:47 +0200 Subject: [PATCH 278/284] python3Packages.grpcio-channelz: 1.81.0 -> 1.82.1 --- pkgs/development/python-modules/grpcio-channelz/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-channelz/default.nix b/pkgs/development/python-modules/grpcio-channelz/default.nix index 634811c727e9..ae7ba56b9713 100644 --- a/pkgs/development/python-modules/grpcio-channelz/default.nix +++ b/pkgs/development/python-modules/grpcio-channelz/default.nix @@ -12,13 +12,13 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio-channelz"; - version = "1.81.0"; + version = "1.82.1"; pyproject = true; src = fetchPypi { pname = "grpcio_channelz"; inherit version; - hash = "sha256-V6Gr5QURNJv9iafEJtHbaRmOLJzUcbr2wNVgbDTbmt8="; + hash = "sha256-/Q6lQDfasOu4BAaiqH6AmyTUEKLp209mL6IqKZ8AUOs="; }; build-system = [ setuptools ]; From f97c842f381d6992d46006e98c5785a607a68f95 Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:50 +0200 Subject: [PATCH 279/284] python3Packages.grpcio-health-checking: 1.81.0 -> 1.82.1 --- .../python-modules/grpcio-health-checking/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-health-checking/default.nix b/pkgs/development/python-modules/grpcio-health-checking/default.nix index 3d65fef2e464..0edd1b88b74f 100644 --- a/pkgs/development/python-modules/grpcio-health-checking/default.nix +++ b/pkgs/development/python-modules/grpcio-health-checking/default.nix @@ -11,13 +11,13 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio-health-checking"; - version = "1.81.0"; + version = "1.82.1"; format = "setuptools"; src = fetchPypi { pname = "grpcio_health_checking"; inherit version; - hash = "sha256-CfMWdPGs3PIUvE5kDru77xZbB3of1kg0eVGW1Sv9zjk="; + hash = "sha256-hiVeBOHTnxyXpmMtQbYySTUUCN5cWOhe7eh6/X2YKN0="; }; propagatedBuildInputs = [ From ef130ba3c372430fa67bb310a7a3b3c085be5c1c Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:53 +0200 Subject: [PATCH 280/284] python3Packages.grpcio-reflection: 1.81.0 -> 1.82.1 --- pkgs/development/python-modules/grpcio-reflection/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-reflection/default.nix b/pkgs/development/python-modules/grpcio-reflection/default.nix index 87e145bb3513..d377c6c88a4c 100644 --- a/pkgs/development/python-modules/grpcio-reflection/default.nix +++ b/pkgs/development/python-modules/grpcio-reflection/default.nix @@ -12,13 +12,13 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio-reflection"; - version = "1.81.0"; + version = "1.82.1"; pyproject = true; src = fetchPypi { pname = "grpcio_reflection"; inherit version; - hash = "sha256-UZHbeqbKsbaYGwh5+kT9zdQ7pkTwMBxAuXb4E+tO/wY="; + hash = "sha256-LslD6tPhe0P44HR6XLQXs6ZDV/49m0p73Dmkwz6pgA0="; }; build-system = [ setuptools ]; From d3291efa1c8d40a17a185b95a7f207be42062c83 Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:56 +0200 Subject: [PATCH 281/284] python3Packages.grpcio-status: 1.81.0 -> 1.82.1 --- pkgs/development/python-modules/grpcio-status/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-status/default.nix b/pkgs/development/python-modules/grpcio-status/default.nix index 03c03473d5ad..479a1e105efb 100644 --- a/pkgs/development/python-modules/grpcio-status/default.nix +++ b/pkgs/development/python-modules/grpcio-status/default.nix @@ -12,13 +12,13 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio-status"; - version = "1.81.0"; + version = "1.82.1"; format = "setuptools"; src = fetchPypi { pname = "grpcio_status"; inherit version; - hash = "sha256-tv6XiM/dHw9jwFKKHgv9tB6P8Fg+kg0tjoiIWYwBu2k="; + hash = "sha256-2d6Kw0djzUaBMP3SkjKUr3w9KNCUJvbEUiHSfCWTETA="; }; postPatch = '' From 60f84450ab470a20d49eb609bca6a577e68a8a66 Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:41:59 +0200 Subject: [PATCH 282/284] python3Packages.grpcio-testing: 1.81.0 -> 1.82.1 --- pkgs/development/python-modules/grpcio-testing/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-testing/default.nix b/pkgs/development/python-modules/grpcio-testing/default.nix index b3f68350d32f..0cbcc426e527 100644 --- a/pkgs/development/python-modules/grpcio-testing/default.nix +++ b/pkgs/development/python-modules/grpcio-testing/default.nix @@ -12,13 +12,13 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio-testing"; - version = "1.81.0"; + version = "1.82.1"; pyproject = true; src = fetchPypi { pname = "grpcio_testing"; inherit version; - hash = "sha256-MjcL3/wM0Jq63pKP2ID5Gb8HCv5dASot4UEkJ7LcGSE="; + hash = "sha256-2fxmLSRf10IpLQOJkCQtDdDmkvAKAvIQvRI0FFzxM0E="; }; postPatch = '' From ce64f07dd25c32af8207035126819f3720607b10 Mon Sep 17 00:00:00 2001 From: scraptux Date: Mon, 13 Jul 2026 19:42:03 +0200 Subject: [PATCH 283/284] python3Packages.grpcio-tools: 1.81.0 -> 1.82.1 --- pkgs/development/python-modules/grpcio-tools/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/grpcio-tools/default.nix b/pkgs/development/python-modules/grpcio-tools/default.nix index bf74b27fcea2..9d4d7f1bc435 100644 --- a/pkgs/development/python-modules/grpcio-tools/default.nix +++ b/pkgs/development/python-modules/grpcio-tools/default.nix @@ -13,13 +13,13 @@ # nixpkgs-update: no auto update buildPythonPackage rec { pname = "grpcio-tools"; - version = "1.81.0"; + version = "1.82.1"; pyproject = true; src = fetchPypi { pname = "grpcio_tools"; inherit version; - hash = "sha256-BzPXc+yoy0YfTyobecZMEj25ZhvkGwgYS4FJeyuZHMs="; + hash = "sha256-K9MXbM2/fNH0Y+t1t7g1RMfWQp9cqKD394S3YJfayJE="; }; postPatch = '' From 0c096610cd8af4c047e0fc2e330163d35ed5f72a Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sun, 12 Jul 2026 17:06:44 +0200 Subject: [PATCH 284/284] python3Packages.numexpr: relax thread limit hook and install pytest-run-parallel for pytest thread-unsafe mark. --- pkgs/development/python-modules/numexpr/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/numexpr/default.nix b/pkgs/development/python-modules/numexpr/default.nix index 426b53e7814d..39c0a4e673af 100644 --- a/pkgs/development/python-modules/numexpr/default.nix +++ b/pkgs/development/python-modules/numexpr/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchPypi, numpy, + pytest-run-parallel, pytestCheckHook, setuptools, # sets NUMEXPR_NUM_THREADS and OMP_NUM_THREADS for packages @@ -34,12 +35,18 @@ buildPythonPackage rec { ln -s ${numpy.cfg} site.cfg ''; - nativeCheckInputs = [ pytestCheckHook ]; + nativeCheckInputs = [ + pytest-run-parallel + pytestCheckHook + ]; propagatedNativeBuildInputs = [ checkPhaseThreadLimitHook ]; + # tests check for OMP_NUM_THREADS application and complete quick enough + env.dontLimitCheckPhaseThreads = 1; + preCheck = '' pushd $out '';