From 1e5eab6c27b347c352820586fe64e2c0d15852ba Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Mon, 25 May 2026 17:54:43 +0200 Subject: [PATCH 01/69] gst_all_1: move env variable into env for structuredAttrs --- pkgs/development/libraries/gstreamer/icamerasrc/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix index 35801332a7da..14a7a877828b 100644 --- a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix +++ b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix @@ -46,7 +46,7 @@ stdenv.mkDerivation { apple-sdk_gstreamer ]; - NIX_CFLAGS_COMPILE = [ + env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error" # gstcameradeinterlace.cpp:55:10: fatal error: gst/video/video.h: No such file or directory "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0" From 9aab35911503723284c25324107d1f72a31939bf Mon Sep 17 00:00:00 2001 From: Harinn Date: Sat, 6 Jun 2026 02:48:43 +0700 Subject: [PATCH 02/69] python3Packages.blinkstick: migrate to pyproject --- pkgs/development/python-modules/blinkstick/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/blinkstick/default.nix b/pkgs/development/python-modules/blinkstick/default.nix index e746ebdfda77..44f12a6d2fc1 100644 --- a/pkgs/development/python-modules/blinkstick/default.nix +++ b/pkgs/development/python-modules/blinkstick/default.nix @@ -2,13 +2,14 @@ lib, buildPythonPackage, fetchFromGitHub, + setuptools, pyusb, }: buildPythonPackage { pname = "blinkstick"; version = "unstable-2023-05-04"; - format = "setuptools"; + pyproject = true; src = fetchFromGitHub { owner = "arvydas"; @@ -17,7 +18,9 @@ buildPythonPackage { hash = "sha256-9bc7TD/Ilc952ywLauFd0+3Lh64lQlYuDC1KG9eWDgs="; }; - propagatedBuildInputs = [ pyusb ]; + build-system = [ setuptools ]; + + dependencies = [ pyusb ]; # Project has no tests doCheck = false; From 95dfba485c64c8a6e78b3b6adff5c8b3638c4d7b Mon Sep 17 00:00:00 2001 From: Harinn Date: Sat, 6 Jun 2026 02:50:30 +0700 Subject: [PATCH 03/69] python3Packages.blinkstick: modernize --- pkgs/development/python-modules/blinkstick/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/blinkstick/default.nix b/pkgs/development/python-modules/blinkstick/default.nix index 44f12a6d2fc1..96663e722797 100644 --- a/pkgs/development/python-modules/blinkstick/default.nix +++ b/pkgs/development/python-modules/blinkstick/default.nix @@ -11,6 +11,8 @@ buildPythonPackage { version = "unstable-2023-05-04"; pyproject = true; + __structuredAttrs = true; + src = fetchFromGitHub { owner = "arvydas"; repo = "blinkstick-python"; From 11e2354defed12f07f7d08a76e6ae28b3412ebad Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Sun, 7 Jun 2026 12:06:53 +0200 Subject: [PATCH 04/69] maintainers: drop rardiol Signed-off-by: Marcin Serwin --- maintainers/maintainer-list.nix | 6 ------ pkgs/by-name/hy/hyperrogue/package.nix | 2 +- pkgs/by-name/li/liberal-crime-squad/package.nix | 2 +- pkgs/by-name/li/libtree/package.nix | 1 - pkgs/by-name/sd/SDL2_Pango/package.nix | 2 +- pkgs/games/cataclysm-dda/git.nix | 2 +- 6 files changed, 4 insertions(+), 11 deletions(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index f86bb07d690f..0834e5b2fc0e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -22976,12 +22976,6 @@ githubId = 1246959; name = "Raquel GarcĂ­a"; }; - rardiol = { - email = "ricardo.ardissone@gmail.com"; - github = "rardiol"; - githubId = 11351304; - name = "Ricardo Ardissone"; - }; raskin = { email = "7c6f434c@mail.ru"; github = "7c6f434c"; diff --git a/pkgs/by-name/hy/hyperrogue/package.nix b/pkgs/by-name/hy/hyperrogue/package.nix index cd0492506027..22358bf1783c 100644 --- a/pkgs/by-name/hy/hyperrogue/package.nix +++ b/pkgs/by-name/hy/hyperrogue/package.nix @@ -113,7 +113,7 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://www.roguetemple.com/z/hyper/"; changelog = "https://github.com/zenorogue/hyperrogue/releases/tag/v${finalAttrs.version}"; mainProgram = "hyperrogue"; - maintainers = with lib.maintainers; [ rardiol ]; + maintainers = [ ]; license = lib.licenses.gpl2Plus; platforms = lib.platforms.all; }; diff --git a/pkgs/by-name/li/liberal-crime-squad/package.nix b/pkgs/by-name/li/liberal-crime-squad/package.nix index a3812708c1b3..f8a2ca4420a2 100644 --- a/pkgs/by-name/li/liberal-crime-squad/package.nix +++ b/pkgs/by-name/li/liberal-crime-squad/package.nix @@ -36,7 +36,7 @@ stdenv.mkDerivation { Welcome to Liberal Crime Squad! The Conservatives have taken the Executive, Legislative, and Judicial branches of government. Over time, the Liberal laws of this nation will erode and turn the country into a BACKWOODS YET CORPORATE NIGHTMARE. To prevent this from happening, the Liberal Crime Squad was established. The mood of the country is shifting, and we need to turn things around. Go out on the streets and indoctrinate Conservative automatons. That is, let them see their True Liberal Nature. Then arm them and send them forth to Stop Evil. ''; homepage = "https://github.com/Kamal-Sadek/Liberal-Crime-Squad"; - maintainers = [ lib.maintainers.rardiol ]; + maintainers = [ ]; mainProgram = "crimesquad"; license = lib.licenses.gpl2Plus; platforms = lib.platforms.all; diff --git a/pkgs/by-name/li/libtree/package.nix b/pkgs/by-name/li/libtree/package.nix index 6ad5681d5ddf..2ad002f43cd2 100644 --- a/pkgs/by-name/li/libtree/package.nix +++ b/pkgs/by-name/li/libtree/package.nix @@ -53,7 +53,6 @@ stdenv.mkDerivation (finalAttrs: { platforms = lib.platforms.linux; maintainers = with lib.maintainers; [ prusnak - rardiol ]; }; }) diff --git a/pkgs/by-name/sd/SDL2_Pango/package.nix b/pkgs/by-name/sd/SDL2_Pango/package.nix index f04bf88ecb9b..f3ab9dca5fc9 100644 --- a/pkgs/by-name/sd/SDL2_Pango/package.nix +++ b/pkgs/by-name/sd/SDL2_Pango/package.nix @@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/markuskimius/SDL2_Pango"; description = "Library for graphically rendering internationalized and tagged text in SDL2 using TrueType fonts"; license = lib.licenses.lgpl21Plus; - maintainers = with lib.maintainers; [ rardiol ]; + maintainers = [ ]; teams = [ lib.teams.sdl ]; inherit (SDL2.meta) platforms; }; diff --git a/pkgs/games/cataclysm-dda/git.nix b/pkgs/games/cataclysm-dda/git.nix index 0bab2db0ba3b..a8b3e562573a 100644 --- a/pkgs/games/cataclysm-dda/git.nix +++ b/pkgs/games/cataclysm-dda/git.nix @@ -37,7 +37,7 @@ let ]; meta = common.meta // { - maintainers = with lib.maintainers; common.meta.maintainers ++ [ rardiol ]; + maintainers = common.meta.maintainers ++ [ ]; }; }); in From 638c76da033135d3ea7ee96ecaf2378a7c86ac51 Mon Sep 17 00:00:00 2001 From: Bastian Asmussen Date: Thu, 11 Jun 2026 09:03:05 +0200 Subject: [PATCH 05/69] maintainers: update BastianAsmussen's keys --- maintainers/maintainer-list.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index c7ea2f7c7263..2a0d8306ba5d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3133,7 +3133,10 @@ email = "bastian@asmussen.tech"; github = "BastianAsmussen"; githubId = 76102128; - keys = [ { fingerprint = "3B11 7469 0893 85E7 16C2 7CD9 0FE5 A355 DBC9 2568"; } ]; + keys = [ + { fingerprint = "3B11 7469 0893 85E7 16C2 7CD9 0FE5 A355 DBC9 2568"; } + { fingerprint = "220D 68EC DF94 20EE 1E6C B215 D92D 668B 77A2 9897"; } + ]; }; basvandijk = { email = "v.dijk.bas@gmail.com"; From d1d4934041426794033573b371786da946d89322 Mon Sep 17 00:00:00 2001 From: Acid Bong Date: Thu, 11 Jun 2026 20:33:50 +0300 Subject: [PATCH 06/69] ci/treefmt: use pkgs.treefmt.withConfig --- ci/default.nix | 11 +- ci/pinned.json | 13 --- ci/treefmt.nix | 281 +++++++++++++++++++++++++++++-------------------- shell.nix | 11 +- 4 files changed, 173 insertions(+), 143 deletions(-) diff --git a/ci/default.nix b/ci/default.nix index c91c82867e8e..6ade8164d503 100644 --- a/ci/default.nix +++ b/ci/default.nix @@ -26,11 +26,7 @@ let fmt = let - treefmtNixSrc = fetchTarball { - inherit (pinned.treefmt-nix) url; - sha256 = pinned.treefmt-nix.hash; - }; - treefmtEval = (import treefmtNixSrc).evalModule pkgs ./treefmt.nix; + treefmt = pkgs.treefmt.withConfig ./treefmt.nix; fs = pkgs.lib.fileset; nixFilesSrc = fs.toSource { root = ../.; @@ -38,9 +34,8 @@ let }; in { - shell = treefmtEval.config.build.devShell; - pkg = treefmtEval.config.build.wrapper; - check = treefmtEval.config.build.check nixFilesSrc; + pkg = treefmt; + check = treefmt.check nixFilesSrc; }; in diff --git a/ci/pinned.json b/ci/pinned.json index 0e8f2b8ff61c..fc034a85bccf 100644 --- a/ci/pinned.json +++ b/ci/pinned.json @@ -12,19 +12,6 @@ "revision": "8c91a71d13451abc40eb9dae8910f972f979852f", "url": "https://github.com/NixOS/nixpkgs/archive/8c91a71d13451abc40eb9dae8910f972f979852f.tar.gz", "hash": "sha256-fnzKKPvS+oieI/pTzotA5tkoM47EB1NpaBcgk4R97hE=" - }, - "treefmt-nix": { - "type": "Git", - "repository": { - "type": "GitHub", - "owner": "numtide", - "repo": "treefmt-nix" - }, - "branch": "main", - "submodules": false, - "revision": "db947814a175b7ca6ded66e21383d938df01c227", - "url": "https://github.com/numtide/treefmt-nix/archive/db947814a175b7ca6ded66e21383d938df01c227.tar.gz", - "hash": "sha256-eynAfOmbmxJnkp7YewvCEbShNnnYJ9gLLqkzsYtBPeM=" } }, "version": 8 diff --git a/ci/treefmt.nix b/ci/treefmt.nix index 9575e99d8680..84da02930f0c 100644 --- a/ci/treefmt.nix +++ b/ci/treefmt.nix @@ -1,122 +1,171 @@ -{ pkgs, ... }: { - # Important: The auto-rebase script uses `git filter-branch --tree-filter`, - # which creates trees within the Git repository under `.git-rewrite/t`, - # notably without having a `.git` themselves. - # So if this projectRootFile were the default `.git/config`, - # having the auto-rebase script use treefmt on such a tree would make it - # format all files in the _parent_ Git tree as well. - projectRootFile = ".git-blame-ignore-revs"; - - # Be a bit more verbose by default, so we can see progress happening - settings.verbose = 1; - - # By default it's info, which is too noisy since we have many unmatched files - settings.on-unmatched = "debug"; - - programs.actionlint.enable = true; - - programs.biome = { - enable = true; - # Disable settings validation because its inputs are liable to hash mismatch - validate.enable = false; - settings.formatter = { - useEditorconfig = true; - }; - settings.javascript.formatter = { - quoteStyle = "single"; - semicolons = "asNeeded"; - }; - settings.json.formatter.enabled = false; - }; - settings.formatter.biome.excludes = [ - "*.min.js" - "pkgs/*" - ]; - - programs.keep-sorted.enable = true; - - # This uses nixfmt underneath, the default formatter for Nix code. - # See https://github.com/NixOS/nixfmt - programs.nixfmt = { - enable = true; - package = pkgs.nixfmt; - }; - - programs.yamlfmt = { - enable = true; - settings.formatter = { - retain_line_breaks = true; - }; - }; - settings.formatter.yamlfmt.excludes = [ - # Aligns comments with whitespace - "pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml" - # TODO: Fix formatting for auto-generated file - "pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml" - ]; - - programs.nixf-diagnose = { - enable = true; - ignore = [ - # Rule names can currently be looked up here: - # https://github.com/nix-community/nixd/blob/main/libnixf/src/Basic/diagnostic.py - # TODO: Remove the following and fix things. - "sema-unused-def-lambda-noarg-formal" - "sema-unused-def-lambda-witharg-arg" - "sema-unused-def-lambda-witharg-formal" - "sema-unused-def-let" - # Keep this rule, because we have `lib.or`. - "or-identifier" - # TODO: remove after outstanding prelude diagnostics issues are fixed: - # https://github.com/nix-community/nixd/issues/761 - # https://github.com/nix-community/nixd/issues/762 - "sema-primop-removed-prefix" - "sema-primop-overridden" - "sema-constant-overridden" - "sema-primop-unknown" - ]; - }; - settings.formatter.nixf-diagnose = { - # Ensure nixfmt cleans up after nixf-diagnose. - priority = -1; +{ + lib, + pkgs, + ... +}: +{ + settings = { + # numtide/treefmt-nix defaults excludes = [ - # Auto-generated; violates sema-extra-with - # Can only sensibly be removed when --auto-fix supports multiple fixes at once: - # https://github.com/inclyc/nixf-diagnose/issues/13 - "pkgs/servers/home-assistant/component-packages.nix" - # https://github.com/nix-community/nixd/issues/708 - "nixos/maintainers/scripts/azure-new/examples/basic/system.nix" + "*.lock" + "*.patch" + "*.diff" + "package-lock.json" + "go.mod" + "go.sum" + ".gitattributes" + ".gitignore" + ".gitmodules" + "COPYING" + "LICENSE" ]; - }; - settings.formatter.editorconfig-checker = { - command = "${pkgs.lib.getExe pkgs.editorconfig-checker}"; - options = [ - "-disable-indent-size" - # TODO: Remove this once this upstream issue is fixed: - # https://github.com/editorconfig-checker/editorconfig-checker/issues/505 - "-disable-charset" - ]; - includes = [ "*" ]; - priority = 1; - }; + # Be a bit more verbose by default, so we can see progress happening + verbose = 1; - # TODO: Upstream this into treefmt-nix eventually: - # https://github.com/numtide/treefmt-nix/issues/387 - settings.formatter.markdown-code-runner = { - command = pkgs.lib.getExe pkgs.markdown-code-runner; - options = - let - config = pkgs.writers.writeTOML "markdown-code-runner-config" { - presets.nixfmt = { - language = "nix"; - command = [ (pkgs.lib.getExe pkgs.nixfmt) ]; - }; - }; - in - [ "--config=${config}" ]; - includes = [ "*.md" ]; - }; + # By default it's info, which is too noisy since we have many unmatched files + on-unmatched = "debug"; - programs.zizmor.enable = true; + formatter = { + + actionlint = { + command = lib.getExe pkgs.actionlint; + includes = [ + ".github/workflows/*.yml" + ".github/workflows/*.yaml" + ]; + }; + + biome = { + command = lib.getExe pkgs.biome; + excludes = [ + "*.min.js" + "pkgs/*" + ]; + includes = [ + "*.js" + "*.ts" + "*.mjs" + "*.mts" + "*.cjs" + "*.cts" + "*.jsx" + "*.tsx" + "*.d.ts" + "*.d.cts" + "*.d.mts" + "*.css" + ]; + options = [ + "check" + "--write" + "--no-errors-on-unmatched" + "--use-editorconfig=true" + "--javascript-formatter-quote-style=single" + "--semicolons=as-needed" + ]; + }; + + keep-sorted = { + command = lib.getExe pkgs.keep-sorted; + includes = [ "*" ]; + }; + + # This uses nixfmt underneath, the default formatter for Nix code. + # See https://github.com/NixOS/nixfmt + nixfmt = { + command = lib.getExe pkgs.nixfmt; + includes = [ "*.nix" ]; + }; + + yamlfmt = { + command = lib.getExe pkgs.yamlfmt; + excludes = [ + # Aligns comments with whitespace + "pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml" + # TODO: Fix formatting for auto-generated file + "pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml" + ]; + includes = [ + "*.yaml" + "*.yml" + ]; + options = [ + "-formatter" + "retain_line_breaks=true" + ]; + }; + + nixf-diagnose = { + command = lib.getExe pkgs.nixf-diagnose; + excludes = [ + # Auto-generated; violates sema-extra-with + # Can only sensibly be removed when --auto-fix supports multiple fixes at once: + # https://github.com/inclyc/nixf-diagnose/issues/13 + "pkgs/servers/home-assistant/component-packages.nix" + # https://github.com/nix-community/nixd/issues/708 + "nixos/maintainers/scripts/azure-new/examples/basic/system.nix" + ]; + includes = [ "*.nix" ]; + options = [ + "--auto-fix" + # Rule names can currently be looked up here: + # https://github.com/nix-community/nixd/blob/main/libnixf/src/Basic/diagnostic.py + # TODO: Remove the following and fix things. + "--ignore=sema-unused-def-lambda-noarg-formal" + "--ignore=sema-unused-def-lambda-witharg-arg" + "--ignore=sema-unused-def-lambda-witharg-formal" + "--ignore=sema-unused-def-let" + # Keep this rule, because we have `lib.or`. + "--ignore=or-identifier" + # TODO: remove after outstanding prelude diagnostics issues are fixed: + # https://github.com/nix-community/nixd/issues/761 + # https://github.com/nix-community/nixd/issues/762 + "--ignore=sema-primop-removed-prefix" + "--ignore=sema-primop-overridden" + "--ignore=sema-constant-overridden" + "--ignore=sema-primop-unknown" + ]; + # Ensure nixfmt cleans up after nixf-diagnose. + priority = -1; + }; + + editorconfig-checker = { + command = lib.getExe pkgs.editorconfig-checker; + options = [ + "-disable-indent-size" + # TODO: Remove this once this upstream issue is fixed: + # https://github.com/editorconfig-checker/editorconfig-checker/issues/505 + "-disable-charset" + ]; + includes = [ "*" ]; + priority = 1; + }; + + markdown-code-runner = { + command = lib.getExe pkgs.markdown-code-runner; + options = + let + config = pkgs.writers.writeTOML "markdown-code-runner-config" { + presets.nixfmt = { + language = "nix"; + command = [ (lib.getExe pkgs.nixfmt) ]; + }; + }; + in + [ "--config=${config}" ]; + includes = [ "*.md" ]; + }; + + zizmor = { + command = lib.getExe pkgs.zizmor; + includes = [ + ".github/workflows/*.yml" + ".github/workflows/*.yaml" + ".github/actions/**/*.yml" + ".github/actions/**/*.yaml" + ]; + }; + }; + }; } diff --git a/shell.nix b/shell.nix index 4d8043f431b5..b68b120a2529 100644 --- a/shell.nix +++ b/shell.nix @@ -28,15 +28,14 @@ let in curPkgs // pkgs.mkShellNoCC { - inputsFrom = [ - fmt.shell - ]; - packages = with pkgs; [ + packages = [ # Helper to review Nixpkgs PRs # See CONTRIBUTING.md - nixpkgs-reviewFull + pkgs.nixpkgs-reviewFull # Command-line utility for working with GitHub # Used by nixpkgs-review to fetch eval results - gh + pkgs.gh + # treefmt wrapper + fmt.pkg ]; } From b36cb1bb91ac6b01703ac6bc1e210971fbe6a986 Mon Sep 17 00:00:00 2001 From: Acid Bong Date: Sat, 13 Jun 2026 11:04:47 +0300 Subject: [PATCH 07/69] ci/treefmt: sort formatters alphabetically --- ci/treefmt.nix | 95 +++++++++++++++++++++++++------------------------- 1 file changed, 48 insertions(+), 47 deletions(-) diff --git a/ci/treefmt.nix b/ci/treefmt.nix index 84da02930f0c..2d0a782c7ace 100644 --- a/ci/treefmt.nix +++ b/ci/treefmt.nix @@ -27,7 +27,7 @@ on-unmatched = "debug"; formatter = { - + # keep-sorted start block=yes newline_separated=yes actionlint = { command = lib.getExe pkgs.actionlint; includes = [ @@ -66,34 +66,36 @@ ]; }; + editorconfig-checker = { + command = lib.getExe pkgs.editorconfig-checker; + options = [ + "-disable-indent-size" + # TODO: Remove this once this upstream issue is fixed: + # https://github.com/editorconfig-checker/editorconfig-checker/issues/505 + "-disable-charset" + ]; + includes = [ "*" ]; + priority = 1; + }; + keep-sorted = { command = lib.getExe pkgs.keep-sorted; includes = [ "*" ]; }; - # This uses nixfmt underneath, the default formatter for Nix code. - # See https://github.com/NixOS/nixfmt - nixfmt = { - command = lib.getExe pkgs.nixfmt; - includes = [ "*.nix" ]; - }; - - yamlfmt = { - command = lib.getExe pkgs.yamlfmt; - excludes = [ - # Aligns comments with whitespace - "pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml" - # TODO: Fix formatting for auto-generated file - "pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml" - ]; - includes = [ - "*.yaml" - "*.yml" - ]; - options = [ - "-formatter" - "retain_line_breaks=true" - ]; + markdown-code-runner = { + command = lib.getExe pkgs.markdown-code-runner; + options = + let + config = pkgs.writers.writeTOML "markdown-code-runner-config" { + presets.nixfmt = { + language = "nix"; + command = [ (lib.getExe pkgs.nixfmt) ]; + }; + }; + in + [ "--config=${config}" ]; + includes = [ "*.md" ]; }; nixf-diagnose = { @@ -130,31 +132,29 @@ priority = -1; }; - editorconfig-checker = { - command = lib.getExe pkgs.editorconfig-checker; - options = [ - "-disable-indent-size" - # TODO: Remove this once this upstream issue is fixed: - # https://github.com/editorconfig-checker/editorconfig-checker/issues/505 - "-disable-charset" - ]; - includes = [ "*" ]; - priority = 1; + # This uses nixfmt underneath, the default formatter for Nix code. + # See https://github.com/NixOS/nixfmt + nixfmt = { + command = lib.getExe pkgs.nixfmt; + includes = [ "*.nix" ]; }; - markdown-code-runner = { - command = lib.getExe pkgs.markdown-code-runner; - options = - let - config = pkgs.writers.writeTOML "markdown-code-runner-config" { - presets.nixfmt = { - language = "nix"; - command = [ (lib.getExe pkgs.nixfmt) ]; - }; - }; - in - [ "--config=${config}" ]; - includes = [ "*.md" ]; + yamlfmt = { + command = lib.getExe pkgs.yamlfmt; + excludes = [ + # Aligns comments with whitespace + "pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml" + # TODO: Fix formatting for auto-generated file + "pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml" + ]; + includes = [ + "*.yaml" + "*.yml" + ]; + options = [ + "-formatter" + "retain_line_breaks=true" + ]; }; zizmor = { @@ -166,6 +166,7 @@ ".github/actions/**/*.yaml" ]; }; + # keep-sorted end }; }; } From 72a2c77772f1d20622a18f8b1a64d7161c28bb73 Mon Sep 17 00:00:00 2001 From: Gliczy <129636582+Gliczy@users.noreply.github.com> Date: Sun, 14 Jun 2026 04:11:53 +0200 Subject: [PATCH 08/69] makeAutostartItem: only use sed on `Exec` key Fix cases when using `makeStartupItem` and it's `prependExtraArgs` or `appendExtraArgs` option with a desktop file having a `TryExec` key. The `TryExec` key must either be an absolute path to the binary or the binary name (if present in $PATH). When using either of the two options above, the `TryExec` key will be modified to have the flags as it's content, which is invalid and will break the desktop file. The change to the sed command makes it so only lines starting with `Exec` are changed, ignoring `TryExec` and preventing the issue from happening. Link to the FDO specification: https://specifications.freedesktop.org/desktop-entry/latest/recognized-keys.html --- pkgs/build-support/make-startupitem/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/make-startupitem/default.nix b/pkgs/build-support/make-startupitem/default.nix index 03677355b8d6..b1294a43a0f8 100644 --- a/pkgs/build-support/make-startupitem/default.nix +++ b/pkgs/build-support/make-startupitem/default.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation { target=${name}.desktop cp ${package}/share/applications/${srcPrefix}${name}.desktop $target ${lib.optionalString (prependExtraArgs != [ ] || appendExtraArgs != [ ]) '' - sed -i -r "s/(Exec=)([^ \n]*) *(.*)/\1\2 ${prependArgs}\3${appendArgs}/" $target + sed -i -r "s/^(Exec=)([^ \n]*) *(.*)/\1\2 ${prependArgs}\3${appendArgs}/" $target ''} chmod +rw $target echo "X-KDE-autostart-phase=${phase}" >> $target From 50a3e42a91061e5c6110b6a32bab083437734b4a Mon Sep 17 00:00:00 2001 From: Nova DasSarma Date: Sun, 14 Jun 2026 21:47:25 +0900 Subject: [PATCH 09/69] maintainers: add l1n Assisted-by: Claude Code (model: Claude Opus 4.8) --- maintainers/maintainer-list.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 3ad79be89fb8..b39dd1c53a54 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -15120,6 +15120,11 @@ githubId = 27364685; name = "Lorenzo Pasqui"; }; + l1n = { + github = "l1n"; + githubId = 1367322; + name = "Nova DasSarma"; + }; l1npengtul = { email = "l1npengtul@l1npengtul.lol"; github = "l1npengtul"; From bc95ebadc4853bb6fc8d853e4575e8e370f0100d Mon Sep 17 00:00:00 2001 From: Nova DasSarma Date: Sun, 14 Jun 2026 21:47:26 +0900 Subject: [PATCH 10/69] python3Packages.pyobjc-framework-CoreText: init at 11.1 CoreText is a dependency of pyobjc-framework-ApplicationServices. Assisted-by: Claude Code (model: Claude Opus 4.8) --- .../pyobjc-framework-CoreText/default.nix | 59 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 61 insertions(+) create mode 100644 pkgs/development/python-modules/pyobjc-framework-CoreText/default.nix diff --git a/pkgs/development/python-modules/pyobjc-framework-CoreText/default.nix b/pkgs/development/python-modules/pyobjc-framework-CoreText/default.nix new file mode 100644 index 000000000000..7a5fed7c016e --- /dev/null +++ b/pkgs/development/python-modules/pyobjc-framework-CoreText/default.nix @@ -0,0 +1,59 @@ +{ + buildPythonPackage, + setuptools, + darwin, + pyobjc-core, + pyobjc-framework-Cocoa, + pyobjc-framework-Quartz, + lib, +}: + +buildPythonPackage rec { + pname = "pyobjc-framework-CoreText"; + pyproject = true; + + inherit (pyobjc-core) version src; + + sourceRoot = "${src.name}/pyobjc-framework-CoreText"; + + build-system = [ setuptools ]; + + buildInputs = [ darwin.libffi ]; + + nativeBuildInputs = [ + darwin.DarwinTools # sw_vers + ]; + + # Same workaround as pyobjc-framework-Quartz; see + # https://github.com/ronaldoussoren/pyobjc/pull/641. + postPatch = '' + substituteInPlace pyobjc_setup.py \ + --replace-fail "-buildversion" "-buildVersion" \ + --replace-fail "-productversion" "-productVersion" \ + --replace-fail "/usr/bin/sw_vers" "sw_vers" \ + --replace-fail "/usr/bin/xcrun" "xcrun" + ''; + + dependencies = [ + pyobjc-core + pyobjc-framework-Cocoa + pyobjc-framework-Quartz + ]; + + env.NIX_CFLAGS_COMPILE = toString [ + "-I${darwin.libffi.dev}/include" + "-Wno-error=unused-command-line-argument" + ]; + + pythonImportsCheck = [ + "CoreText" + ]; + + meta = { + description = "PyObjC wrappers for the CoreText framework on macOS"; + homepage = "https://github.com/ronaldoussoren/pyobjc"; + license = lib.licenses.mit; + platforms = lib.platforms.darwin; + maintainers = with lib.maintainers; [ l1n ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cb255c8fb62c..8fa5efad605b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14764,6 +14764,8 @@ self: super: with self; { callPackage ../development/python-modules/pyobjc-framework-CoreBluetooth { }; + pyobjc-framework-CoreText = callPackage ../development/python-modules/pyobjc-framework-CoreText { }; + pyobjc-framework-Quartz = callPackage ../development/python-modules/pyobjc-framework-Quartz { }; pyobjc-framework-Security = callPackage ../development/python-modules/pyobjc-framework-Security { }; From b61e422ffdeb06d21954a3338e6d342e33c64766 Mon Sep 17 00:00:00 2001 From: Nova DasSarma Date: Sun, 14 Jun 2026 21:47:26 +0900 Subject: [PATCH 11/69] python3Packages.pyobjc-framework-ApplicationServices: init at 11.1 Provides the HIServices module needed by pynput's darwin backend. Assisted-by: Claude Code (model: Claude Opus 4.8) --- .../default.nix | 62 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 ++ 2 files changed, 66 insertions(+) create mode 100644 pkgs/development/python-modules/pyobjc-framework-ApplicationServices/default.nix diff --git a/pkgs/development/python-modules/pyobjc-framework-ApplicationServices/default.nix b/pkgs/development/python-modules/pyobjc-framework-ApplicationServices/default.nix new file mode 100644 index 000000000000..c6df11fc9dc4 --- /dev/null +++ b/pkgs/development/python-modules/pyobjc-framework-ApplicationServices/default.nix @@ -0,0 +1,62 @@ +{ + buildPythonPackage, + setuptools, + darwin, + pyobjc-core, + pyobjc-framework-Cocoa, + pyobjc-framework-Quartz, + pyobjc-framework-CoreText, + lib, +}: + +buildPythonPackage rec { + pname = "pyobjc-framework-ApplicationServices"; + pyproject = true; + + inherit (pyobjc-core) version src; + + sourceRoot = "${src.name}/pyobjc-framework-ApplicationServices"; + + build-system = [ setuptools ]; + + buildInputs = [ darwin.libffi ]; + + nativeBuildInputs = [ + darwin.DarwinTools # sw_vers + ]; + + # Same workaround as pyobjc-framework-Quartz; see + # https://github.com/ronaldoussoren/pyobjc/pull/641. + postPatch = '' + substituteInPlace pyobjc_setup.py \ + --replace-fail "-buildversion" "-buildVersion" \ + --replace-fail "-productversion" "-productVersion" \ + --replace-fail "/usr/bin/sw_vers" "sw_vers" \ + --replace-fail "/usr/bin/xcrun" "xcrun" + ''; + + dependencies = [ + pyobjc-core + pyobjc-framework-Cocoa + pyobjc-framework-Quartz + pyobjc-framework-CoreText + ]; + + env.NIX_CFLAGS_COMPILE = toString [ + "-I${darwin.libffi.dev}/include" + "-Wno-error=unused-command-line-argument" + ]; + + pythonImportsCheck = [ + "ApplicationServices" + "HIServices" + ]; + + meta = { + description = "PyObjC wrappers for the ApplicationServices framework on macOS"; + homepage = "https://github.com/ronaldoussoren/pyobjc"; + license = lib.licenses.mit; + platforms = lib.platforms.darwin; + maintainers = with lib.maintainers; [ l1n ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8fa5efad605b..1a9228eebdcd 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14754,6 +14754,10 @@ self: super: with self; { pyobjc-core = callPackage ../development/python-modules/pyobjc-core { }; + pyobjc-framework-ApplicationServices = + callPackage ../development/python-modules/pyobjc-framework-ApplicationServices + { }; + pyobjc-framework-Cocoa = callPackage ../development/python-modules/pyobjc-framework-Cocoa { }; pyobjc-framework-CoreAudio = From 595103c57c4d13554ae0a60c3ec22021822dcaf2 Mon Sep 17 00:00:00 2001 From: Nova DasSarma Date: Sun, 14 Jun 2026 21:47:26 +0900 Subject: [PATCH 12/69] python3Packages.pynput: unbreak on darwin The macOS backend imports HIServices (ApplicationServices) and uses Quartz, but no pyobjc dependencies were added on darwin, so importing pynput failed at runtime - hence the broken flag. Add the two frameworks pynput's darwin backend needs and drop the broken marker. Tested on aarch64-darwin: `from pynput import keyboard` and `HIServices.AXIsProcessTrusted()` both succeed. Assisted-by: Claude Code (model: Claude Opus 4.8) --- pkgs/development/python-modules/pynput/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pynput/default.nix b/pkgs/development/python-modules/pynput/default.nix index 22671fe18f2e..d27999d63045 100644 --- a/pkgs/development/python-modules/pynput/default.nix +++ b/pkgs/development/python-modules/pynput/default.nix @@ -14,6 +14,8 @@ xlib, evdev, six, + pyobjc-framework-ApplicationServices, + pyobjc-framework-Quartz, # tests unittestCheckHook, @@ -52,6 +54,11 @@ buildPythonPackage rec { ++ lib.optionals stdenv.hostPlatform.isLinux [ evdev xlib + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + # the darwin backend imports HIServices (ApplicationServices) and Quartz + pyobjc-framework-ApplicationServices + pyobjc-framework-Quartz ]; doCheck = false; # requires running X server @@ -59,7 +66,6 @@ buildPythonPackage rec { nativeCheckInputs = [ unittestCheckHook ]; meta = { - broken = stdenv.hostPlatform.isDarwin; description = "Library to control and monitor input devices"; homepage = "https://github.com/moses-palmer/pynput"; license = lib.licenses.lgpl3; From c0176b0fc4b9532965e9756cd274a5bc8c60151e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 15 Jun 2026 03:16:40 +0000 Subject: [PATCH 13/69] xaos: 4.3.4 -> 4.3.5 --- pkgs/by-name/xa/xaos/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/xa/xaos/package.nix b/pkgs/by-name/xa/xaos/package.nix index 40f9172eef24..554b4576c030 100644 --- a/pkgs/by-name/xa/xaos/package.nix +++ b/pkgs/by-name/xa/xaos/package.nix @@ -11,7 +11,7 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "xaos"; - version = "4.3.4"; + version = "4.3.5"; outputs = [ "out" "man" @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "xaos-project"; repo = "XaoS"; tag = "release-${finalAttrs.version}"; - hash = "sha256-vOFwZbdbcrcJLHUa1QzxzadPcx5GF5uNPg+MZ7NbAPc="; + hash = "sha256-dGfmX55bm2BCFl7mRit88ULAcJ0VP15yVGI7nhRH0Ig="; }; nativeBuildInputs = [ From cdecc0b0ef5eaa4c68de7f8c6deea7129e0b72af Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Mon, 15 Jun 2026 10:48:24 +0200 Subject: [PATCH 14/69] slurm: 26.05.0.1 -> 26.05.1.1 --- pkgs/by-name/sl/slurm/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/sl/slurm/package.nix b/pkgs/by-name/sl/slurm/package.nix index fc1a76af1245..05c21505ab71 100644 --- a/pkgs/by-name/sl/slurm/package.nix +++ b/pkgs/by-name/sl/slurm/package.nix @@ -42,7 +42,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "slurm"; - version = "26.05.0.1"; + version = "26.05.1.1"; # N.B. We use github release tags instead of https://www.schedmd.com/downloads.php # because the latter does not keep older releases. @@ -50,8 +50,8 @@ stdenv.mkDerivation (finalAttrs: { owner = "SchedMD"; repo = "slurm"; # The release tags use - instead of . - rev = "slurm-${builtins.replaceStrings [ "." ] [ "-" ] finalAttrs.version}"; - hash = "sha256-pEgSPaLGqPeNsw0DkxnZP4n6jx5fy+wTgAu0LZmxmW0="; + tag = "slurm-${builtins.replaceStrings [ "." ] [ "-" ] finalAttrs.version}"; + hash = "sha256-ZH80Ws/9+7pjDe7aZyyDHXFbNvmw8C7OJXiw5+/3jkA="; }; outputs = [ From 916830084c30241fd9ca0ede1ce1a637afe20db0 Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Tue, 16 Jun 2026 03:33:13 +0200 Subject: [PATCH 15/69] ayatana-indicator-session: 24.5.1 -> 26.6.1 --- pkgs/by-name/ay/ayatana-indicator-session/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ay/ayatana-indicator-session/package.nix b/pkgs/by-name/ay/ayatana-indicator-session/package.nix index 39a05c6e5d03..f9e4f847e630 100644 --- a/pkgs/by-name/ay/ayatana-indicator-session/package.nix +++ b/pkgs/by-name/ay/ayatana-indicator-session/package.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "ayatana-indicator-session"; - version = "24.5.1"; + version = "26.6.1"; src = fetchFromGitHub { owner = "AyatanaIndicators"; repo = "ayatana-indicator-session"; tag = finalAttrs.version; - hash = "sha256-jqcgQTsC4VBit3wwtKKTdEG71CUPJpeMtpzikE4IGhE="; + hash = "sha256-rrjtLiZ+qaqB1QowGqp3SfWsgzqIYHYEzEzAERiLLBs="; }; postPatch = '' From 6c78180e5a1e04500353ad7b7715035f48df2e84 Mon Sep 17 00:00:00 2001 From: Hythera <87016780+Hythera@users.noreply.github.com> Date: Mon, 8 Jun 2026 13:21:34 +0200 Subject: [PATCH 16/69] teams/redis: init --- maintainers/team-list.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index 43dda493bac4..cdd4d5518788 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -689,6 +689,10 @@ with lib.maintainers; github = "radicle"; }; + redis = { + github = "redis"; + }; + rocm = { github = "rocm"; }; From 97b8f17973321f9dc3c87d65b6774337389df1dc Mon Sep 17 00:00:00 2001 From: Hythera <87016780+Hythera@users.noreply.github.com> Date: Mon, 8 Jun 2026 18:44:49 +0200 Subject: [PATCH 17/69] various: adopt packages by redis team --- nixos/modules/services/databases/redis.nix | 2 ++ nixos/tests/redis.nix | 6 +----- pkgs/by-name/hi/hiredis/package.nix | 2 +- pkgs/by-name/me/memtier-benchmark/package.nix | 6 ++---- pkgs/by-name/re/redis/package.nix | 2 +- pkgs/by-name/re/redisTestHook/package.nix | 5 ++++- pkgs/by-name/re/redisinsight/package.nix | 1 + pkgs/by-name/ri/riot-redis/package.nix | 1 + pkgs/by-name/va/valkey/package.nix | 4 +--- pkgs/development/python-modules/hiredis/default.nix | 2 +- pkgs/development/python-modules/redis-om/default.nix | 1 + pkgs/development/python-modules/redis/default.nix | 1 + pkgs/development/python-modules/redisvl/default.nix | 6 ++---- 13 files changed, 19 insertions(+), 20 deletions(-) diff --git a/nixos/modules/services/databases/redis.nix b/nixos/modules/services/databases/redis.nix index b735ffd79e70..0eab7103edda 100644 --- a/nixos/modules/services/databases/redis.nix +++ b/nixos/modules/services/databases/redis.nix @@ -30,6 +30,8 @@ let in { + meta.teams = [ lib.teams.redis ]; + imports = [ (lib.mkRemovedOptionModule [ "services" diff --git a/nixos/tests/redis.nix b/nixos/tests/redis.nix index f878509bce35..4ff35a509145 100644 --- a/nixos/tests/redis.nix +++ b/nixos/tests/redis.nix @@ -19,11 +19,7 @@ let }: makeTest { inherit name; - meta.maintainers = [ - lib.maintainers.das_j - lib.maintainers.flokli - lib.maintainers.helsinki-Jo - ]; + meta.maintainers = lib.teams.redis.members; nodes = { machine = diff --git a/pkgs/by-name/hi/hiredis/package.nix b/pkgs/by-name/hi/hiredis/package.nix index db1dcc4c5618..77033747eb46 100644 --- a/pkgs/by-name/hi/hiredis/package.nix +++ b/pkgs/by-name/hi/hiredis/package.nix @@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/redis/hiredis"; description = "Minimalistic C client for Redis >= 1.2"; license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ hythera ]; platforms = lib.platforms.all; + teams = [ lib.teams.redis ]; }; }) diff --git a/pkgs/by-name/me/memtier-benchmark/package.nix b/pkgs/by-name/me/memtier-benchmark/package.nix index e37df1419c59..86ac0e598f60 100644 --- a/pkgs/by-name/me/memtier-benchmark/package.nix +++ b/pkgs/by-name/me/memtier-benchmark/package.nix @@ -37,10 +37,8 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/redis/memtier_benchmark"; license = lib.licenses.gpl2Only; platforms = lib.platforms.unix; - maintainers = with lib.maintainers; [ - thoughtpolice - hythera - ]; + maintainers = with lib.maintainers; [ thoughtpolice ]; mainProgram = "memtier_benchmark"; + teams = [ lib.teams.redis ]; }; }) diff --git a/pkgs/by-name/re/redis/package.nix b/pkgs/by-name/re/redis/package.nix index c20608d23d3d..98057ad86d3a 100644 --- a/pkgs/by-name/re/redis/package.nix +++ b/pkgs/by-name/re/redis/package.nix @@ -137,7 +137,7 @@ stdenv.mkDerivation (finalAttrs: { license = lib.licenses.agpl3Only; platforms = lib.platforms.all; changelog = "https://github.com/redis/redis/releases/tag/${finalAttrs.version}"; - maintainers = with lib.maintainers; [ hythera ]; mainProgram = "redis-cli"; + teams = [ lib.teams.redis ]; }; }) diff --git a/pkgs/by-name/re/redisTestHook/package.nix b/pkgs/by-name/re/redisTestHook/package.nix index f9209bf9d080..4462fc78aff0 100644 --- a/pkgs/by-name/re/redisTestHook/package.nix +++ b/pkgs/by-name/re/redisTestHook/package.nix @@ -16,5 +16,8 @@ makeSetupHook { simple = callPackage ./test.nix { }; python3-valkey = python3Packages.valkey; }; - meta.license = lib.licenses.mit; + meta = { + license = lib.licenses.mit; + teams = [ lib.teams.redis ]; + }; } ./redis-test-hook.sh diff --git a/pkgs/by-name/re/redisinsight/package.nix b/pkgs/by-name/re/redisinsight/package.nix index 68167e401eb8..4e98d8b8f85b 100644 --- a/pkgs/by-name/re/redisinsight/package.nix +++ b/pkgs/by-name/re/redisinsight/package.nix @@ -177,5 +177,6 @@ stdenv.mkDerivation (finalAttrs: { tomasajt ]; platforms = lib.platforms.linux; + teams = [ lib.teams.redis ]; }; }) diff --git a/pkgs/by-name/ri/riot-redis/package.nix b/pkgs/by-name/ri/riot-redis/package.nix index 3a5c3dbfdc4f..221237b60d78 100644 --- a/pkgs/by-name/ri/riot-redis/package.nix +++ b/pkgs/by-name/ri/riot-redis/package.nix @@ -39,5 +39,6 @@ stdenv.mkDerivation (finalAttrs: { license = lib.licenses.asl20; sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; maintainers = with lib.maintainers; [ wesnel ]; + teams = [ lib.teams.redis ]; }; }) diff --git a/pkgs/by-name/va/valkey/package.nix b/pkgs/by-name/va/valkey/package.nix index 5898430b732d..81a40f68bf21 100644 --- a/pkgs/by-name/va/valkey/package.nix +++ b/pkgs/by-name/va/valkey/package.nix @@ -117,9 +117,7 @@ stdenv.mkDerivation (finalAttrs: { description = "High-performance data structure server that primarily serves key/value workloads"; license = lib.licenses.bsd3; platforms = lib.platforms.all; - maintainers = with lib.maintainers; [ - debtquity - ]; + teams = [ lib.teams.redis ]; changelog = "https://github.com/valkey-io/valkey/releases/tag/${finalAttrs.version}"; mainProgram = "valkey-cli"; }; diff --git a/pkgs/development/python-modules/hiredis/default.nix b/pkgs/development/python-modules/hiredis/default.nix index b83ac28068a4..47181669215b 100644 --- a/pkgs/development/python-modules/hiredis/default.nix +++ b/pkgs/development/python-modules/hiredis/default.nix @@ -38,6 +38,6 @@ buildPythonPackage (finalAttrs: { homepage = "https://github.com/redis/hiredis-py"; changelog = "https://github.com/redis/hiredis-py/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ hythera ]; + teams = [ lib.teams.redis ]; }; }) diff --git a/pkgs/development/python-modules/redis-om/default.nix b/pkgs/development/python-modules/redis-om/default.nix index e290fae8f5ec..5937f8d8faa6 100644 --- a/pkgs/development/python-modules/redis-om/default.nix +++ b/pkgs/development/python-modules/redis-om/default.nix @@ -87,5 +87,6 @@ buildPythonPackage rec { changelog = "https://github.com/redis/redis-om-python/releases/tag/${src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ natsukium ]; + teams = [ lib.teams.redis ]; }; } diff --git a/pkgs/development/python-modules/redis/default.nix b/pkgs/development/python-modules/redis/default.nix index 66f7a75717a5..2602e0f0e3e1 100644 --- a/pkgs/development/python-modules/redis/default.nix +++ b/pkgs/development/python-modules/redis/default.nix @@ -73,5 +73,6 @@ buildPythonPackage rec { changelog = "https://github.com/redis/redis-py/releases/tag/${src.tag}"; license = lib.licenses.mit; maintainers = [ lib.maintainers.dotlambda ]; + teams = [ lib.teams.redis ]; }; } diff --git a/pkgs/development/python-modules/redisvl/default.nix b/pkgs/development/python-modules/redisvl/default.nix index 8954d672b771..05897866f9bf 100644 --- a/pkgs/development/python-modules/redisvl/default.nix +++ b/pkgs/development/python-modules/redisvl/default.nix @@ -49,9 +49,7 @@ buildPythonPackage (finalAttrs: { changelog = "https://github.com/redis/redis-vl-python/releases/tag/v${finalAttrs.version}"; license = lib.licenses.mit; mainProgram = "rvl"; - maintainers = with lib.maintainers; [ - codgician - hythera - ]; + maintainers = with lib.maintainers; [ codgician ]; + teams = [ lib.teams.redis ]; }; }) From 201fe91c997f99cfdb6663805e4a1525ad3124f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 17 Jun 2026 21:36:33 +0200 Subject: [PATCH 18/69] home-assistant-custom-components.blueprints-updater: 2.7.4 -> 2.8.1 Diff: https://github.com/luuquangvu/blueprints-updater/compare/2.7.4...2.8.1 Changelog: https://github.com/luuquangvu/blueprints-updater/releases/tag/2.8.1 --- .../custom-components/blueprints-updater/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/custom-components/blueprints-updater/package.nix b/pkgs/servers/home-assistant/custom-components/blueprints-updater/package.nix index 712f554aaacd..e2a9f33cc2ec 100644 --- a/pkgs/servers/home-assistant/custom-components/blueprints-updater/package.nix +++ b/pkgs/servers/home-assistant/custom-components/blueprints-updater/package.nix @@ -13,13 +13,13 @@ buildHomeAssistantComponent rec { owner = "luuquangvu"; domain = "blueprints_updater"; - version = "2.7.4"; + version = "2.8.1"; src = fetchFromGitHub { inherit owner; repo = "blueprints-updater"; tag = version; - hash = "sha256-8vq/tU9a0faioSmy9CdJerIx1ry67B+gqdlnSNiEFGU="; + hash = "sha256-aqufiwH9yJmyr5Bd3Etwf5aK9dAfa7srXpBcmXDFAoY="; }; patches = [ From aa607e84c35a1fb4fca8c59d45e596fbbd61d120 Mon Sep 17 00:00:00 2001 From: Matei Dibu Date: Fri, 19 Jun 2026 11:04:04 +0300 Subject: [PATCH 19/69] niks3: build niks3-hook --- pkgs/by-name/ni/niks3/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/ni/niks3/package.nix b/pkgs/by-name/ni/niks3/package.nix index c085fd2fa609..cfe54c13d76f 100644 --- a/pkgs/by-name/ni/niks3/package.nix +++ b/pkgs/by-name/ni/niks3/package.nix @@ -21,6 +21,7 @@ buildGoModule (finalAttrs: { subPackages = [ "cmd/niks3" + "cmd/niks3-hook" "cmd/niks3-server" ]; From 8a725b762163c58ac589ccf340b51f1b03de0f30 Mon Sep 17 00:00:00 2001 From: Wolfgang Walther Date: Fri, 19 Jun 2026 20:49:58 +0200 Subject: [PATCH 20/69] postgresqlPackages.pg_squeeze: 1.9.2 -> 1.9.3 Release Notes: https://github.com/cybertec-postgresql/pg_squeeze/releases/tag/REL1_9_3 Supports PG 19. --- pkgs/servers/sql/postgresql/ext/pg_squeeze.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/sql/postgresql/ext/pg_squeeze.nix b/pkgs/servers/sql/postgresql/ext/pg_squeeze.nix index 5a7f652f2eb0..37362c8b0869 100644 --- a/pkgs/servers/sql/postgresql/ext/pg_squeeze.nix +++ b/pkgs/servers/sql/postgresql/ext/pg_squeeze.nix @@ -9,13 +9,13 @@ postgresqlBuildExtension (finalAttrs: { pname = "pg_squeeze"; - version = "1.9.2"; + version = "1.9.3"; src = fetchFromGitHub { owner = "cybertec-postgresql"; repo = "pg_squeeze"; tag = "REL${lib.replaceString "." "_" finalAttrs.version}"; - hash = "sha256-gzep34mxV9D9xk/J7JfSTWg8EaM/BJezpM3tt/tlxmM="; + hash = "sha256-lwjiRWbz+MzfodcP3jgaLdOcZ2/UheZn10iXabdfxh0="; }; passthru.updateScript = nix-update-script { From 49524862761976d3e67da09932128a9afbe79d59 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Fri, 19 Jun 2026 19:44:36 +0000 Subject: [PATCH 21/69] python3Packages.nutpie: 0.16.10 -> 0.16.11 Diff: https://github.com/pymc-devs/nutpie/compare/v0.16.10...v0.16.11 Changelog: https://github.com/pymc-devs/nutpie/blob/v0.16.11/CHANGELOG.md --- pkgs/development/python-modules/nutpie/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/nutpie/default.nix b/pkgs/development/python-modules/nutpie/default.nix index 5eebfa80f3e5..1b33556b4d95 100644 --- a/pkgs/development/python-modules/nutpie/default.nix +++ b/pkgs/development/python-modules/nutpie/default.nix @@ -35,7 +35,7 @@ buildPythonPackage (finalAttrs: { pname = "nutpie"; - version = "0.16.10"; + version = "0.16.11"; pyproject = true; __structuredAttrs = true; @@ -43,12 +43,12 @@ buildPythonPackage (finalAttrs: { owner = "pymc-devs"; repo = "nutpie"; tag = "v${finalAttrs.version}"; - hash = "sha256-Cqi4vhvu6Gvy0gOcgrpKCHbuVIyY5L9+y5nafzksPwg="; + hash = "sha256-ZakNyVW06QONdBSZFonOc585ZPLHsIjbFlBnX+Kg2kc="; }; cargoDeps = rustPlatform.fetchCargoVendor { inherit (finalAttrs) pname version src; - hash = "sha256-cJixyzzt2vwdT2B/XbOLbG6XfWVeYAJg5YWT18GqMDw="; + hash = "sha256-n61ZrJtJFQ0G/7X59pKI8QNnOZPvDWiPmGC3tW3NQkk="; }; build-system = [ From 52a753a23be790586ef785614e82bf022de2ce82 Mon Sep 17 00:00:00 2001 From: Artem Leshchev Date: Fri, 19 Jun 2026 15:27:47 -0500 Subject: [PATCH 22/69] maintainers: add matshch --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 0a703a29b7b5..b4c925e55e6b 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -17193,6 +17193,12 @@ github = "matrss"; githubId = 9308656; }; + matshch = { + name = "Artem Leshchev"; + github = "matshch"; + githubId = 2412121; + email = "matshch@gmail.com"; + }; matt-snider = { email = "matt.snider@protonmail.com"; github = "matt-snider"; From 3328a137562da3bafca4560bd0863aea47b31be7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 19 Jun 2026 20:29:12 +0000 Subject: [PATCH 23/69] gh-gei: 1.30.1 -> 1.30.2 --- pkgs/by-name/gh/gh-gei/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gh/gh-gei/package.nix b/pkgs/by-name/gh/gh-gei/package.nix index 474891dd0fd6..99b5c929c083 100644 --- a/pkgs/by-name/gh/gh-gei/package.nix +++ b/pkgs/by-name/gh/gh-gei/package.nix @@ -7,13 +7,13 @@ buildDotnetModule rec { pname = "gh-gei"; - version = "1.30.1"; + version = "1.30.2"; src = fetchFromGitHub { owner = "github"; repo = "gh-gei"; rev = "v${version}"; - hash = "sha256-eccHFngmP0uUsbtlFSIT1agRMx3OCNyqPMHG8/mj5P8="; + hash = "sha256-z3eBORwrccIgTijdHcK7en4DvRY0fE3807Amn0MCuA8="; }; dotnet-sdk = dotnetCorePackages.sdk_8_0_4xx; From 2ade855afcbc63f0f4b27015d88ec3fe6328a77c Mon Sep 17 00:00:00 2001 From: Artem Leshchev Date: Fri, 19 Jun 2026 16:14:02 -0500 Subject: [PATCH 24/69] desync: add matshch to maintainers --- pkgs/by-name/de/desync/package.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/de/desync/package.nix b/pkgs/by-name/de/desync/package.nix index 157861086c96..67233b311071 100644 --- a/pkgs/by-name/de/desync/package.nix +++ b/pkgs/by-name/de/desync/package.nix @@ -62,6 +62,9 @@ buildGoModule (finalAttrs: { homepage = "https://github.com/folbricht/desync"; changelog = "https://github.com/folbricht/desync/releases/tag/v${finalAttrs.version}"; license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ chaduffy ]; + maintainers = with lib.maintainers; [ + chaduffy + matshch + ]; }; }) From dde8c307e807d19bbadd3ed0ae748f35ffafd01a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 00:28:32 +0000 Subject: [PATCH 25/69] lomiri-qt6.cmake-extras: 1.9 -> 1.10 --- pkgs/desktops/lomiri/development/cmake-extras/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/lomiri/development/cmake-extras/default.nix b/pkgs/desktops/lomiri/development/cmake-extras/default.nix index 16b1d5580201..c1d201fd2add 100644 --- a/pkgs/desktops/lomiri/development/cmake-extras/default.nix +++ b/pkgs/desktops/lomiri/development/cmake-extras/default.nix @@ -8,13 +8,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "cmake-extras"; - version = "1.9"; + version = "1.10"; src = fetchFromGitLab { owner = "ubports"; repo = "development/core/cmake-extras"; tag = finalAttrs.version; - hash = "sha256-7dIuQ2SdtpG93cPZTmoxXUCwFhsq11gmg4OJlGTQ3VY="; + hash = "sha256-8WGbfvHFd8Z8wLVBfRYiOTGE9GpvjDT4pelE6N+xhmk="; }; postPatch = '' From f005f4d5e73788540f45c626574dd0f1a4b4e6d2 Mon Sep 17 00:00:00 2001 From: Harinn Date: Sat, 20 Jun 2026 13:31:49 +0700 Subject: [PATCH 26/69] python3Packages.blinkstick: fix invalid unstable version scheme Co-authored-by: Yohann Boniface --- pkgs/development/python-modules/blinkstick/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/blinkstick/default.nix b/pkgs/development/python-modules/blinkstick/default.nix index 96663e722797..61ac0b0c0670 100644 --- a/pkgs/development/python-modules/blinkstick/default.nix +++ b/pkgs/development/python-modules/blinkstick/default.nix @@ -8,7 +8,7 @@ buildPythonPackage { pname = "blinkstick"; - version = "unstable-2023-05-04"; + version = "1.2.0-unstable-2023-05-04"; pyproject = true; __structuredAttrs = true; From 7838f6a5c4b835dffad6692decdadedd6d6640e7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 07:20:40 +0000 Subject: [PATCH 27/69] python3Packages.oelint-parser: 8.11.2 -> 8.11.4 --- pkgs/development/python-modules/oelint-parser/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/oelint-parser/default.nix b/pkgs/development/python-modules/oelint-parser/default.nix index e382d817ff66..8e5e146ac649 100644 --- a/pkgs/development/python-modules/oelint-parser/default.nix +++ b/pkgs/development/python-modules/oelint-parser/default.nix @@ -13,14 +13,14 @@ buildPythonPackage (finalAttrs: { pname = "oelint-parser"; - version = "8.11.2"; + version = "8.11.4"; pyproject = true; src = fetchFromGitHub { owner = "priv-kweihmann"; repo = "oelint-parser"; tag = finalAttrs.version; - hash = "sha256-wzC9tXhPuGtyD2pQ2hO4sfERNOH8+sCNvXUcrqqlEAM="; + hash = "sha256-l2An1JQrDA8Sf0R3Xu0qp84fksUQu/3aPkwHGmfv6AY="; }; pythonRelaxDeps = [ "regex" ]; From 87d4d27008e003a3678d376dc40d9a82979ce0d0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 07:48:53 +0000 Subject: [PATCH 28/69] lstk: 0.11.0 -> 0.13.0 --- pkgs/by-name/ls/lstk/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ls/lstk/package.nix b/pkgs/by-name/ls/lstk/package.nix index 022d2797a46a..2da809ad248d 100644 --- a/pkgs/by-name/ls/lstk/package.nix +++ b/pkgs/by-name/ls/lstk/package.nix @@ -7,7 +7,7 @@ }: buildGoModule (finalAttrs: { pname = "lstk"; - version = "0.11.0"; + version = "0.13.0"; __structuredAttrs = true; @@ -15,10 +15,10 @@ buildGoModule (finalAttrs: { owner = "localstack"; repo = "lstk"; tag = "v${finalAttrs.version}"; - sha256 = "sha256-2PViyzcJ2AGigfxLwQ5FnULV4zF0FPQIr6nqg5d90S4="; + sha256 = "sha256-UF+ySjw3fdb9aTA/tRDmFR3EXYA7nvbuv/esT/3Rsv4="; }; - vendorHash = "sha256-y/QlgdYS4IeU9Xf/2trHRvjB5QOHDbFDrF57y9B6jxI="; + vendorHash = "sha256-zKEUGn9eKYdxSinS+NXc7PrgZkrQRZnIxTNH3yNL4GE="; excludedPackages = "test/integration"; From 35468f6105eafbf1fc6779d12843f3f5d5794b5e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 10:22:46 +0000 Subject: [PATCH 29/69] python3Packages.databricks-sdk: 0.116.0 -> 0.118.0 --- pkgs/development/python-modules/databricks-sdk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/databricks-sdk/default.nix b/pkgs/development/python-modules/databricks-sdk/default.nix index 42337ed81885..a8b9d27028cf 100644 --- a/pkgs/development/python-modules/databricks-sdk/default.nix +++ b/pkgs/development/python-modules/databricks-sdk/default.nix @@ -22,7 +22,7 @@ buildPythonPackage (finalAttrs: { pname = "databricks-sdk"; - version = "0.116.0"; + version = "0.118.0"; pyproject = true; __structuredAttrs = true; @@ -30,7 +30,7 @@ buildPythonPackage (finalAttrs: { owner = "databricks"; repo = "databricks-sdk-py"; tag = "v${finalAttrs.version}"; - hash = "sha256-o9QVw0x2FFNT+cgdGELH7f2DEmzq2xeyisjyY0FNTaE="; + hash = "sha256-ukb5Sit+BRJd7DipvGMqXbFrC8jXsLDJjCbJdIO5G0U="; }; build-system = [ From b2ccb39362f32957945bf21fd0ce4e3809745104 Mon Sep 17 00:00:00 2001 From: Marek Fajkus Date: Sat, 20 Jun 2026 13:44:31 +0200 Subject: [PATCH 30/69] elmPackages.elm-test-rs: 3.0.1 -> 3.0.2 --- .../compilers/elm/packages/elm-test-rs/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/elm/packages/elm-test-rs/default.nix b/pkgs/development/compilers/elm/packages/elm-test-rs/default.nix index a59c96ec4cbf..e01e18cd7418 100644 --- a/pkgs/development/compilers/elm/packages/elm-test-rs/default.nix +++ b/pkgs/development/compilers/elm/packages/elm-test-rs/default.nix @@ -8,18 +8,18 @@ rustPlatform.buildRustPackage rec { pname = "elm-test-rs"; - version = "3.0.1"; + version = "3.0.2"; src = fetchFromGitHub { owner = "mpizenberg"; repo = "elm-test-rs"; tag = "v${version}"; - hash = "sha256-NGonWCOLxON1lxsgRlWgY67TtIJYsLPXi96NcxF4Tso="; + hash = "sha256-H9InR28T0PQjxqT99ojw8ey29tk79BPeXpkHL3VNnkU="; }; buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [ openssl ]; - cargoHash = "sha256-qs6ujXl4j9gCEDQV5i47oa0eaqWZf4NqsVbNDsao5fI="; + cargoHash = "sha256-Y3hqSw8SyU9uVE9jBsLV9bL5KzaB9pw96Yqy3Dvh4QA="; # Tests perform networking and therefore can't work in sandbox doCheck = false; @@ -32,6 +32,7 @@ rustPlatform.buildRustPackage rec { maintainers = with lib.maintainers; [ jpagex zupo + turbomack ]; }; } From 9c87471d172ae9e34fa73382d74ba4258828df3d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 12:08:47 +0000 Subject: [PATCH 31/69] terraform-providers.splunk-terraform_signalfx: 9.30.1 -> 9.30.2 --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 8d9d1f7ccdcc..62d08e286c9c 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1247,11 +1247,11 @@ "vendorHash": "sha256-C8TE7uxMf6LOTS6v22mXwUdk2eqQRinwrCH4ZVUCx4k=" }, "splunk-terraform_signalfx": { - "hash": "sha256-bX6CtNP7uB50kk3ddu52YfKE04PsEJw6DXl6yQxOeVI=", + "hash": "sha256-zwq7jCST2EkNk+UlKgLY2r3rCm5D009HYMru9KSVmuc=", "homepage": "https://registry.terraform.io/providers/splunk-terraform/signalfx", "owner": "splunk-terraform", "repo": "terraform-provider-signalfx", - "rev": "v9.30.1", + "rev": "v9.30.2", "spdx": "MPL-2.0", "vendorHash": "sha256-27mA2OAApUtPawZZk7Wxme9TfQY19TraIJSqHh8MFZg=" }, From 2ebd5ffa129c5131091efde610fbb72f19300ee8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 13:40:24 +0000 Subject: [PATCH 32/69] fast-float: 8.2.8 -> 8.2.10 --- pkgs/by-name/fa/fast-float/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/fa/fast-float/package.nix b/pkgs/by-name/fa/fast-float/package.nix index b8bfc4002bd8..78b919e10656 100644 --- a/pkgs/by-name/fa/fast-float/package.nix +++ b/pkgs/by-name/fa/fast-float/package.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "fast-float"; - version = "8.2.8"; + version = "8.2.10"; src = fetchFromGitHub { owner = "fastfloat"; repo = "fast_float"; rev = "v${finalAttrs.version}"; - hash = "sha256-wnWZyQJzg6vzaRi3hbNHCAZre+NrI7KMoJwJp94fy70="; + hash = "sha256-DOwDLnMwlXAP5SfDJuxhkmLmcBZ1wBvXEJr5RuHepp4="; }; nativeBuildInputs = [ cmake ]; From dafef2f9446a33537667fc0f1ecd82914b38b975 Mon Sep 17 00:00:00 2001 From: V3RM1N Date: Sat, 20 Jun 2026 16:33:25 +0200 Subject: [PATCH 33/69] stoat-desktop: add passthru.updateScript --- pkgs/by-name/st/stoat-desktop/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/st/stoat-desktop/package.nix b/pkgs/by-name/st/stoat-desktop/package.nix index 471ab1348038..7dc357f4e479 100644 --- a/pkgs/by-name/st/stoat-desktop/package.nix +++ b/pkgs/by-name/st/stoat-desktop/package.nix @@ -13,6 +13,7 @@ nodejs, electron_38, zip, + nix-update-script, }: let electron = electron_38; @@ -139,6 +140,8 @@ stdenv.mkDerivation (finalAttrs: { }) ]; + passthru.updateScript = nix-update-script { }; + meta = { description = "Open source user-first chat platform"; homepage = "https://stoat.chat/"; From a6179b7de28206785a2f722a7d3e3458c3ec83cd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 16:55:00 +0000 Subject: [PATCH 34/69] libretro.pcsx-rearmed: 0-unstable-2026-05-15 -> 0-unstable-2026-06-13 --- pkgs/applications/emulators/libretro/cores/pcsx-rearmed.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/emulators/libretro/cores/pcsx-rearmed.nix b/pkgs/applications/emulators/libretro/cores/pcsx-rearmed.nix index b579ede72fec..1c619b065a43 100644 --- a/pkgs/applications/emulators/libretro/cores/pcsx-rearmed.nix +++ b/pkgs/applications/emulators/libretro/cores/pcsx-rearmed.nix @@ -5,13 +5,13 @@ }: mkLibretroCore { core = "pcsx-rearmed"; - version = "0-unstable-2026-05-15"; + version = "0-unstable-2026-06-13"; src = fetchFromGitHub { owner = "libretro"; repo = "pcsx_rearmed"; - rev = "c88070df8e0e84106ecc4b6394860a413a7bc046"; - hash = "sha256-ZngYExWmL4NlmSfaRbTpSthNY1QRwKXtSiSX8zS/teo="; + rev = "d26eaee5c8fb47c1832b8bf32c1358d625da8a02"; + hash = "sha256-p8sPQDnxIBMuFD9nCtdFp1DEJwRuifgUrOFYdY1EfME="; }; dontConfigure = true; From 6164e6ecd2e8dfa09b5dde254862dce791327830 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 17:42:00 +0000 Subject: [PATCH 35/69] gtree: 1.13.6 -> 1.14.2 --- pkgs/by-name/gt/gtree/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/gt/gtree/package.nix b/pkgs/by-name/gt/gtree/package.nix index ecab9982f281..fcd242aaf754 100644 --- a/pkgs/by-name/gt/gtree/package.nix +++ b/pkgs/by-name/gt/gtree/package.nix @@ -11,16 +11,16 @@ # it's updated. buildGo126Module (finalAttrs: { pname = "gtree"; - version = "1.13.6"; + version = "1.14.2"; src = fetchFromGitHub { owner = "ddddddO"; repo = "gtree"; tag = "v${finalAttrs.version}"; - hash = "sha256-E3Nri8kFMh6NYp29vFFNAlJxdfOvLR1inbD+KALXZms="; + hash = "sha256-LMVXC22fTrPt4S5HkErMrpZwwanN5blY/TPUE8bg95s="; }; - vendorHash = "sha256-Pkc2UV/77YdKm5ZWKCSKE0dljUzC5dw1f08T+3MvFTE="; + vendorHash = "sha256-Vd5VKKl79Qu5R7jOYS1CTtQuAis9vWUbpBWnEI7sgpk="; subPackages = [ "cmd/gtree" From 8afbdeeea8386ac25f0c576499064be474b3ecc1 Mon Sep 17 00:00:00 2001 From: Thomas de Zeeuw Date: Fri, 5 Jun 2026 11:19:32 +0200 Subject: [PATCH 36/69] switch-to-configuration-ng: Handle dbus errors --- .../sw/switch-to-configuration-ng/src/main.rs | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs b/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs index 20c80a50baa5..1bc5810d3fd3 100644 --- a/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs +++ b/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs @@ -1073,14 +1073,17 @@ fn login1_proxy(conn: &LocalConnection) -> Proxy<'_, &LocalConnection> { fn block_on_jobs( conn: &LocalConnection, submitted_jobs: &Rc, Job>>>, -) { +) -> anyhow::Result<()> { while !submitted_jobs.borrow().is_empty() { log::debug!( "waiting for submitted jobs to finish, still have {} job(s)", submitted_jobs.borrow().len() ); - _ = conn.process(DBUS_PROCESS_TIME); + _ = conn + .process(DBUS_PROCESS_TIME) + .context("Failed to process dbus messages while waiting for jobs")?; } + Ok(()) } fn remove_file_if_exists(p: impl AsRef) -> std::io::Result<()> { @@ -1521,7 +1524,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { submitted_jobs.borrow_mut().insert(job_path, Job::Stop); } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; if !units_to_skip.is_empty() { print_units("NOT restarting", &units_to_skip); @@ -1547,7 +1550,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { } } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; remove_file_if_exists(&reload_list) .with_context(|| format!("Failed to remove {}", reload_list.display()))?; @@ -1563,7 +1566,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { } } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; remove_file_if_exists(&restart_list) .with_context(|| format!("Failed to remove {}", restart_list.display()))?; @@ -1580,7 +1583,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { } } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; remove_file_if_exists(&start_list) .with_context(|| format!("Failed to remove {}", start_list.display()))?; @@ -1677,7 +1680,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { } } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; print_units("restarting (post-activation)", &to_restart); for unit in to_restart.keys() { @@ -1691,7 +1694,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { } } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; let to_start_filtered = filter_units(&units_to_filter, &to_start); print_units("starting (post-activation)", &to_start_filtered); @@ -1706,7 +1709,7 @@ fn do_user_switch(parent_exe: String) -> anyhow::Result<()> { } } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; } let finished = finished_jobs.borrow(); @@ -2198,7 +2201,7 @@ won't take effect until you reboot the system. }; } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; } if !units_to_skip.is_empty() { @@ -2214,7 +2217,7 @@ won't take effect until you reboot the system. } // Wait for all stop jobs to finish - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; let mut exit_code = 0; @@ -2437,7 +2440,7 @@ won't take effect until you reboot the system. } // Wait for the restart job of sysinit-reactivation.service to finish - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; // Before reloading we need to ensure that the units are still active. They may have been // deactivated because one of their requirements got stopped. If they are inactive but should @@ -2492,7 +2495,7 @@ won't take effect until you reboot the system. } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; remove_file_if_exists(RELOAD_LIST_FILE) .with_context(|| format!("Failed to remove {RELOAD_LIST_FILE}"))?; @@ -2520,7 +2523,7 @@ won't take effect until you reboot the system. } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; remove_file_if_exists(RESTART_LIST_FILE) .with_context(|| format!("Failed to remove {RESTART_LIST_FILE}"))?; @@ -2553,7 +2556,7 @@ won't take effect until you reboot the system. } } - block_on_jobs(&dbus_conn, &submitted_jobs); + block_on_jobs(&dbus_conn, &submitted_jobs)?; remove_file_if_exists(START_LIST_FILE) .with_context(|| format!("Failed to remove {START_LIST_FILE}"))?; From 77cf7166fd9839ff0312e2db362b3f0c54c60539 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 18:22:37 +0000 Subject: [PATCH 37/69] python3Packages.elevenlabs: 2.52.0 -> 2.53.0 --- pkgs/development/python-modules/elevenlabs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/elevenlabs/default.nix b/pkgs/development/python-modules/elevenlabs/default.nix index 3d2fd1706ab7..b24800a0117e 100644 --- a/pkgs/development/python-modules/elevenlabs/default.nix +++ b/pkgs/development/python-modules/elevenlabs/default.nix @@ -14,14 +14,14 @@ buildPythonPackage (finalAttrs: { pname = "elevenlabs"; - version = "2.52.0"; + version = "2.53.0"; pyproject = true; src = fetchFromGitHub { owner = "elevenlabs"; repo = "elevenlabs-python"; tag = "v${finalAttrs.version}"; - hash = "sha256-Acqwa1zmDV4+xedGtabtB/utU4D5WkgbLyYCrmZiwFo="; + hash = "sha256-V/6zky0jekajrFZh+D6jlK3GSDN4Ms0mByi9CHceGo8="; }; build-system = [ poetry-core ]; From 93c9f9cde4d5dce13cc3bc45c5d90d1b7b0a80cf Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 20 Jun 2026 21:10:09 +0300 Subject: [PATCH 38/69] nixos/zigbee2mqtt: add AF_UNIX to RestrictAddressFamilies zigbee2mqtt supports listening on unix domain sockets, if a path is specified in the `frontend.host` config key. This currently fails with the following log message: > zigbee2mqtt[4551]: Error: listen EAFNOSUPPORT: address family not supported /path/to/zigbee2mqtt.sock Listening on unix domain sockets is a reasonable thing to have enabled, so let's add it to the list. --- nixos/modules/services/home-automation/zigbee2mqtt.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/services/home-automation/zigbee2mqtt.nix b/nixos/modules/services/home-automation/zigbee2mqtt.nix index 1372d2a8d097..5ec4d037073d 100644 --- a/nixos/modules/services/home-automation/zigbee2mqtt.nix +++ b/nixos/modules/services/home-automation/zigbee2mqtt.nix @@ -113,6 +113,7 @@ in "AF_INET" "AF_INET6" "AF_NETLINK" + "AF_UNIX" ]; RestrictNamespaces = true; RestrictRealtime = true; From 7d0391b4fb13e97bbee9a1f02e0f0c40a7915022 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 18:43:36 +0000 Subject: [PATCH 39/69] libretro.stella: 0-unstable-2026-06-09 -> 0-unstable-2026-06-19 --- pkgs/applications/emulators/libretro/cores/stella.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/emulators/libretro/cores/stella.nix b/pkgs/applications/emulators/libretro/cores/stella.nix index a662a9176249..183bdb93d559 100644 --- a/pkgs/applications/emulators/libretro/cores/stella.nix +++ b/pkgs/applications/emulators/libretro/cores/stella.nix @@ -5,13 +5,13 @@ }: mkLibretroCore { core = "stella"; - version = "0-unstable-2026-06-09"; + version = "0-unstable-2026-06-19"; src = fetchFromGitHub { owner = "stella-emu"; repo = "stella"; - rev = "3e3061809913e59a4378737127ce0ae95b36e889"; - hash = "sha256-fKivb4sFR4F0ub1NLpazLg3i3M9LOely08M8kBEczmo="; + rev = "65fc7d66abfc8dfba5033d88523437b83664ea2b"; + hash = "sha256-hYYZyHtWjo3BgX73Vxj8JG/2vQ7JtqT+4jPWLN+zZHw="; }; makefile = "Makefile"; From 17ec7a8e693c1f1ad239c193fb2e8f3f8927307a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 18:46:54 +0000 Subject: [PATCH 40/69] dnscontrol: 4.41.0 -> 4.42.0 --- pkgs/by-name/dn/dnscontrol/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/dn/dnscontrol/package.nix b/pkgs/by-name/dn/dnscontrol/package.nix index 0764db1ccbbb..ab68977f6656 100644 --- a/pkgs/by-name/dn/dnscontrol/package.nix +++ b/pkgs/by-name/dn/dnscontrol/package.nix @@ -9,16 +9,16 @@ buildGoModule (finalAttrs: { pname = "dnscontrol"; - version = "4.41.0"; + version = "4.42.0"; src = fetchFromGitHub { owner = "DNSControl"; repo = "dnscontrol"; tag = "v${finalAttrs.version}"; - hash = "sha256-oz4hF3W6QKjPda/6AZ7djeZr32oFMqdMD34gWLMnFRQ="; + hash = "sha256-iB2PFPvcASRwpBkFJQ3Vi2r89H3a9BBbC1moAymWDOI="; }; - vendorHash = "sha256-DQmfwSPdUnoSmVDiKlwrHifKR59KuMe+0DGJtavpmLc="; + vendorHash = "sha256-8rL5v/0Vb+gxmbDaEB57UsQEnKCJtbZh0lFUyKYMZgs="; nativeBuildInputs = [ installShellFiles ]; From 6bde945dcb9fc2605a0ffd2a0bd62ab10a794ad7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 18:59:19 +0000 Subject: [PATCH 41/69] par-lang: 0-unstable-2026-06-08 -> 0-unstable-2026-06-11 --- pkgs/by-name/pa/par-lang/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/pa/par-lang/package.nix b/pkgs/by-name/pa/par-lang/package.nix index 81636f9e52ed..bcdb75397a71 100644 --- a/pkgs/by-name/pa/par-lang/package.nix +++ b/pkgs/by-name/pa/par-lang/package.nix @@ -19,16 +19,16 @@ rustPlatform.buildRustPackage { pname = "par-lang"; - version = "0-unstable-2026-06-08"; + version = "0-unstable-2026-06-11"; src = fetchFromGitHub { owner = "par-team"; repo = "par-lang"; - rev = "00bc7dc279ec622c68dac81ff226dbb189f42cc4"; - hash = "sha256-a5uqmtTj+zS1C6ARu/y3aYykeBVINKSlh7p9fmAlsIs="; + rev = "0d763e90deb6bdd7888686a944efa8e1f813ded6"; + hash = "sha256-7UJwbusV+F/KI8Xvau/thRY60xRDfBc6xUdo5QhVayE="; }; - cargoHash = "sha256-IoZbNvCzeuOMVjfbTUGr+qs73IvFmPTK9rn6x40SYBQ="; + cargoHash = "sha256-8lG+cKN3/W+LYWhmOfDwGiq6u3nlLJaD5uNABaY0zRY="; nativeBuildInputs = [ pkg-config From 2fa5e39f1bc1851a16eb91a25edb820dcf01e186 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 19:38:06 +0000 Subject: [PATCH 42/69] terraform-providers.huaweicloud_huaweicloud: 1.92.0 -> 1.93.0 --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 8d9d1f7ccdcc..faf2cc285351 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -724,11 +724,11 @@ "vendorHash": "sha256-f49amYWzWSG9tzY6wvpxtTFiyJ8zC/Lc1hIQtzdgJRs=" }, "huaweicloud_huaweicloud": { - "hash": "sha256-4KRJhLnpKZwmL5aQqva8JZGDCYBzlGepE7zP6hwP+KY=", + "hash": "sha256-Ao3CkaQBe172Ookcgl+ugeHH5ClbyOsSpLb4+j9DAZQ=", "homepage": "https://registry.terraform.io/providers/huaweicloud/huaweicloud", "owner": "huaweicloud", "repo": "terraform-provider-huaweicloud", - "rev": "v1.92.0", + "rev": "v1.93.0", "spdx": "MPL-2.0", "vendorHash": null }, From a59931d83a08533e4e7ad851b8e4c492f9eca09c Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Sat, 20 Jun 2026 21:39:30 +0200 Subject: [PATCH 43/69] lxmf-rs: 0.4.1 -> 0.5.0 Diff: https://github.com/FreeTAKTeam/LXMF-rs/compare/v0.4.1...v0.5.0 Changelog: https://github.com/FreeTAKTeam/LXMF-rs/releases/tag/v0.5.0 --- pkgs/by-name/lx/lxmf-rs/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/lx/lxmf-rs/package.nix b/pkgs/by-name/lx/lxmf-rs/package.nix index 584938ee875a..f528141e83a7 100644 --- a/pkgs/by-name/lx/lxmf-rs/package.nix +++ b/pkgs/by-name/lx/lxmf-rs/package.nix @@ -13,14 +13,14 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "lxmf-rs"; - version = "0.4.1"; + version = "0.5.0"; __structuredAttrs = true; src = fetchFromGitHub { owner = "FreeTAKTeam"; repo = "LXMF-rs"; tag = "v${finalAttrs.version}"; - hash = "sha256-GCN4HpqbCM2xCBpBRpUALmHGfhOm1qZScdYgBqJqLQU="; + hash = "sha256-9yTteJCH/5/LGvp6AH74oKYcnue1NetD7DG3fMz+D2Y="; }; cargoHash = "sha256-a6O1VslizDom6AuJKF5xZgKNSgrw1EfvJRWpG9J7Le8="; From bd063fbbeef4ad7f772fa937cc7e4b5b2bd76619 Mon Sep 17 00:00:00 2001 From: Michael Daniels Date: Sat, 20 Jun 2026 15:29:41 -0400 Subject: [PATCH 44/69] oggvideotools: unbreak on Darwin, add patches --- pkgs/by-name/di/diffoscope/package.nix | 3 +- pkgs/by-name/og/oggvideotools/package.nix | 81 +++++++++++++++++------ 2 files changed, 62 insertions(+), 22 deletions(-) diff --git a/pkgs/by-name/di/diffoscope/package.nix b/pkgs/by-name/di/diffoscope/package.nix index 1a7cfa3bade6..f417db3d7fc5 100644 --- a/pkgs/by-name/di/diffoscope/package.nix +++ b/pkgs/by-name/di/diffoscope/package.nix @@ -232,6 +232,7 @@ python.pkgs.buildPythonApplication rec { mono ocaml odt2txt + oggvideotools openssh pdftk perl @@ -255,8 +256,6 @@ python.pkgs.buildPythonApplication rec { r2pipe # docx2txt, nixpkgs packages another project named the same, which does not work ]) - # oggvideotools is broken on Darwin, please put it back when it will be fixed? - ++ lib.optionals stdenv.hostPlatform.isLinux [ oggvideotools ] # Causes an eval failure # See https://github.com/NixOS/nixpkgs/issues/463873 ++ lib.optionals (!stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch64) [ diff --git a/pkgs/by-name/og/oggvideotools/package.nix b/pkgs/by-name/og/oggvideotools/package.nix index 33b4e50ee1f3..8b371823f096 100644 --- a/pkgs/by-name/og/oggvideotools/package.nix +++ b/pkgs/by-name/og/oggvideotools/package.nix @@ -3,6 +3,8 @@ stdenv, fetchurl, fetchpatch, + fetchDebianPatch, + libresample, cmake, pkg-config, boost, @@ -22,29 +24,71 @@ stdenv.mkDerivation (finalAttrs: { }; patches = [ - # Fix pending upstream inclusion for missing includes: - # https://sourceforge.net/p/oggvideotools/bugs/12/ - (fetchpatch { - name = "gcc-10.patch"; - url = "https://sourceforge.net/p/oggvideotools/bugs/12/attachment/fix-compile.patch"; - hash = "sha256-mJttoC3jCLM3vmPhlyqh+W0ryp2RjJGIBXd6sJfLJA4="; + # Avoid crashing in oggjoin on bogus input + (fetchDebianPatch { + inherit (finalAttrs) pname version; + debianRevision = "7"; + patch = "mayhem-crash-oggjoin.patch"; + hash = "sha256-0D22P+Qdf9Sfp6vptSnL4E33NVUL/XL72gNE36BF6QI="; }) - - # Fix pending upstream inclusion for build failure on gcc-12: - # https://sourceforge.net/p/oggvideotools/bugs/13/ + # Fix typos in manpages + (fetchDebianPatch { + inherit (finalAttrs) pname version; + debianRevision = "7"; + patch = "manual-typos.patch"; + hash = "sha256-yGzHGEADlSRnWZIN8x6xfg9ChAn8WKFQgZAJmbKtKq8="; + }) + # Avoid crash on unknown command-line arguments + (fetchDebianPatch { + inherit (finalAttrs) pname version; + debianRevision = "7"; + patch = "oggThumb-zero-getopt-long.patch"; + hash = "sha256-LBgmpyyxmeAFE3zpeHRryuxboMBdBztUEGxbs0Ay+HU="; + }) + # Prevent uninitialized read + (fetchDebianPatch { + inherit (finalAttrs) pname version; + debianRevision = "7"; + patch = "init-for-valgrind.patch"; + hash = "sha256-7BtdAGHHW860hFZYlRWDVfEw6CDkb18HfFROZHl+guY="; + }) + # Fix compilation due to missing include + (fetchDebianPatch { + inherit (finalAttrs) pname version; + debianRevision = "7"; + patch = "import-cstring.patch"; + hash = "sha256-KMs4nyILveKY+ZmcSONmtS5+sAPPB+ypNUi9yzxBsXQ="; + }) + # Fix out-of-bounds read (fetchpatch { - name = "gcc-12.patch"; - url = "https://sourceforge.net/p/oggvideotools/bugs/13/attachment/fix-gcc-12.patch"; - hash = "sha256-zuDXe86djWkR8SgYZHkuAJJ7Lf2VYsVRBrlEaODtMKE="; - # svn patch, rely on prefix added by fetchpatch: - extraPrefix = ""; + url = "https://salsa.debian.org/multimedia-team/oggvideotools/-/raw/ed006e5d78f9509508dbc72277de8ab3c06d2362/debian/patches/1010-kate-header-buffer-read-past-end.patch"; + hash = "sha256-CEkNG9tHZIggCvKRPj2pKI855pVWQUdudLfpda/ZVME="; + }) + # Fix null pointer crash (CVE-2020-21723) + (fetchpatch { + url = "https://salsa.debian.org/multimedia-team/oggvideotools/-/raw/122047a7cf644e282906370f277ae83b4672e5e4/debian/patches/1020-CVE-2020-21723-null-pointer-crash.patch"; + hash = "sha256-dUkMfEaB5Hn9I5+QbE/002X6ij+xIzzqjc8QTom1ITk="; + }) + # Unbundle libresample + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/oggvideotools/raw/23f918f39278d87adb5a5ab2e57d5cc1816e1e8a/f/0005-unbundle-libresample.patch"; + hash = "sha256-JSuH8ScYBi6zAgEhrFdPOGCSXzDk+lEnSHX9wuctAsg="; + }) + # Fix buffer overflow (CVE-2020-21724) + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/oggvideotools/raw/2dd078ea81773a34cc0c4817ebbf3c4038b8098c/f/stream-serializer.diff"; + hash = "sha256-3HkAuCBaNjKoTN8Q3oW89e3zXo13Ev5g7VJ/RPO3zRA="; }) ]; postPatch = '' # Don't disable optimisations - substituteInPlace CMakeLists.txt --replace " -O0 " "" - ''; + substituteInPlace CMakeLists.txt --replace-fail " -O0 " "" + '' + # Fix "src/effect/pictureBlend.cpp:28:11: error: no matching conversion for functional-style cast from 'const char[39]' to 'OggException'" + + (lib.optionalString stdenv.hostPlatform.isDarwin '' + sed -i '1i #include ' src/effect/pictureBlend.cpp + ''); nativeBuildInputs = [ cmake @@ -55,6 +99,7 @@ stdenv.mkDerivation (finalAttrs: { boost gd libogg + libresample libtheora libvorbis ]; @@ -69,9 +114,5 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://sourceforge.net/projects/oggvideotools/"; license = lib.licenses.gpl2Only; maintainers = [ ]; - # Compilation error on Darwin: - # error: invalid argument '--std=c++0x' not allowed with 'C' - # make[2]: *** [src/libresample/CMakeFiles/resample.dir/build.make:76: src/libresample/CMakeFiles/resample.dir/filterkit.c.o] Error 1 - broken = stdenv.hostPlatform.isDarwin; }; }) From be320f9112960e5ef3155b7e98ed6ad75613f442 Mon Sep 17 00:00:00 2001 From: yvnth Date: Sun, 21 Jun 2026 01:29:06 +0530 Subject: [PATCH 45/69] just-lsp: 0.4.6 -> 0.4.7 --- pkgs/by-name/ju/just-lsp/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ju/just-lsp/package.nix b/pkgs/by-name/ju/just-lsp/package.nix index eb9ea1b0f1b1..54d294178e08 100644 --- a/pkgs/by-name/ju/just-lsp/package.nix +++ b/pkgs/by-name/ju/just-lsp/package.nix @@ -8,7 +8,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "just-lsp"; - version = "0.4.6"; + version = "0.4.7"; __structuredAttrs = true; @@ -16,10 +16,10 @@ rustPlatform.buildRustPackage (finalAttrs: { owner = "terror"; repo = "just-lsp"; tag = finalAttrs.version; - hash = "sha256-x58iZ1TSwMZSPQsxlXeMgBxBMezCLJkbGFMWE4gV2PE="; + hash = "sha256-Z35pRJDDUdyjz9Tw66wgBYjYicJCO87EI/J3Nux8udE="; }; - cargoHash = "sha256-XSXzCTbacnxuK9rjuRhnNu9uglK+H1Ixfm00A+6O5MM="; + cargoHash = "sha256-qAeUk+1WmQ5TPdfJcoM+mrFVOfhhdVZnyBhxfzyh1Tc="; nativeInstallCheckInputs = [ versionCheckHook From e1ec94ffd9feeb4fff53b55a234a77d175a5e9e4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 20:11:54 +0000 Subject: [PATCH 46/69] waywall: 0.2026.02.06 -> 0.2026.06.13 --- pkgs/by-name/wa/waywall/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/wa/waywall/package.nix b/pkgs/by-name/wa/waywall/package.nix index 6aea66a874b5..c96f7a9a6a5b 100644 --- a/pkgs/by-name/wa/waywall/package.nix +++ b/pkgs/by-name/wa/waywall/package.nix @@ -19,13 +19,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "waywall"; - version = "0.2026.02.06"; + version = "0.2026.06.13"; src = fetchFromGitHub { owner = "tesselslate"; repo = "waywall"; tag = finalAttrs.version; - hash = "sha256-SlT7B01sAKE3n9HVnE+t9hcbQnr5qcCBsBAy4btN0mw="; + hash = "sha256-y4haKw4Z8wqtOT5eTEt/tUqbr4FoYf5EbH63uyTGDow="; }; nativeBuildInputs = [ From 2fb282b5937f3802f5767126410c79044ccb1465 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 20:17:46 +0000 Subject: [PATCH 47/69] libretro.np2kai: 0-unstable-2026-05-09 -> 0-unstable-2026-06-19 --- pkgs/applications/emulators/libretro/cores/np2kai.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/emulators/libretro/cores/np2kai.nix b/pkgs/applications/emulators/libretro/cores/np2kai.nix index c8ce21d781ed..b5a7edf8d4d5 100644 --- a/pkgs/applications/emulators/libretro/cores/np2kai.nix +++ b/pkgs/applications/emulators/libretro/cores/np2kai.nix @@ -5,13 +5,13 @@ }: mkLibretroCore rec { core = "np2kai"; - version = "0-unstable-2026-05-09"; + version = "0-unstable-2026-06-19"; src = fetchFromGitHub { owner = "AZO234"; repo = "NP2kai"; - rev = "eebb95c060f82df45a5615be676c3fa4b7bb7ae0"; - hash = "sha256-KBvxqxCeYyIKCTHdcczwpgHBIZds6xMfHt6LblRRoFc="; + rev = "e2dc9046aa5c786fcfbfb87e883457e421026e31"; + hash = "sha256-35LWLk4U1B1NjXN94QN5nsMMXCmo+VKOVWhzFdZ79oc="; fetchSubmodules = true; }; From a832c634035e09f38229c64f0d79e1bb6a783b95 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 20:31:02 +0000 Subject: [PATCH 48/69] postgresqlPackages.pgsql-http: 1.7.0 -> 1.7.1 --- pkgs/servers/sql/postgresql/ext/pgsql-http.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/sql/postgresql/ext/pgsql-http.nix b/pkgs/servers/sql/postgresql/ext/pgsql-http.nix index c1ab46736b9f..10e47558eb4f 100644 --- a/pkgs/servers/sql/postgresql/ext/pgsql-http.nix +++ b/pkgs/servers/sql/postgresql/ext/pgsql-http.nix @@ -8,13 +8,13 @@ postgresqlBuildExtension (finalAttrs: { pname = "pgsql-http"; - version = "1.7.0"; + version = "1.7.1"; src = fetchFromGitHub { owner = "pramsey"; repo = "pgsql-http"; tag = "v${finalAttrs.version}"; - hash = "sha256-tgmty8ZYpSEccwQouI/Ho2M495k6DizbMaaJ0+aW03Q="; + hash = "sha256-vTOLAv0TYks8ubQa/y7+XjaIZuHEfh2wi2I38UNJ7NM="; }; buildInputs = [ curl ]; From 9a6ddc724ee2ace859bafd3701c7b33fef6f150f Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Tue, 9 Jun 2026 17:30:47 +0000 Subject: [PATCH 49/69] python3Packages.compressed-tensors: 0.15.0.1 -> 0.17.1 --- .../compressed-tensors/default.nix | 53 ++++++++++++++++++- 1 file changed, 51 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/compressed-tensors/default.nix b/pkgs/development/python-modules/compressed-tensors/default.nix index 9134ea3380e6..06f3b6d3e459 100644 --- a/pkgs/development/python-modules/compressed-tensors/default.nix +++ b/pkgs/development/python-modules/compressed-tensors/default.nix @@ -17,14 +17,16 @@ transformers, # tests + accelerate, nbconvert, nbformat, pytestCheckHook, + writableTmpDirAsHomeHook, }: buildPythonPackage (finalAttrs: { pname = "compressed-tensors"; - version = "0.15.0.1"; + version = "0.17.1"; pyproject = true; # Release on PyPI is missing the `utils` directory, which `setup.py` wants to import @@ -32,7 +34,7 @@ buildPythonPackage (finalAttrs: { owner = "neuralmagic"; repo = "compressed-tensors"; tag = finalAttrs.version; - hash = "sha256-iiYo3Vne2CYlj+wMHxQFTTU7gb8oNwPtCe873nX5KgA="; + hash = "sha256-14AHbokDlN5iXy/fvOq7Xp1OS8N1b+Xpxd33KOylWiU="; }; postPatch = '' @@ -60,9 +62,11 @@ buildPythonPackage (finalAttrs: { pythonImportsCheck = [ "compressed_tensors" ]; nativeCheckInputs = [ + accelerate nbconvert nbformat pytestCheckHook + writableTmpDirAsHomeHook ]; disabledTests = [ @@ -87,10 +91,44 @@ buildPythonPackage (finalAttrs: { "test_set_item_buffers" "test_update_offload_parameter_with_grad" ] + ++ lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [ + # aarch64-linux fails cpuinfo test, because /sys/devices/system/cpu/ does not exist in the sandbox: + # RuntimeError: Failed to initialize cpuinfo! + "test_mxfp4_scales_e2e" + "test_mxfp8_scales_e2e" + ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ # torch._inductor.exc.InductorError: ImportError: dlopen(/nix/var/nix/builds/nix-25002-542173852/torchinductor__nixbld1/xo/cxovsevcfanmw7lgoddbnyhoxes3nzlu7ecugxedaq2zr4f6b2qh.main.so, 0x0002): # symbol not found in flat namespace '___kmpc_barrier' "test_compress_decompress_module" + + # AssertionError: Torch not compiled with CUDA enabled + "test_match_quantizable_tensors" + "test_narrow_match_true_child_only" + "test_narrow_match_false_when_parent_also_matches" + "test_narrow_match_false_when_neither_matches" + "test_narrow_match_iterable_targets_any_true" + "test_narrow_match_with_explicit_module_argument" + "test_narrow_match_top_level_behavior_documented" + "test_complex_model_matching" + "test_parameter_and_module_consistency" + "test_all_functions_with_regex" + "test_match_quantizable_tensors" + "test_mtp_tensors_saved_correctly" + "test_index_updated" + "test_single_shard_dest_creates_index" + "test_no_mtp_tensors_raises" + "test_missing_dest_files_raises" + "test_custom_mtp_prefix" + "test_apply_config_detects_deepseekv3_attention_and_hooks" + "test_initialize_module_for_quantization_offloaded" + "test_correctness_model" + "test_random_matrix_device_handling" + "test_memory_sharing" + "test_attention_cache" + + # TypeError: Trying to convert Float8_e4m3fn to the MPS backend but it does not have support for that dtype. + "test_compressed_model_inference_with_hook" ]; disabledTestPaths = [ @@ -111,6 +149,17 @@ buildPythonPackage (finalAttrs: { "tests/test_transform/factory/test_serialization.py::test_serialization[True-True-random-hadamard]" "tests/test_transform/factory/test_serialization.py::test_serialization[True-False-hadamard]" "tests/test_transform/factory/test_serialization.py::test_serialization[True-False-random-hadamard]" + + # AttributeError: 'NoneType' object has no attribute 'type' + "tests/test_compressors/distributed/test_distributed_compression.py" + "tests/test_compressors/distributed/test_module_parallel.py" + "tests/test_compressors/model_compressors/test_model_compressor_distributed.py" + "tests/test_offload" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + # AssertionError: Torch not compiled with CUDA enabled + "tests/test_transform/utils/test_hadamard.py" + "tests/test_utils/test_match.py" ]; meta = { From 0cadcfb613e8ef6be52a16124cc1fa425c374845 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Thu, 14 May 2026 13:06:47 -0400 Subject: [PATCH 50/69] lib.systems: define let variables outside of function --- lib/systems/parse.nix | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 98db2595235f..833340cd39dc 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -888,6 +888,12 @@ rec { # This should revert the job done by config.guess from the gcc compiler. mkSystemFromSkeleton = + let + getCpu = name: cpuTypes.${name} or (throw "Unknown CPU type: ${name}"); + getVendor = name: vendors.${name} or (throw "Unknown vendor: ${name}"); + getKernel = name: kernels.${name} or (throw "Unknown kernel: ${name}"); + getAbi = name: abis.${name} or (throw "Unknown ABI: ${name}"); + in { cpu, # Optional, but fallback too complex for here. @@ -902,11 +908,6 @@ rec { null, }@args: let - getCpu = name: cpuTypes.${name} or (throw "Unknown CPU type: ${name}"); - getVendor = name: vendors.${name} or (throw "Unknown vendor: ${name}"); - getKernel = name: kernels.${name} or (throw "Unknown kernel: ${name}"); - getAbi = name: abis.${name} or (throw "Unknown ABI: ${name}"); - parsed = { cpu = getCpu args.cpu; vendor = From bc4b353bff355ac5ef69609a525285a93029db04 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Thu, 14 May 2026 12:52:04 -0400 Subject: [PATCH 51/69] lib.attrsets.matchAttrs: only assert isAttrs once --- lib/attrsets.nix | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/lib/attrsets.nix b/lib/attrsets.nix index 7dae595c9e39..96af967c53f8 100644 --- a/lib/attrsets.nix +++ b/lib/attrsets.nix @@ -1800,22 +1800,27 @@ rec { ::: */ matchAttrs = - pattern: attrs: + let + recurse = + pattern: attrs: + all ( + # Compare equality between `pattern` & `attrs`. + attr: + # Missing attr, not equal. + attrs ? ${attr} + && ( + let + lhs = pattern.${attr}; + rhs = attrs.${attr}; + in + # If attrset check recursively + if isAttrs lhs then isAttrs rhs && recurse lhs rhs else lhs == rhs + ) + ) (attrNames pattern); + in + pattern: assert isAttrs pattern; - all ( - # Compare equality between `pattern` & `attrs`. - attr: - # Missing attr, not equal. - attrs ? ${attr} - && ( - let - lhs = pattern.${attr}; - rhs = attrs.${attr}; - in - # If attrset check recursively - if isAttrs lhs then isAttrs rhs && matchAttrs lhs rhs else lhs == rhs - ) - ) (attrNames pattern); + recurse pattern; /** Override only the attributes that are already present in the old set From e7a80a05103903386f33f72a0b527b4c1e38d114 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Thu, 14 May 2026 13:19:00 -0400 Subject: [PATCH 52/69] lib.attrsets.matchAttrs: check attrset equality before recursing --- lib/attrsets.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/attrsets.nix b/lib/attrsets.nix index 96af967c53f8..811225c542f1 100644 --- a/lib/attrsets.nix +++ b/lib/attrsets.nix @@ -1813,8 +1813,9 @@ rec { lhs = pattern.${attr}; rhs = attrs.${attr}; in - # If attrset check recursively - if isAttrs lhs then isAttrs rhs && recurse lhs rhs else lhs == rhs + # Simple equality check is primarily for non-attrsets, but we run it + # on attrsets too, since it may let us avoid recursing + lhs == rhs || isAttrs lhs && isAttrs rhs && recurse lhs rhs ) ) (attrNames pattern); in From d65d6f570ff74f35cb243ee6fd9975afb00d3798 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Thu, 14 May 2026 13:06:28 -0400 Subject: [PATCH 53/69] lib.systems: define matchAttrs locally Skipping the assertion. --- lib/systems/inspect.nix | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix index 36a4036f210a..da8d60c8a802 100644 --- a/lib/systems/inspect.nix +++ b/lib/systems/inspect.nix @@ -2,14 +2,16 @@ let inherit (lib) + all any + attrNames attrValues concatMap filter hasPrefix + isAttrs isList mapAttrs - matchAttrs recursiveUpdateUntil toList ; @@ -24,19 +26,43 @@ let execFormats ; + # Based on lib.attrsets.matchAttrs, but with the initial isAttrs assertion + # removed, since this function is only ever called with attrsets + matchAttrsUnchecked = + pattern: attrs: + all ( + # Compare equality between `pattern` & `attrs`. + attr: + # Missing attr, not equal. + attrs ? ${attr} + && ( + let + lhs = pattern.${attr}; + rhs = attrs.${attr}; + in + # Simple equality check is primarily for non-attrsets, but we run it + # on attrsets too, since it may let us avoid recursing + lhs == rhs || isAttrs lhs && isAttrs rhs && matchAttrsUnchecked lhs rhs + ) + ) (attrNames pattern); + abis = mapAttrs (_: abi: removeAttrs abi [ "assertions" ]) lib.systems.parse.abis; in rec { # these patterns are to be matched against {host,build,target}Platform.parsed + # + # Note: All toplevel attributes within a pattern are expected to be attrsets. + # matchAttrsUnchecked should be changed if a pattern is ever added that + # doesn't follow this axiom patterns = rec { # The patterns below are lists in sum-of-products form. # # Each attribute is list of product conditions; non-list values are treated # as a singleton list. If *any* product condition in the list matches then # the predicate matches. Each product condition is tested by - # `lib.attrsets.matchAttrs`, which requires a match on *all* attributes of - # the product. + # `matchAttrsUnchecked`, which requires a match on *all* attributes of the + # product. isi686 = { cpu = cpuTypes.i686; @@ -492,9 +518,9 @@ rec { matchAnyAttrs = patterns: if isList patterns then - attrs: any (pattern: matchAttrs pattern attrs) patterns + attrs: any (pattern: matchAttrsUnchecked pattern attrs) patterns else - matchAttrs patterns; + matchAttrsUnchecked patterns; predicates = mapAttrs (_: matchAnyAttrs) patterns; From 88d7ba7fc76a9a85f0e8a8f3cab2e5fcf697372e Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Thu, 14 May 2026 13:25:58 -0400 Subject: [PATCH 54/69] lib.systems: only run isAttrs on one side when recursing --- lib/systems/inspect.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix index da8d60c8a802..d60a8fc70f87 100644 --- a/lib/systems/inspect.nix +++ b/lib/systems/inspect.nix @@ -26,8 +26,11 @@ let execFormats ; - # Based on lib.attrsets.matchAttrs, but with the initial isAttrs assertion - # removed, since this function is only ever called with attrsets + # Based on lib.attrsets.matchAttrs, but with: + # - the initial isAttrs assertion removed, since this function is only ever + # called with attrsets + # - isAttrs only performed on one side when recursing, since our input data + # will always share a structure matchAttrsUnchecked = pattern: attrs: all ( @@ -42,7 +45,7 @@ let in # Simple equality check is primarily for non-attrsets, but we run it # on attrsets too, since it may let us avoid recursing - lhs == rhs || isAttrs lhs && isAttrs rhs && matchAttrsUnchecked lhs rhs + lhs == rhs || isAttrs lhs && matchAttrsUnchecked lhs rhs ) ) (attrNames pattern); From c5cb2f465cad24fcd40d619eaf4e5b7441d1d0f2 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Thu, 14 May 2026 14:29:08 -0400 Subject: [PATCH 55/69] lib.systems: cache attrNames calls for each pattern --- lib/systems/inspect.nix | 40 +++++++++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 7 deletions(-) diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix index d60a8fc70f87..146e9a9f4389 100644 --- a/lib/systems/inspect.nix +++ b/lib/systems/inspect.nix @@ -518,14 +518,40 @@ rec { ) pat2 ) pat1; - matchAnyAttrs = - patterns: - if isList patterns then - attrs: any (pattern: matchAttrsUnchecked pattern attrs) patterns - else - matchAttrsUnchecked patterns; + matchAnyPattern = + let + # same as matchAttrsUnchecked definition at the top of the file, but: + # - pattern names are cached and reused for multiple attrset calls + # - avoid running isAttrs since all patterns are nested attrsets + matchPattern = + pattern: + let + names = attrNames pattern; + in + attrs: + all ( + attr: + attrs ? ${attr} + && ( + let + lhs = pattern.${attr}; + rhs = attrs.${attr}; + in + lhs == rhs || matchAttrsUnchecked lhs rhs + ) + ) names; - predicates = mapAttrs (_: matchAnyAttrs) patterns; + in + pattern: + if isList pattern then + let + cachedPatterns = map matchPattern pattern; + in + attrs: any (pattern: pattern attrs) cachedPatterns + else + matchPattern pattern; + + predicates = mapAttrs (_: matchAnyPattern) patterns; # these patterns are to be matched against the entire # {host,build,target}Platform structure; they include a `parsed={}` marker so From 50cf7fe9dce6149dcf84d454ca278888cce1a3f1 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Sat, 16 May 2026 13:48:58 -0400 Subject: [PATCH 56/69] stdenv/check-meta: move to within lib/ This is going to be used in lib.systems, which isn't allowed to import from outside the lib folder. We don't actually expose this through lib, though. --- {pkgs/stdenv/generic => lib}/meta-types.nix | 3 ++- pkgs/stdenv/generic/check-meta.nix | 2 +- pkgs/stdenv/generic/problems.nix | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) rename {pkgs/stdenv/generic => lib}/meta-types.nix (97%) diff --git a/pkgs/stdenv/generic/meta-types.nix b/lib/meta-types.nix similarity index 97% rename from pkgs/stdenv/generic/meta-types.nix rename to lib/meta-types.nix index 1396243e3002..73512531ae44 100644 --- a/pkgs/stdenv/generic/meta-types.nix +++ b/lib/meta-types.nix @@ -1,6 +1,7 @@ { lib }: # Simple internal type checks for meta. -# This file is not a stable interface and may be changed arbitrarily. +# This file is only intended for internal nixpkgs use. +# It is not a stable interface and may be changed arbitrarily. # # TODO: add a method to the module system types # see https://github.com/NixOS/nixpkgs/pull/273935#issuecomment-1854173100 diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix index 70c009c3e83a..780e98ed3adc 100644 --- a/pkgs/stdenv/generic/check-meta.nix +++ b/pkgs/stdenv/generic/check-meta.nix @@ -300,7 +300,7 @@ let metaType = let - types = import ./meta-types.nix { inherit lib; }; + types = import ../../../lib/meta-types.nix { inherit lib; }; inherit (types) str union diff --git a/pkgs/stdenv/generic/problems.nix b/pkgs/stdenv/generic/problems.nix index 0f03c393e384..114d586c0df6 100644 --- a/pkgs/stdenv/generic/problems.nix +++ b/pkgs/stdenv/generic/problems.nix @@ -242,7 +242,7 @@ rec { # The type for meta.problems problemsType = let - types = import ./meta-types.nix { inherit lib; }; + types = import ../../../lib/meta-types.nix { inherit lib; }; inherit (types) str listOf From bbad0fcf206fe30c5ac8e404a05557ba450a45b7 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 02:33:12 -0400 Subject: [PATCH 57/69] stdenv/meta-types: support non-strings in enums --- lib/meta-types.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/meta-types.nix b/lib/meta-types.nix index 73512531ae44..1d67f5f063e8 100644 --- a/lib/meta-types.nix +++ b/lib/meta-types.nix @@ -173,10 +173,10 @@ lib.fix (self: { enum = values: - assert isList values && all isString values; + assert isList values; { - name = "enum<${concatStringsSep "," values}>"; - verify = v: isString v && elem v values; + name = if all isString values then "enum<${concatStringsSep "," values}>" else "enum"; + verify = v: elem v values; }; record = From 792207ab34b2f896b3437917d9a4433b12e179ea Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 08:33:26 -0400 Subject: [PATCH 58/69] lib.systems.parse: rewrite to use meta-types --- lib/systems/parse.nix | 88 +++++++++++++++++++------------------------ 1 file changed, 38 insertions(+), 50 deletions(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 833340cd39dc..f4dedd59da2f 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -17,6 +17,9 @@ { lib }: let + inherit (import ../meta-types.nix { inherit lib; }) + enum + ; inherit (lib) all any @@ -28,7 +31,6 @@ let id length mapAttrs - mergeOneOption optionalString splitString versionAtLeast @@ -46,20 +48,16 @@ let isCygwin ; - inherit (lib.types) - enum - isType - mkOptionType - setType - ; - setTypes = type: - mapAttrs ( - name: value: - assert type.check value; - setType type.name ({ inherit name; } // value) - ); + if type ? verify then + mapAttrs ( + name: value: + assert type.verify value; + { inherit name; } // value + ) + else + mapAttrs (name: value: { inherit name; } // value); # gnu-config will ignore the portion of a triple matching the # regex `e?abi.*$` when determining the validity of a triple. In @@ -76,11 +74,9 @@ in rec { ################################################################################ - - types.openSignificantByte = mkOptionType { + types.openSignificantByte = { name = "significant-byte"; description = "Endianness"; - merge = mergeOneOption; }; types.significantByte = enum (attrValues significantBytes); @@ -103,21 +99,20 @@ rec { ################################################################################ - types.openCpuType = mkOptionType { + types.openCpuType = { name = "cpu-type"; description = "instruction set architecture name and information"; - merge = mergeOneOption; - check = - x: - types.bitWidth.check x.bits - && (if 8 < x.bits then types.significantByte.check x.significantByte else !(x ? significantByte)); + verify = + v: + types.bitWidth.verify v.bits + && (if 8 < v.bits then types.significantByte.verify v.significantByte else !(v ? significantByte)); }; types.cpuType = enum (attrValues cpuTypes); cpuTypes = let - inherit (significantBytes) bigEndian littleEndian; + inherit (significantBytes) littleEndian bigEndian; in setTypes types.openCpuType { arm = { @@ -487,10 +482,9 @@ rec { ################################################################################ - types.openVendor = mkOptionType { + types.openVendor = { name = "vendor"; description = "vendor for the platform"; - merge = mergeOneOption; }; types.vendor = enum (attrValues vendors); @@ -499,23 +493,19 @@ rec { apple = { }; pc = { }; knuth = { }; - # Actually matters, unlocking some MinGW-w64-specific options in GCC. See # bottom of https://sourceforge.net/p/mingw-w64/wiki2/Unicode%20apps/ w64 = { }; - none = { }; unknown = { }; }; ################################################################################ - types.openExecFormat = mkOptionType { + types.openExecFormat = { name = "exec-format"; description = "executable container used by the kernel"; - merge = mergeOneOption; }; - types.execFormat = enum (attrValues execFormats); execFormats = setTypes types.openExecFormat { @@ -524,16 +514,14 @@ rec { macho = { }; pe = { }; wasm = { }; - unknown = { }; }; ################################################################################ - types.openKernelFamily = mkOptionType { + types.openKernelFamily = { name = "exec-format"; description = "executable container used by the kernel"; - merge = mergeOneOption; }; types.kernelFamily = enum (attrValues kernelFamilies); @@ -545,12 +533,11 @@ rec { ################################################################################ - types.openKernel = mkOptionType { - name = "kernel"; + types.openKernel = { + name = "open-kernel"; description = "kernel name and information"; - merge = mergeOneOption; - check = - x: types.execFormat.check x.execFormat && all types.kernelFamily.check (attrValues x.families); + verify = + v: types.execFormat.verify v.execFormat && all types.kernelFamily.verify (attrValues v.families); }; types.kernel = enum (attrValues kernels); @@ -647,10 +634,9 @@ rec { ################################################################################ - types.openAbi = mkOptionType { + types.openAbi = { name = "abi"; description = "binary interface for compiled code and syscalls"; - merge = mergeOneOption; }; types.abi = enum (attrValues abis); @@ -760,29 +746,31 @@ rec { ################################################################################ - types.parsedPlatform = mkOptionType { + types.parsedPlatform = { name = "system"; description = "fully parsed representation of llvm- or nix-style platform tuple"; - merge = mergeOneOption; - check = + verify = { cpu, vendor, kernel, abi, }: - types.cpuType.check cpu - && types.vendor.check vendor - && types.kernel.check kernel - && types.abi.check abi; + types.cpuType.verify cpu + && types.vendor.verify vendor + && types.kernel.verify kernel + && types.abi.verify abi; }; - isSystem = isType "system"; + isSystem = v: v._type or null == "system"; mkSystem = components: - assert types.parsedPlatform.check components; - setType "system" components; + assert types.parsedPlatform.verify components; + components + // { + _type = "system"; + }; mkSkeletonFromList = l: From 753e3defc22d9e3be221229379eb4a67e04fb181 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 08:37:25 -0400 Subject: [PATCH 59/69] lib.systems.parse: inherit verification functions --- lib/systems/parse.nix | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index f4dedd59da2f..d51bb63d05a4 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -51,9 +51,12 @@ let setTypes = type: if type ? verify then + let + inherit (type) verify; + in mapAttrs ( name: value: - assert type.verify value; + assert verify value; { inherit name; } // value ) else @@ -103,9 +106,13 @@ rec { name = "cpu-type"; description = "instruction set architecture name and information"; verify = + let + verifyBitWidth = types.bitWidth.verify; + verifySignificantByte = types.significantByte.verify; + in v: - types.bitWidth.verify v.bits - && (if 8 < v.bits then types.significantByte.verify v.significantByte else !(v ? significantByte)); + verifyBitWidth v.bits + && (if 8 < v.bits then verifySignificantByte v.significantByte else !(v ? significantByte)); }; types.cpuType = enum (attrValues cpuTypes); @@ -537,7 +544,11 @@ rec { name = "open-kernel"; description = "kernel name and information"; verify = - v: types.execFormat.verify v.execFormat && all types.kernelFamily.verify (attrValues v.families); + let + verifyExecFormat = types.execFormat.verify; + verifyKernelFamily = types.kernelFamily.verify; + in + v: verifyExecFormat v.execFormat && all verifyKernelFamily (attrValues v.families); }; types.kernel = enum (attrValues kernels); @@ -750,23 +761,29 @@ rec { name = "system"; description = "fully parsed representation of llvm- or nix-style platform tuple"; verify = + let + verifyCpu = types.cpuType.verify; + verifyVendor = types.vendor.verify; + verifyKernel = types.kernel.verify; + verifyAbi = types.abi.verify; + in { cpu, vendor, kernel, abi, }: - types.cpuType.verify cpu - && types.vendor.verify vendor - && types.kernel.verify kernel - && types.abi.verify abi; + verifyCpu cpu && verifyVendor vendor && verifyKernel kernel && verifyAbi abi; }; isSystem = v: v._type or null == "system"; mkSystem = + let + inherit (types.parsedPlatform) verify; + in components: - assert types.parsedPlatform.verify components; + assert verify components; components // { _type = "system"; From c344980c195df0e785b23a1c04d304060f281823 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 09:18:12 -0400 Subject: [PATCH 60/69] lib.systems.parse: avoid some function calls --- lib/systems/parse.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index d51bb63d05a4..46f75a4aca92 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -898,6 +898,8 @@ rec { getVendor = name: vendors.${name} or (throw "Unknown vendor: ${name}"); getKernel = name: kernels.${name} or (throw "Unknown kernel: ${name}"); getAbi = name: abis.${name} or (throw "Unknown ABI: ${name}"); + hasDarwinPrefix = hasPrefix "darwin"; + hasBsdPrefix = hasPrefix "netbsd"; in { cpu, @@ -925,10 +927,10 @@ rec { else vendors.unknown; kernel = - if hasPrefix "darwin" args.kernel then - getKernel "darwin" - else if hasPrefix "netbsd" args.kernel then - getKernel "netbsd" + if hasDarwinPrefix args.kernel then + kernels.darwin + else if hasBsdPrefix args.kernel then + kernels.netbsd else getKernel (removeAbiSuffix args.kernel); abi = From 14da2748d2bf515d5515749c6380811a096649e3 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 09:31:18 -0400 Subject: [PATCH 61/69] lib.systems.parse: define variables for components --- lib/systems/parse.nix | 62 +++++++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 26 deletions(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 46f75a4aca92..4fd9497ff0a5 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -793,48 +793,58 @@ rec { l: { "1" = - if head l == "avr" then + let + firstComponent = head l; + in + if firstComponent == "avr" then { - cpu = head l; + cpu = firstComponent; kernel = "none"; abi = "unknown"; } else throw "system string '${lib.concatStringsSep "-" l}' with 1 component is ambiguous"; "2" = # We only do 2-part hacks for things Nix already supports - if elemAt l 1 == "cygwin" then + let + secondComponent = elemAt l 1; + in + if secondComponent == "cygwin" then mkSkeletonFromList [ (head l) "pc" - "cygwin" + secondComponent ] # MSVC ought to be the default ABI so this case isn't needed. But then it # becomes difficult to handle the gnu* variants for Aarch32 correctly for # minGW. So it's easier to make gnu* the default for the MinGW, but # hack-in MSVC for the non-MinGW case right here. - else if elemAt l 1 == "windows" then + else if secondComponent == "windows" then { cpu = head l; - kernel = "windows"; + kernel = secondComponent; abi = "msvc"; } - else if (elemAt l 1) == "elf" then + else if secondComponent == "elf" then { cpu = head l; vendor = "unknown"; kernel = "none"; - abi = elemAt l 1; + abi = secondComponent; } else { cpu = head l; - kernel = elemAt l 1; + kernel = secondComponent; }; "3" = + let + secondComponent = elemAt l 1; + thirdComponent = elemAt l 2; + in # cpu-kernel-environment if - elemAt l 1 == "linux" - || elem (elemAt l 2) [ + secondComponent == "linux" + || elem thirdComponent [ "eabi" "eabihf" "elf" @@ -843,41 +853,41 @@ rec { then { cpu = head l; - kernel = elemAt l 1; - abi = elemAt l 2; + kernel = secondComponent; + abi = thirdComponent; vendor = "unknown"; } # cpu-vendor-os else if - elemAt l 1 == "apple" - || elem (elemAt l 2) [ + secondComponent == "apple" + || elem thirdComponent [ "redox" "mmixware" "ghcjs" "mingw32" "uefi" ] - || hasPrefix "freebsd" (elemAt l 2) - || hasPrefix "netbsd" (elemAt l 2) - || hasPrefix "openbsd" (elemAt l 2) - || hasPrefix "genode" (elemAt l 2) - || hasPrefix "wasm32" (elemAt l 0) + || hasPrefix "freebsd" thirdComponent + || hasPrefix "netbsd" thirdComponent + || hasPrefix "openbsd" thirdComponent + || hasPrefix "genode" thirdComponent + || hasPrefix "wasm32" (head l) then { cpu = head l; - vendor = elemAt l 1; + vendor = secondComponent; kernel = - if elemAt l 2 == "mingw32" then + if thirdComponent == "mingw32" then "windows" # autotools breaks on -gnu for window else - elemAt l 2; + thirdComponent; } # lots of tools expect a triplet for Cygwin, even though the vendor is just "pc" - else if elemAt l 2 == "cygwin" then + else if thirdComponent == "cygwin" then { cpu = head l; - vendor = elemAt l 1; - kernel = "cygwin"; + vendor = secondComponent; + kernel = thirdComponent; } else throw "system string '${lib.concatStringsSep "-" l}' with 3 components is ambiguous"; From 6e37f410ad1a36f37ee7f8727654831c86c11d60 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 09:34:58 -0400 Subject: [PATCH 62/69] lib.systems.parse: avoid redefining component lists --- lib/systems/parse.nix | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 4fd9497ff0a5..0a69e47972b1 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -790,6 +790,21 @@ rec { }; mkSkeletonFromList = + let + linuxComponents = [ + "eabi" + "eabihf" + "elf" + "gnu" + ]; + appleComponents = [ + "redox" + "mmixware" + "ghcjs" + "mingw32" + "uefi" + ]; + in l: { "1" = @@ -842,15 +857,7 @@ rec { thirdComponent = elemAt l 2; in # cpu-kernel-environment - if - secondComponent == "linux" - || elem thirdComponent [ - "eabi" - "eabihf" - "elf" - "gnu" - ] - then + if secondComponent == "linux" || elem thirdComponent linuxComponents then { cpu = head l; kernel = secondComponent; @@ -860,13 +867,7 @@ rec { # cpu-vendor-os else if secondComponent == "apple" - || elem thirdComponent [ - "redox" - "mmixware" - "ghcjs" - "mingw32" - "uefi" - ] + || elem thirdComponent appleComponents || hasPrefix "freebsd" thirdComponent || hasPrefix "netbsd" thirdComponent || hasPrefix "openbsd" thirdComponent From 38816ea2a3979fb3f167f390bbf1c487f894d3a3 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 09:42:21 -0400 Subject: [PATCH 63/69] lib.systems.inspect: save memory when removing attributes --- lib/systems/inspect.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix index 146e9a9f4389..98b3fc050bc1 100644 --- a/lib/systems/inspect.nix +++ b/lib/systems/inspect.nix @@ -8,6 +8,7 @@ let attrValues concatMap filter + flip hasPrefix isAttrs isList @@ -49,7 +50,10 @@ let ) ) (attrNames pattern); - abis = mapAttrs (_: abi: removeAttrs abi [ "assertions" ]) lib.systems.parse.abis; + removeAssertions = flip removeAttrs [ "assertions" ]; + abis = mapAttrs ( + _: abi: if abi ? assertions then removeAssertions abi else abi + ) lib.systems.parse.abis; in rec { From 0bc9fb54a4e4e71e3da2833e2657896e357ad240 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Fri, 15 May 2026 14:58:08 -0400 Subject: [PATCH 64/69] lib.systems.parse: avoid toString if no version specified --- lib/systems/parse.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 0a69e47972b1..e8e5a7799014 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -964,7 +964,8 @@ rec { mkSystemFromString = s: mkSystemFromSkeleton (mkSkeletonFromList (splitString "-" s)); - kernelName = kernel: kernel.name + toString (kernel.version or ""); + kernelName = + kernel: if kernel ? version then kernel.name + toString kernel.version else kernel.name; darwinArch = cpu: if cpu.name == "aarch64" then "arm64" else cpu.name; From add81e270cf5be0dae19ef1baf557c18fa3bc479 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Sat, 16 May 2026 14:09:45 -0400 Subject: [PATCH 65/69] lib.systems.doubles: only typecheck in CI --- ci/OWNERS | 2 +- lib/systems/doubles.nix | 22 +++++++++++++++++++--- lib/systems/parse.nix | 6 ++++-- lib/tests/systems.nix | 16 ++++++++++++++++ 4 files changed, 40 insertions(+), 6 deletions(-) diff --git a/ci/OWNERS b/ci/OWNERS index 43ef6f666651..463c546e695b 100644 --- a/ci/OWNERS +++ b/ci/OWNERS @@ -39,6 +39,7 @@ /lib/derivations.nix @NixOS/stdenv /lib/fetchers.nix @alyssais @NixOS/stdenv /lib/meta.nix @alyssais @NixOS/stdenv +/lib/meta-types.nix @infinisil @adisbladis @NixOS/stdenv /lib/source-types.nix @alyssais @NixOS/stdenv /lib/systems @alyssais @NixOS/stdenv ## Libraries / Module system @@ -67,7 +68,6 @@ /pkgs/stdenv/generic/problems.nix @infinisil /pkgs/test/problems @infinisil /pkgs/stdenv/generic/check-meta.nix @infinisil @Ericson2314 @adisbladis @NixOS/stdenv -/pkgs/stdenv/generic/meta-types.nix @infinisil @adisbladis @NixOS/stdenv /pkgs/stdenv/cross @Ericson2314 @NixOS/stdenv /pkgs/build-support @philiptaron /pkgs/build-support/cc-wrapper @Ericson2314 diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix index e9fa908dfc88..d3e184320fbd 100644 --- a/lib/systems/doubles.nix +++ b/lib/systems/doubles.nix @@ -1,7 +1,15 @@ { lib }: let - inherit (lib) lists; + inherit (lib) + lists + splitString + ; inherit (lib.systems) parse; + inherit (parse) + mkSystemFromSkeleton + mkSkeletonFromList + doubleFromSystem + ; inherit (lib.systems.inspect) predicates; inherit (lib.attrsets) matchAttrs; @@ -117,9 +125,17 @@ let "x86_64-uefi" ]; - allParsed = map parse.mkSystemFromString all; + uncheckedSystemFromString = + let + systemType = { + _type = "system"; + }; + in + s: mkSystemFromSkeleton (mkSkeletonFromList (splitString "-" s)) // systemType; - filterDoubles = f: map parse.doubleFromSystem (lists.filter f allParsed); + allParsed = map uncheckedSystemFromString all; + + filterDoubles = f: map doubleFromSystem (lists.filter f allParsed); in { diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index e8e5a7799014..cdfeafe7c18d 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -903,6 +903,8 @@ rec { or (throw "system string '${lib.concatStringsSep "-" l}' has invalid number of hyphen-separated components"); # This should revert the job done by config.guess from the gcc compiler. + # Note: this does _not_ verify that the system is valid + # `mkSystemFromString` is recommended for external use mkSystemFromSkeleton = let getCpu = name: cpuTypes.${name} or (throw "Unknown CPU type: ${name}"); @@ -960,9 +962,9 @@ rec { }; in - mkSystem parsed; + parsed; - mkSystemFromString = s: mkSystemFromSkeleton (mkSkeletonFromList (splitString "-" s)); + mkSystemFromString = s: mkSystem (mkSystemFromSkeleton (mkSkeletonFromList (splitString "-" s))); kernelName = kernel: if kernel ? version then kernel.name + toString kernel.version else kernel.name; diff --git a/lib/tests/systems.nix b/lib/tests/systems.nix index 3feef87d97c0..e2b9093511c6 100644 --- a/lib/tests/systems.nix +++ b/lib/tests/systems.nix @@ -215,6 +215,22 @@ lib.runTests ( }) // { + test_platforms_pass_typecheck = { + # To improve performance, the result of parsing all 70+ systems in + # `lib.platforms` into their attrset representations aren't typechecked. + # The results are expected to be constant, and avoiding the slow + # validation gives a meaningful improvement to evaluation speed. We ensure + # that all systems pass validation here + expr = builtins.filter ( + system: + let + evalResult = builtins.tryEval (lib.systems.parse.mkSystemFromString system); + in + evalResult.success == false + ) lib.platforms.all; + + expected = [ ]; + }; test_equals_example_x86_64-linux = { expr = lib.systems.equals (lib.systems.elaborate "x86_64-linux") ( lib.systems.elaborate "x86_64-linux" From 14dcf8706f0efe89980265d5f464e5865982b90a Mon Sep 17 00:00:00 2001 From: archer-65 Date: Fri, 19 Jun 2026 21:09:09 +0200 Subject: [PATCH 66/69] emacs-macport: emacs-mac-30.2 -> emacs-mac-30.2.1 Addresses issues discussed upstream in jdtsmith/emacs-mac#137. --- pkgs/applications/editors/emacs/sources.nix | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/editors/emacs/sources.nix b/pkgs/applications/editors/emacs/sources.nix index 1e00137cb90c..f7cddf1c9cb2 100644 --- a/pkgs/applications/editors/emacs/sources.nix +++ b/pkgs/applications/editors/emacs/sources.nix @@ -146,14 +146,9 @@ in pname = "emacs-mac"; version = "30.2.50"; variant = "macport"; - rev = "emacs-mac-30.2"; - hash = "sha256-i/W2Xa6Vk1+T1fs6fa4wJVMLLB6BK8QAPcdmPrU8NwM="; + rev = "emacs-mac-30.2.1"; + hash = "sha256-KFgQZBW0QRX0k4k8gkVuGhNTfxArOH1+rwUzsmyEuss="; patches = fetchpatch: [ - (fetchpatch { - name = "fix-off-by-one-mistake-80851-CVE-2026-6861.patch"; - url = "https://cgit.git.savannah.gnu.org/cgit/emacs.git/patch/?id=8f535370b9efbc91673b20c6987a5cae4f6dc562"; - hash = "sha256-ny44eIi8DUa9pQhVGzhGz4H6FXU4+ki86SITLXhkwpw="; - }) (fetchpatch { # tree-sitter 0.26 compatibility fix, see https://bugs.gentoo.org/970856 url = "https://gitweb.gentoo.org/proj/emacs-patches.git/plain/emacs/30.2/01_all_treesit-0.26.patch?id=d0f47979806d9be5a190fdb4ffa1bde439b2d616"; From de2f6e7c0c2c9362ee721641feadf67fd81e57f3 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 22:56:16 +0000 Subject: [PATCH 67/69] terraform-providers.buildkite_buildkite: 1.34.0 -> 1.34.2 --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 8d9d1f7ccdcc..a6f697642774 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -128,11 +128,11 @@ "vendorHash": "sha256-/dOiXO2aPkuZaFiwv/6AXJdIADgx8T7eOwvJfBBoqg8=" }, "buildkite_buildkite": { - "hash": "sha256-MoucQgeikKMh4P8nRWIJ5SkLFGeVfDutsSBUSowz6VM=", + "hash": "sha256-CfipoNGW0VofHfgXlbfcjIGYpkuE0UXewDM6UCutg9g=", "homepage": "https://registry.terraform.io/providers/buildkite/buildkite", "owner": "buildkite", "repo": "terraform-provider-buildkite", - "rev": "v1.34.0", + "rev": "v1.34.2", "spdx": "MIT", "vendorHash": "sha256-uYyj6GSV5bWEfRTOODMuReEHe9wnF4cVoHM9rBMpgmM=" }, From e9d7fc84a5b4080424758cf04422047389a76b15 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 20 Jun 2026 23:02:40 +0000 Subject: [PATCH 68/69] terraform-providers.fastly_fastly: 9.2.1 -> 9.3.0 --- .../networking/cluster/terraform-providers/providers.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 8d9d1f7ccdcc..71da715a9100 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -409,13 +409,13 @@ "vendorHash": null }, "fastly_fastly": { - "hash": "sha256-S6VIwqwTPr276TTqgEFTxhE5c97lCd8/5dJnDGori4s=", + "hash": "sha256-I1a2wus61as24DMBZEZsl2C6YJ5B0CaIST/FM+8KMLc=", "homepage": "https://registry.terraform.io/providers/fastly/fastly", "owner": "fastly", "repo": "terraform-provider-fastly", - "rev": "v9.2.1", + "rev": "v9.3.0", "spdx": "MPL-2.0", - "vendorHash": "sha256-8QF9gOuvuZwAoFWePjti4h6VzmA+TGiFaC/ShuEAZqA=" + "vendorHash": "sha256-TDU8T91em1+Y+0LN6FQSGEKJ4T9dIUxyuOTvx6HBYjg=" }, "flexibleenginecloud_flexibleengine": { "hash": "sha256-yEZ9JiUSqFFbfqzOOD59ZBv4yFCeUBBKlp6aiUqDqiM=", From 428c336ff0075a1afcd581a4d51799e42cad50f3 Mon Sep 17 00:00:00 2001 From: "nixpkgs-ci[bot]" <190413589+nixpkgs-ci[bot]@users.noreply.github.com> Date: Sun, 21 Jun 2026 00:28:04 +0000 Subject: [PATCH 69/69] maintainers/github-teams.json: Automated sync --- maintainers/github-teams.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/maintainers/github-teams.json b/maintainers/github-teams.json index 1eaf3ca4cd13..e61912fb3a8e 100644 --- a/maintainers/github-teams.json +++ b/maintainers/github-teams.json @@ -43,12 +43,9 @@ "id": 5468470, "maintainers": {}, "members": { - "aherrmann": 732652, "avdv": 3471749, - "ethercrow": 222467, "groodt": 343415, - "kalbasit": 87115, - "mboes": 51356 + "kalbasit": 87115 }, "name": "Bazel" },