From d958ececfc1316a909b167e017f8e0cfbc85eee5 Mon Sep 17 00:00:00 2001 From: kxxt Date: Sun, 20 Jul 2025 22:40:19 +0800 Subject: [PATCH 01/67] kanboard, pixelfed, slskd: replace forceHttps with forceSSL `forceSSL` is the correct way for enforcing HTTPS for nginx virtual host. --- nixos/modules/services/web-apps/kanboard.nix | 2 +- nixos/modules/services/web-apps/pixelfed.nix | 2 +- nixos/modules/services/web-apps/slskd.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/web-apps/kanboard.nix b/nixos/modules/services/web-apps/kanboard.nix index e422c3191cbb..469abf298a3e 100644 --- a/nixos/modules/services/web-apps/kanboard.nix +++ b/nixos/modules/services/web-apps/kanboard.nix @@ -76,7 +76,7 @@ in example = lib.literalExpression '' { enableACME = true; - forceHttps = true; + forceSSL = true; } ''; }; diff --git a/nixos/modules/services/web-apps/pixelfed.nix b/nixos/modules/services/web-apps/pixelfed.nix index c20947aa6f87..ea9b412de16d 100644 --- a/nixos/modules/services/web-apps/pixelfed.nix +++ b/nixos/modules/services/web-apps/pixelfed.nix @@ -140,7 +140,7 @@ in "pics.''${config.networking.domain}" ]; enableACME = true; - forceHttps = true; + forceSSL = true; } ''; description = '' diff --git a/nixos/modules/services/web-apps/slskd.nix b/nixos/modules/services/web-apps/slskd.nix index e9a78f3afe9f..3b99fe8a6adf 100644 --- a/nixos/modules/services/web-apps/slskd.nix +++ b/nixos/modules/services/web-apps/slskd.nix @@ -45,7 +45,7 @@ in example = lib.literalExpression '' { enableACME = true; - forceHttps = true; + forceSSL = true; } ''; description = '' From fd3dcd58dc13b694154377850c2f9d912cf003d3 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 6 Dec 2025 07:22:06 +0000 Subject: [PATCH 02/67] peergos: 1.17.0 -> 1.18.0 --- pkgs/by-name/pe/peergos/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pe/peergos/package.nix b/pkgs/by-name/pe/peergos/package.nix index 2ca4f79791e4..34e3a86894f4 100644 --- a/pkgs/by-name/pe/peergos/package.nix +++ b/pkgs/by-name/pe/peergos/package.nix @@ -41,12 +41,12 @@ let in stdenv.mkDerivation rec { pname = "peergos"; - version = "1.17.0"; + version = "1.18.0"; src = fetchFromGitHub { owner = "Peergos"; repo = "web-ui"; rev = "v${version}"; - hash = "sha256-9dBTa/qrrEb5eMIXK0kt7x8zTbwCeRDXpTS58EezS0A="; + hash = "sha256-zE7BsbZV1KIPD0sn1rSlMxzNF+JcucG382Ek/N9vO8o="; fetchSubmodules = true; }; From df7f2ece0f71253df508a1b1d65b7d7a4ef22f5c Mon Sep 17 00:00:00 2001 From: Florian Agbuya Date: Tue, 6 Jan 2026 15:26:26 +0800 Subject: [PATCH 03/67] nixos/anubis: improve policy configuration --- nixos/modules/services/networking/anubis.md | 56 ++++++++-- nixos/modules/services/networking/anubis.nix | 107 ++++++++++++++++--- nixos/tests/anubis.nix | 63 ++++------- 3 files changed, 166 insertions(+), 60 deletions(-) diff --git a/nixos/modules/services/networking/anubis.md b/nixos/modules/services/networking/anubis.md index af5d3cf997bc..7c45fa780adf 100644 --- a/nixos/modules/services/networking/anubis.md +++ b/nixos/modules/services/networking/anubis.md @@ -78,15 +78,57 @@ It is possible to configure default settings for all instances of Anubis, via {o ```nix { services.anubis.defaultOptions = { - botPolicy = { - dnsbl = false; - }; settings.DIFFICULTY = 3; }; } ``` -Note that at the moment, a custom bot policy is not merged with the baked-in one. That means to only override a setting -like `dnsbl`, copying the entire bot policy is required. Check -[the upstream repository](https://github.com/TecharoHQ/anubis/blob/1509b06cb921aff842e71fbb6636646be6ed5b46/cmd/anubis/botPolicies.json) -for the policy. +By default, this module uses Anubis's built-in policy (`botPolicies.yaml`), which includes sensible defaults for bot +rules, thresholds, status codes, and storage backend. A custom policy file is only generated when you explicitly +customize the policy via {option}`services.anubis.instances..policy`. + +To add custom bot rules while keeping the defaults: + +```nix +{ + services.anubis.instances.default = { + settings.TARGET = "http://localhost:8000"; + policy.extraBots = [ + { + name = "my-allowed-bot"; + user_agent_regex = "MyBot/.*"; + action = "ALLOW"; + } + ]; + }; +} +``` + +To opt out of the default bot rules entirely and define your own: + +```nix +{ + services.anubis.instances.default = { + settings.TARGET = "http://localhost:8000"; + policy = { + useDefaultBotRules = false; + extraBots = [ + { + name = "my-rule"; + path_regex = ".*"; + action = "CHALLENGE"; + } + ]; + }; + }; +} +``` + +::: {.note} +When you customize the policy, a custom policy file is generated. This file imports the default bot rules via +`(data)/meta/default-config.yaml` when {option}`services.anubis.instances..policy.useDefaultBotRules` is enabled, +but uses Anubis's simpler legacy threshold instead of the 5-tier thresholds from `botPolicies.yaml`. If you need custom +thresholds, specify them in {option}`services.anubis.instances..policy.settings`. +::: + +See [the upstream documentation](https://anubis.techaro.lol/docs/admin/policies) for all available policy options. diff --git a/nixos/modules/services/networking/anubis.nix b/nixos/modules/services/networking/anubis.nix index 37ab52b51b36..5c207a27ec25 100644 --- a/nixos/modules/services/networking/anubis.nix +++ b/nixos/modules/services/networking/anubis.nix @@ -12,6 +12,32 @@ let enabledInstances = lib.filterAttrs (_: conf: conf.enable) cfg.instances; instanceName = name: if name == "" then "anubis" else "anubis-${name}"; + # Only generates a custom policy file when the user has explicitly customized + # something (extraBots, settings, or disabled default bot rules). When nothing + # is customized, returns null so Anubis uses its built-in botPolicies.yaml + # which includes sensible defaults for thresholds, status_codes, store, etc. + mkPolicyFile = + name: instance: + let + hasCustomization = + !instance.policy.useDefaultBotRules + || instance.policy.extraBots != [ ] + || instance.policy.settings != { }; + bots = + (lib.optional instance.policy.useDefaultBotRules { + import = "(data)/meta/default-config.yaml"; + }) + ++ instance.policy.extraBots; + policyContent = { + inherit bots; + } + // instance.policy.settings; + in + if hasCustomization then + jsonFormat.generate "${instanceName name}-policy.json" policyContent + else + null; + unixAddr = network: addr: lib.strings.optionalString (network == "unix") addr; unixSocketAddrs = settings: @@ -40,6 +66,10 @@ let in { name, ... }: { + imports = [ + (lib.mkRenamedOptionModule [ "botPolicy" ] [ "policy" "settings" ]) + ]; + options = { enable = lib.mkEnableOption "this instance of Anubis" // { default = true; @@ -65,18 +95,71 @@ let type = types.str; }; - botPolicy = mkDefaultOption "botPolicy" { - default = null; + policy = lib.mkOption { + default = { }; description = '' - Anubis policy configuration in Nix syntax. Set to `null` to use the baked-in policy which should be - sufficient for most use-cases. - - This option has no effect if `settings.POLICY_FNAME` is set to a different value, which is useful for - importing an existing configuration. + Anubis policy configuration. See [the documentation](https://anubis.techaro.lol/docs/admin/policies) for details. ''; - type = types.nullOr jsonFormat.type; + type = types.submodule { + options = { + useDefaultBotRules = mkDefaultOption "policy.useDefaultBotRules" { + type = types.bool; + default = true; + description = '' + Whether to include Anubis's default bot detection rules via the + `(data)/meta/default-config.yaml` import. + + Set to `false` to define your own bot rules from scratch using + {option}`extraBots`. + ''; + }; + + extraBots = mkDefaultOption "policy.extraBots" { + type = types.listOf jsonFormat.type; + default = [ ]; + example = lib.literalExpression '' + [ + { + name = "my-bot"; + user_agent_regex = "MyBot/.*"; + action = "ALLOW"; + } + ] + ''; + description = '' + Additional bot rules appended to the policy. + + When {option}`useDefaultBotRules` is `true`, these rules are added after + Anubis's default rules. When `false`, only these rules are used. + ''; + }; + + settings = mkDefaultOption "policy.settings" { + type = jsonFormat.type; + default = { }; + example = lib.literalExpression '' + { + dnsbl = false; + store = { + backend = "bbolt"; + parameters.path = "/var/lib/anubis/data.bdb"; + }; + } + ''; + description = '' + Additional policy settings merged into the policy file. + + Common settings include `dnsbl`, `store`, `logging`, `thresholds`, + `impressum`, `openGraph`, and `statusCodes`. + + See [the documentation](https://anubis.techaro.lol/docs/admin/policies) for + available options. + ''; + }; + }; + }; }; extraFlags = mkDefaultOption "extraFlags" { @@ -175,8 +258,8 @@ let POLICY_FNAME = mkDefaultOption "settings.POLICY_FNAME" { default = null; description = '' - The bot policy file to use. Leave this as `null` to respect the value set in - {option}`services.anubis.instances..botPolicy`. + The policy file to use. Leave this as `null` to use the policy generated from + {option}`services.anubis.instances..policy`. ''; type = types.nullOr types.path; }; @@ -306,10 +389,8 @@ in POLICY_FNAME = if instance.settings.POLICY_FNAME != null then instance.settings.POLICY_FNAME - else if instance.botPolicy != null then - jsonFormat.generate "${instanceName name}-botPolicy.json" instance.botPolicy else - null; + mkPolicyFile name instance; } ) ); diff --git a/nixos/tests/anubis.nix b/nixos/tests/anubis.nix index 67f21d2e55be..8dcc3ef496c7 100644 --- a/nixos/tests/anubis.nix +++ b/nixos/tests/anubis.nix @@ -1,36 +1,4 @@ { lib, ... }: -let - legacyBotPolicyJSON = '' - { - "bots": [ - { - "import": "(data)/bots/_deny-pathological.yaml" - }, - { - "import": "(data)/meta/ai-block-aggressive.yaml" - }, - { - "import": "(data)/crawlers/_allow-good.yaml" - }, - { - "import": "(data)/bots/aggressive-brazilian-scrapers.yaml" - }, - { - "import": "(data)/common/keep-internet-working.yaml" - }, - { - "name": "generic-browser", - "user_agent_regex": "Mozilla|Opera", - "action": "CHALLENGE" - } - ], - "dnsbl": false, - "status_codes": { - "CHALLENGE": 200, - "DENY": 200 - } - }''; -in { name = "anubis"; meta.maintainers = with lib.maintainers; [ @@ -54,7 +22,6 @@ in services.anubis = { defaultOptions = { - botPolicy = builtins.fromJSON legacyBotPolicyJSON; settings = { DIFFICULTY = 3; USER_DEFINED_DEFAULT = true; @@ -92,14 +59,29 @@ in }; }; - instances."botPolicy-default" = { - botPolicy = null; + instances."policy-default" = { settings = { TARGET = "http://localhost:8080"; }; }; - instances."botPolicy-file" = { + instances."policy-custom" = { + policy = { + extraBots = [ + { + name = "custom-allow"; + user_agent_regex = "CustomBot/.*"; + action = "ALLOW"; + } + ]; + settings.dnsbl = false; + }; + settings = { + TARGET = "http://localhost:8080"; + }; + }; + + instances."policy-file" = { settings = { TARGET = "http://localhost:8080"; POLICY_FNAME = "/etc/anubis-botPolicy.json"; @@ -191,9 +173,10 @@ in machine.succeed('cat /run/current-system/etc/systemd/system/anubis.service | grep "DIFFICULTY=5"') machine.succeed('cat /run/current-system/etc/systemd/system/anubis-tcp.service | grep "DIFFICULTY=3"') - # Check correct BotPolicy settings are applied - machine.succeed('cat /run/current-system/etc/systemd/system/anubis.service | grep "POLICY_FNAME=/nix/store"') - machine.fail('cat /run/current-system/etc/systemd/system/anubis-botPolicy-default.service | grep "POLICY_FNAME="') - machine.succeed('cat /run/current-system/etc/systemd/system/anubis-botPolicy-file.service | grep "POLICY_FNAME=/etc/anubis-botPolicy.json"') + # Check correct policy settings are applied. + machine.fail('cat /run/current-system/etc/systemd/system/anubis.service | grep "POLICY_FNAME="') + machine.fail('cat /run/current-system/etc/systemd/system/anubis-policy-default.service | grep "POLICY_FNAME="') + machine.succeed('cat /run/current-system/etc/systemd/system/anubis-policy-custom.service | grep "POLICY_FNAME=/nix/store"') + machine.succeed('cat /run/current-system/etc/systemd/system/anubis-policy-file.service | grep "POLICY_FNAME=/etc/anubis-botPolicy.json"') ''; } From c3bc915697b067fd7f26bd9ac52e16ea9dbce96f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 10 Jan 2026 11:36:12 +0000 Subject: [PATCH 04/67] platformsh: 5.7.2 -> 5.8.0 --- pkgs/by-name/pl/platformsh/versions.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/pl/platformsh/versions.json b/pkgs/by-name/pl/platformsh/versions.json index 27da39b38e71..8e739632030b 100644 --- a/pkgs/by-name/pl/platformsh/versions.json +++ b/pkgs/by-name/pl/platformsh/versions.json @@ -1,19 +1,19 @@ { - "version": "5.7.2", + "version": "5.8.0", "darwin-amd64": { - "hash": "sha256-Klc7+0KWSjTxSv/AQ8Z429mTYNrl/SLLlKncnKx3hqk=", - "url": "https://github.com/platformsh/cli/releases/download/5.7.2/platform_5.7.2_darwin_all.tar.gz" + "hash": "sha256-quR9iU0Lqlvc1fvtHZu8/iIPesbEu59JfmwjgK3PEYA=", + "url": "https://github.com/platformsh/cli/releases/download/5.8.0/platform_5.8.0_darwin_all.tar.gz" }, "darwin-arm64": { - "hash": "sha256-Klc7+0KWSjTxSv/AQ8Z429mTYNrl/SLLlKncnKx3hqk=", - "url": "https://github.com/platformsh/cli/releases/download/5.7.2/platform_5.7.2_darwin_all.tar.gz" + "hash": "sha256-quR9iU0Lqlvc1fvtHZu8/iIPesbEu59JfmwjgK3PEYA=", + "url": "https://github.com/platformsh/cli/releases/download/5.8.0/platform_5.8.0_darwin_all.tar.gz" }, "linux-amd64": { - "hash": "sha256-g/Jnl1bUjwf27pzzvWVBRl7jSWm+p9lQfk/6HeUngXc=", - "url": "https://github.com/platformsh/cli/releases/download/5.7.2/platform_5.7.2_linux_amd64.tar.gz" + "hash": "sha256-3Uz+2x/QSxEeF+gcxwfv3r1GO8m01SfSVavlIQ/YoNc=", + "url": "https://github.com/platformsh/cli/releases/download/5.8.0/platform_5.8.0_linux_amd64.tar.gz" }, "linux-arm64": { - "hash": "sha256-Chlijpt6t/5GJRZ40wNaXnzGTAaAsBE9kzT+bidrmio=", - "url": "https://github.com/platformsh/cli/releases/download/5.7.2/platform_5.7.2_linux_arm64.tar.gz" + "hash": "sha256-8lFfo5zF6G36jJaNf9dQbVu8WeQWYu7dl4JyzlOrtLI=", + "url": "https://github.com/platformsh/cli/releases/download/5.8.0/platform_5.8.0_linux_arm64.tar.gz" } } From 690109b2fadae4bdeb7f8bf6bb9f5b59d23dada4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 11 Jan 2026 21:12:20 +0000 Subject: [PATCH 05/67] github-runner: 2.330.0 -> 2.331.0 --- pkgs/by-name/gi/github-runner/deps.json | 20 ++++++++++---------- pkgs/by-name/gi/github-runner/package.nix | 4 ++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/gi/github-runner/deps.json b/pkgs/by-name/gi/github-runner/deps.json index af463d3cea13..4c0dc03597f2 100644 --- a/pkgs/by-name/gi/github-runner/deps.json +++ b/pkgs/by-name/gi/github-runner/deps.json @@ -1,18 +1,18 @@ [ { "pname": "Azure.Core", - "version": "1.47.3", - "hash": "sha256-fWyfqF1lpnap4cF3l9J0fYtZbxIqm6UFsuJgN+/hwW4=" + "version": "1.50.0", + "hash": "sha256-8Pjz0/2wTLK5uY7G5qrxQr4CsmrjiR8gL4g6zJymj5s=" }, { "pname": "Azure.Storage.Blobs", - "version": "12.26.0", - "hash": "sha256-J6774WE6xlrsmhkmE1dapkrhK6dFByYxSHLs1OQPk48=" + "version": "12.27.0", + "hash": "sha256-Ag8kMe/NBfq+HSchFzm0VAAo9xVnrKHFHUjbQ4KpSh0=" }, { "pname": "Azure.Storage.Common", - "version": "12.25.0", - "hash": "sha256-4eMv4oOumO6FFx0VMsuIr6sWtouu4f6AajebTQjhj9Q=" + "version": "12.26.0", + "hash": "sha256-GPiEPi/caj5z2cMFP5TUx/Jrj/zXZmA/xqC9CEoI+qQ=" }, { "pname": "Castle.Core", @@ -431,8 +431,8 @@ }, { "pname": "System.ClientModel", - "version": "1.6.1", - "hash": "sha256-OMnamkT9Nt5ZSR6xPKFmOQRUjdn0a4nP9jkD2eZxxc0=" + "version": "1.8.0", + "hash": "sha256-ZWVhuw3IRk9rZXkXERhesEET2KMMzHjUH/HDI288WK8=" }, { "pname": "System.Collections", @@ -581,8 +581,8 @@ }, { "pname": "System.IO.Hashing", - "version": "8.0.0", - "hash": "sha256-szOGt0TNBo6dEdC3gf6H+e9YW3Nw0woa6UnCGGGK5cE=" + "version": "10.0.1", + "hash": "sha256-k8EHcxnLitXo0CxoDZAxFmUlJJdKZVsZJ2+9zDMYB94=" }, { "pname": "System.Linq", diff --git a/pkgs/by-name/gi/github-runner/package.nix b/pkgs/by-name/gi/github-runner/package.nix index 9e16ca80dee6..bba388654e88 100644 --- a/pkgs/by-name/gi/github-runner/package.nix +++ b/pkgs/by-name/gi/github-runner/package.nix @@ -35,13 +35,13 @@ assert builtins.all ( buildDotnetModule (finalAttrs: { pname = "github-runner"; - version = "2.330.0"; + version = "2.331.0"; src = fetchFromGitHub { owner = "actions"; repo = "runner"; tag = "v${finalAttrs.version}"; - hash = "sha256-Ft6NCgljzMy5SrRwAdixWpPIrbq7WdW8VzXDUVsiuqo="; + hash = "sha256-Qn3sOzZVBf/UfmMEkTPDfAWBtJzZv/xp9kCmiSowgUc="; leaveDotGit = true; postFetch = '' git -C $out rev-parse --short HEAD > $out/.git-revision From 7517df9ddb74df819b5aa779a16a3e7d8e1c9ea7 Mon Sep 17 00:00:00 2001 From: Yureka Date: Sun, 11 Jan 2026 16:51:20 +0100 Subject: [PATCH 06/67] pkgsMusl.patchutils: fix build Upstream has addressed this in release 0.4.3 and later with commit dc88e96 "Integrate gnulib properly". Since these versions of patchutils need to stay around for fetchpatch / fetchpatch2 Fixed-Output Derivations, we'll need to carry these patches. --- pkgs/tools/text/patchutils/0.3.3.nix | 6 ++- pkgs/tools/text/patchutils/0.4.2.nix | 5 +- pkgs/tools/text/patchutils/default.nix | 3 ++ .../text/patchutils/getenv-signature.patch | 46 +++++++++++++++++++ 4 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 pkgs/tools/text/patchutils/getenv-signature.patch diff --git a/pkgs/tools/text/patchutils/0.3.3.nix b/pkgs/tools/text/patchutils/0.3.3.nix index f1aea0a847f0..2efd44fc787a 100644 --- a/pkgs/tools/text/patchutils/0.3.3.nix +++ b/pkgs/tools/text/patchutils/0.3.3.nix @@ -5,6 +5,10 @@ callPackage ./generic.nix ( // { version = "0.3.3"; sha256 = "0g5df00cj4nczrmr4k791l7la0sq2wnf8rn981fsrz1f3d2yix4i"; - patches = [ ./drop-comments.patch ]; # we would get into a cycle when using fetchpatch on this one + patches = [ + # we would get into a cycle when using fetchpatch on this one + ./drop-comments.patch + ./getenv-signature.patch + ]; } ) diff --git a/pkgs/tools/text/patchutils/0.4.2.nix b/pkgs/tools/text/patchutils/0.4.2.nix index 18625c2d9822..ef25f66d3876 100644 --- a/pkgs/tools/text/patchutils/0.4.2.nix +++ b/pkgs/tools/text/patchutils/0.4.2.nix @@ -7,6 +7,9 @@ callPackage ./generic.nix ( sha256 = "sha256-iHWwll/jPeYriQ9s15O+f6/kGk5VLtv2QfH+1eu/Re0="; # for gitdiff extraBuildInputs = [ python3 ]; - patches = [ ./Make-grepdiff1-test-case-pcre-aware.patch ]; + patches = [ + ./Make-grepdiff1-test-case-pcre-aware.patch + ./getenv-signature.patch + ]; } ) diff --git a/pkgs/tools/text/patchutils/default.nix b/pkgs/tools/text/patchutils/default.nix index c79b1d7110c7..04d033383c53 100644 --- a/pkgs/tools/text/patchutils/default.nix +++ b/pkgs/tools/text/patchutils/default.nix @@ -5,5 +5,8 @@ callPackage ./generic.nix ( // { version = "0.3.4"; sha256 = "0xp8mcfyi5nmb5a2zi5ibmyshxkb1zv1dgmnyn413m7ahgdx8mfg"; + patches = [ + ./getenv-signature.patch + ]; } ) diff --git a/pkgs/tools/text/patchutils/getenv-signature.patch b/pkgs/tools/text/patchutils/getenv-signature.patch new file mode 100644 index 000000000000..1a6956ca83cc --- /dev/null +++ b/pkgs/tools/text/patchutils/getenv-signature.patch @@ -0,0 +1,46 @@ +From 64e5c63ef72ab97ecae6d43845634aa34da0b426 Mon Sep 17 00:00:00 2001 +From: Yureka +Date: Sun, 11 Jan 2026 16:49:07 +0100 +Subject: [PATCH] getopt.{c,h}: Do not use unspecified signatures + +Unspecified signatures no longer work with C23, and the GNU getopt signature matches the one specified by POSIX +--- + src/getopt.c | 2 +- + src/getopt.h | 7 ------- + 2 files changed, 1 insertion(+), 8 deletions(-) + +diff --git a/src/getopt.c b/src/getopt.c +index 9bafa45..c268441 100644 +--- a/src/getopt.c ++++ b/src/getopt.c +@@ -209,7 +209,7 @@ static char *posixly_correct; + whose names are inconsistent. */ + + #ifndef getenv +-extern char *getenv (); ++extern char *getenv (const char *); + #endif + + static char * +diff --git a/src/getopt.h b/src/getopt.h +index a1b8dd6..0aea224 100644 +--- a/src/getopt.h ++++ b/src/getopt.h +@@ -138,14 +138,7 @@ struct option + `getopt'. */ + + #if (defined __STDC__ && __STDC__) || defined __cplusplus +-# ifdef __GNU_LIBRARY__ +-/* Many other libraries have conflicting prototypes for getopt, with +- differences in the consts, in stdlib.h. To avoid compilation +- errors, only prototype getopt for the GNU C library. */ + extern int getopt (int __argc, char *const *__argv, const char *__shortopts); +-# else /* not __GNU_LIBRARY__ */ +-extern int getopt (); +-# endif /* __GNU_LIBRARY__ */ + + # ifndef __need_getopt + extern int getopt_long (int __argc, char *const *__argv, const char *__shortopts, +-- +2.52.0 + From 0aa5b5046e273eee3d722cc0fe6aa5b30627d383 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Thu, 15 Jan 2026 08:23:29 +0100 Subject: [PATCH 07/67] ocamlPackages.frama-c: small fixes --- pkgs/development/ocaml-modules/frama-c/default.nix | 2 ++ pkgs/top-level/ocaml-packages.nix | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/pkgs/development/ocaml-modules/frama-c/default.nix b/pkgs/development/ocaml-modules/frama-c/default.nix index 2c063384748c..72ff68b96686 100644 --- a/pkgs/development/ocaml-modules/frama-c/default.nix +++ b/pkgs/development/ocaml-modules/frama-c/default.nix @@ -5,6 +5,7 @@ findlib, framac, camlzip, + dune-site, ocamlgraph, menhirLib, ppx_deriving, @@ -23,6 +24,7 @@ stdenv.mkDerivation { propagatedBuildInputs = [ camlzip + dune-site menhirLib ocamlgraph ppx_deriving diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 51dfcd2c9b09..462474f7866d 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -666,12 +666,17 @@ let fpath = callPackage ../development/ocaml-modules/fpath { }; frama-c = callPackage ../development/ocaml-modules/frama-c { - framac = pkgs.framac.override { ocamlPackages = self; }; + framac = pkgs.framac.override { + ocamlPackages = self; + why3 = pkgs.why3.override { ocamlPackages = self; }; + }; }; frama-c-lannotate = callPackage ../development/ocaml-modules/frama-c-lannotate { }; - frama-c-luncov = callPackage ../development/ocaml-modules/frama-c-luncov { }; + frama-c-luncov = callPackage ../development/ocaml-modules/frama-c-luncov { + why3 = pkgs.why3.override { ocamlPackages = self; }; + }; frei0r = callPackage ../development/ocaml-modules/frei0r { inherit (pkgs) frei0r; From 9da22d88843b6b2080bf6ec6474a2aeedc00b99f Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Thu, 15 Jan 2026 23:59:04 +0100 Subject: [PATCH 08/67] logdy: use finalAttrs --- pkgs/by-name/lo/logdy/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/lo/logdy/package.nix b/pkgs/by-name/lo/logdy/package.nix index 842ec1e4d894..417f69877334 100644 --- a/pkgs/by-name/lo/logdy/package.nix +++ b/pkgs/by-name/lo/logdy/package.nix @@ -5,14 +5,14 @@ installShellFiles, }: -buildGoModule rec { +buildGoModule (finalAttrs: { pname = "logdy"; version = "0.17.1"; src = fetchFromGitHub { owner = "logdyhq"; repo = "logdy-core"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-NV1vgHUeIH1k1E5hdO3fXrXl1+B30AUM2aexlxz5g8o="; }; @@ -67,4 +67,4 @@ buildGoModule rec { ]; mainProgram = "logdy"; }; -} +}) From f05245675565401f33ff1cae9c09829115d4f579 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Thu, 15 Jan 2026 23:52:24 +0100 Subject: [PATCH 09/67] python3Packages.aioinflux: drop --- .../python-modules/aioinflux/default.nix | 44 ------------------- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 - 3 files changed, 1 insertion(+), 46 deletions(-) delete mode 100644 pkgs/development/python-modules/aioinflux/default.nix diff --git a/pkgs/development/python-modules/aioinflux/default.nix b/pkgs/development/python-modules/aioinflux/default.nix deleted file mode 100644 index 72b6034cc80a..000000000000 --- a/pkgs/development/python-modules/aioinflux/default.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchPypi, - aiohttp, - ciso8601, - setuptools, - pandas, -}: - -buildPythonPackage rec { - pname = "aioinflux"; - version = "0.9.0"; - pyproject = true; - - src = fetchPypi { - inherit pname version; - hash = "sha256-cg0FapBprDaI+Ds1eGsjTIkK+3yaN560IeU3nh6rxcs="; - }; - - build-system = [ setuptools ]; - - dependencies = [ - aiohttp - ciso8601 - pandas - ]; - - # Tests require InfluxDB server - doCheck = false; - - pythonImportsCheck = [ "aioinflux" ]; - - meta = { - description = "Asynchronous Python client for InfluxDB"; - homepage = "https://github.com/gusutabopb/aioinflux"; - changelog = "https://github.com/gusutabopb/aioinflux/releases/tag/v${version}"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ - liamdiprose - lopsided98 - ]; - }; -} diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index bbecf82f65b8..067c38210b93 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -58,6 +58,7 @@ mapAliases { # keep-sorted start case=no numeric=yes abodepy = throw "'abodepy' has been renamed to/replaced by 'jaraco-abode'"; # Converted to throw 2025-10-29 + aioinflux = throw "'aioinflux' was removed because it is abandonned upstream. For InfluxDB v2+ support, please use the official Python client library"; # Added 2026-01-15 aiosenz = throw "aiosenz was removed because Home Assistant switched to pysenz"; # added 2025-12-29 amazon-kclpy = throw "amazon-kclpy has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-03 amazon_kclpy = throw "'amazon_kclpy' has been renamed to/replaced by 'amazon-kclpy'"; # Converted to throw 2025-10-29 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 759ae0c51e3e..e9c2a467b007 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -360,8 +360,6 @@ self: super: with self; { aioimmich = callPackage ../development/python-modules/aioimmich { }; - aioinflux = callPackage ../development/python-modules/aioinflux { }; - aioitertools = callPackage ../development/python-modules/aioitertools { }; aiojellyfin = callPackage ../development/python-modules/aiojellyfin { }; From f443bfec7ae076037db4911ace6f98490bef024e Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Fri, 16 Jan 2026 03:26:20 +0100 Subject: [PATCH 10/67] docui: drop --- pkgs/by-name/do/docui/package.nix | 29 ----------------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 29 deletions(-) delete mode 100644 pkgs/by-name/do/docui/package.nix diff --git a/pkgs/by-name/do/docui/package.nix b/pkgs/by-name/do/docui/package.nix deleted file mode 100644 index a08d824349db..000000000000 --- a/pkgs/by-name/do/docui/package.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - lib, - stdenv, - buildGoModule, - fetchFromGitHub, -}: - -buildGoModule rec { - pname = "docui"; - version = "2.0.4"; - - src = fetchFromGitHub { - owner = "skanehira"; - repo = "docui"; - rev = version; - hash = "sha256-tHv1caNGiWC9Dc/qR4ij9xGM1lotT0KyrpJpdBsHyks="; - }; - - vendorHash = "sha256-5xQ5MmGpyzVh4gXZAhCY16iVw8zbCMzMA5IOsPdn7b0="; - - meta = { - description = "TUI Client for Docker"; - homepage = "https://github.com/skanehira/docui"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ aethelz ]; - broken = stdenv.hostPlatform.isDarwin; - mainProgram = "docui"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index c264d6bee66a..05e9dc930e8b 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -551,6 +551,7 @@ mapAliases { docker_26 = throw "'docker_26' has been removed because it has been unmaintained since February 2025. Use docker_28 or newer instead."; # Added 2025-06-21 docker_27 = throw "'docker_27' has been removed because it has been unmaintained since May 2025. Use docker_28 or newer instead."; # Added 2025-06-15 dockerfile-language-server-nodejs = warnAlias "'dockerfile-language-server-nodejs' has been renamed to 'dockerfile-language-server'" dockerfile-language-server; # Added 2025-09-12 + docui = throw "'docui' has removed as it was deprecated and archived upstream. Consider using lazydocker instead"; # Added 2026-01-16 dogdns = throw "'dogdns' has been removed as it is unmaintained upstream and vendors insecure dependencies. Consider switching to 'doggo', a similar tool."; # Added 2025-12-31 dolphin-emu-beta = throw "'dolphin-emu-beta' has been renamed to/replaced by 'dolphin-emu'"; # Converted to throw 2025-10-27 dontRecurseIntoAttrs = warnAlias "dontRecurseIntoAttrs has been removed from pkgs, use `lib.dontRecurseIntoAttrs` instead" lib.dontRecurseIntoAttrs; # Added 2025-10-30 From 982c2b5f7e7e0bb8ce334a028fca464857e94057 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 17 Jan 2026 02:19:10 +0000 Subject: [PATCH 11/67] renovate: 42.76.4 -> 42.83.1 --- pkgs/by-name/re/renovate/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/re/renovate/package.nix b/pkgs/by-name/re/renovate/package.nix index a7bfe3c63c49..5975d14d314f 100644 --- a/pkgs/by-name/re/renovate/package.nix +++ b/pkgs/by-name/re/renovate/package.nix @@ -16,13 +16,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "renovate"; - version = "42.76.4"; + version = "42.83.1"; src = fetchFromGitHub { owner = "renovatebot"; repo = "renovate"; tag = finalAttrs.version; - hash = "sha256-kmQzhmXmrVr3yDecjq2BxGkORgYWnRUi+p/TGd3we7Q="; + hash = "sha256-AUGtr1sePGfALOTdalCqos6Iqv8SQsC4BurAuyiwdN0="; }; postPatch = '' @@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: { inherit (finalAttrs) pname version src; pnpm = pnpm_10; fetcherVersion = 2; - hash = "sha256-KcZ4MGo/5hZ6DJ/YLaHzd2mp/PEb9a3AlujDMgqHm28="; + hash = "sha256-Gw5q7S867OpkANsf3m+Z+TV8FSQkmDXW48hRttUDtQ0="; }; env.COREPACK_ENABLE_STRICT = 0; From 6d2e3c67d7281a698921f33e9746b264e90a967b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 17 Jan 2026 04:19:23 +0000 Subject: [PATCH 12/67] rabbitmqadmin-ng: 2.17.0 -> 2.22.0 --- pkgs/by-name/ra/rabbitmqadmin-ng/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ra/rabbitmqadmin-ng/package.nix b/pkgs/by-name/ra/rabbitmqadmin-ng/package.nix index 0a66b8634a08..46a9343c2e2b 100644 --- a/pkgs/by-name/ra/rabbitmqadmin-ng/package.nix +++ b/pkgs/by-name/ra/rabbitmqadmin-ng/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage rec { pname = "rabbitmqadmin-ng"; - version = "2.17.0"; + version = "2.22.0"; src = fetchFromGitHub { owner = "rabbitmq"; repo = "rabbitmqadmin-ng"; tag = "v${version}"; - hash = "sha256-Qz6wfATt7BU1IlrThQpu3UetUWuLz/Y1WKBvsqisUxY="; + hash = "sha256-Y5esZgvaIaAkEDaeBzda3I1LfYS4ho3Nb6ypqank6+U="; }; - cargoHash = "sha256-spGJUY99jF/aZPDxoplPJ+1XHIreqDzxzlD0Ti4IZ68="; + cargoHash = "sha256-Aj6DVn9vPG0U0iMlUVAaxpsyaLyHMj/TeH4sftvuTi8="; buildInputs = [ openssl ]; nativeBuildInputs = [ pkg-config ]; From 6ff101a6677ee4f0edbf6b69b28e3674189631a7 Mon Sep 17 00:00:00 2001 From: Thomas Gerbet Date: Sat, 17 Jan 2026 12:15:16 +0100 Subject: [PATCH 13/67] wordpressPackages.plugins.cookie-notice: 2.5.6 -> 2.5.11 Fixes CVE-2025-67554. Fixes #479845. https://wordpress.org/plugins/cookie-notice/#developers --- pkgs/servers/web-apps/wordpress/packages/plugins.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/web-apps/wordpress/packages/plugins.json b/pkgs/servers/web-apps/wordpress/packages/plugins.json index 4177f3bc20d7..a28e1d4d8561 100644 --- a/pkgs/servers/web-apps/wordpress/packages/plugins.json +++ b/pkgs/servers/web-apps/wordpress/packages/plugins.json @@ -42,10 +42,10 @@ "version": "3.2.1" }, "cookie-notice": { - "path": "cookie-notice/tags/2.5.6", - "rev": "3262965", - "sha256": "1h7avy7mni4cfvh672vnk6n4npz57mpgm8xssp089hn8vqj2d1zx", - "version": "2.5.6" + "path": "cookie-notice/tags/2.5.11", + "rev": "3416491", + "sha256": "0g9xy3dgywnqv2v0wd34rixdqavkrp8zkv6bm8h6kh5q77n168a5", + "version": "2.5.11" }, "disable-xml-rpc": { "path": "disable-xml-rpc/tags/1.0.1", From 73b26a35a44bd322e9ef08e600c03c2bb8b9fb97 Mon Sep 17 00:00:00 2001 From: Daniel Nagy Date: Sun, 18 Jan 2026 11:15:00 +0100 Subject: [PATCH 14/67] akku: pin Guile 3.0.10 This prevents a breakage with the upcoming Guile 3.0.11. --- pkgs/tools/package-management/akku/akku.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/package-management/akku/akku.nix b/pkgs/tools/package-management/akku/akku.nix index 4e74493e44fc..aea754d2ec04 100644 --- a/pkgs/tools/package-management/akku/akku.nix +++ b/pkgs/tools/package-management/akku/akku.nix @@ -1,14 +1,26 @@ { lib, stdenv, + fetchurl, fetchFromGitLab, autoreconfHook, pkg-config, git, - guile, + guile_3_0, curl, nix-update-script, }: +let + # Akku currently breaks starting with Guile 3.0.11. + # So we pin Guile 3.0.10 for now. + # https://hydra.nixos.org/build/319214800/nixlog/1/tail + guile_3_0_10 = guile_3_0.overrideAttrs { + src = fetchurl { + url = "mirror://gnu/guile/guile-3.0.10.tar.xz"; + sha256 = "sha256-vXFoUX/VJjM0RtT3q4FlJ5JWNAlPvTcyLhfiuNjnY4g="; + }; + }; +in stdenv.mkDerivation rec { pname = "akku"; version = "1.1.0-unstable-2025-11-08"; @@ -27,7 +39,7 @@ stdenv.mkDerivation rec { # akku calls curl commands buildInputs = [ - guile + guile_3_0_10 curl git ]; From 74b4fca5b2aee81def2237701f54f0a806c93a3d Mon Sep 17 00:00:00 2001 From: kashw2 Date: Sun, 18 Jan 2026 14:51:07 +1000 Subject: [PATCH 15/67] chess-tui: 2.0.0 -> 2.3.0 --- pkgs/by-name/ch/chess-tui/package.nix | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ch/chess-tui/package.nix b/pkgs/by-name/ch/chess-tui/package.nix index e613f107ad05..5d452e3b8b45 100644 --- a/pkgs/by-name/ch/chess-tui/package.nix +++ b/pkgs/by-name/ch/chess-tui/package.nix @@ -1,33 +1,46 @@ { + stdenv, lib, fetchFromGitHub, rustPlatform, openssl, pkg-config, + alsa-lib, + nix-update-script, }: rustPlatform.buildRustPackage (finalAttrs: { pname = "chess-tui"; - version = "2.0.0"; + version = "2.3.0"; src = fetchFromGitHub { owner = "thomas-mauran"; repo = "chess-tui"; tag = finalAttrs.version; - hash = "sha256-SIQoi/pnbS1TyX6iA8azo0nVfsCQd6ntn9VZCz/Zkgw="; + hash = "sha256-g+rKib+ZoBa2ssYKgS0tg0xngurY1z3DbBZZEn/LJU4="; }; - cargoHash = "sha256-aWj8ruu/Y/VCgvhAkWVfDDztmVzHsZix88JUAOYttmg="; + cargoHash = "sha256-Brj+9AS0ZR/b188jkJa84WRHk0HtiKpMlyMUSLmzBfA="; checkFlags = [ # assertion failed: result.is_ok() "--skip=tests::test_config_create" ]; - buildInputs = [ openssl ]; + buildInputs = [ + openssl + ] + # alsa-lib is required for the alsa-sys. alsa-lib does not compile on darwin + ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib ] + # bindgenHook is required for coreaudio-sys on darwin + ++ lib.optionals stdenv.hostPlatform.isDarwin [ rustPlatform.bindgenHook ]; + nativeBuildInputs = [ pkg-config ]; + PKG_CONFIG_PATH = "${openssl.dev}/lib/pkgconfig"; + passthru.updateScript = nix-update-script { }; + meta = { description = "Chess TUI implementation in rust"; homepage = "https://github.com/thomas-mauran/chess-tui"; From ca3846f9315adc2e3739351034a240b1a5b32c48 Mon Sep 17 00:00:00 2001 From: Colin Date: Mon, 19 Jan 2026 02:31:36 +0000 Subject: [PATCH 16/67] knot-resolver_6: enable strictDeps --- pkgs/by-name/kn/knot-resolver_6/package.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/kn/knot-resolver_6/package.nix b/pkgs/by-name/kn/knot-resolver_6/package.nix index 2948e78eb238..1eac59b89914 100644 --- a/pkgs/by-name/kn/knot-resolver_6/package.nix +++ b/pkgs/by-name/kn/knot-resolver_6/package.nix @@ -72,6 +72,7 @@ let pkg-config meson ninja + protobufc ]; # http://knot-resolver.readthedocs.io/en/latest/build.html#requirements @@ -119,17 +120,21 @@ let doInstallCheck = with stdenv; hostPlatform == buildPlatform; nativeInstallCheckInputs = [ - cmocka which cacert lua.cqueues lua.basexx lua.http ]; + installCheckInputs = [ + cmocka + ]; installCheckPhase = '' meson test --print-errorlogs --no-suite snowflake ''; + strictDeps = true; + passthru = { inherit lua; inherit (finalAttrs) finalPackage; From 4ef0c2ded41c446cd8cd2611554487363e28ee15 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Mon, 5 Jan 2026 15:33:29 +0800 Subject: [PATCH 17/67] buildPython*: overrideStdenvCompat: abstract warning Co-authored-by: Matt Sturgeon --- .../python/python-packages-base.nix | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix index 91d733a33c3e..74ae67e1b563 100644 --- a/pkgs/development/interpreters/python/python-packages-base.nix +++ b/pkgs/development/interpreters/python/python-packages-base.nix @@ -53,13 +53,19 @@ let f': lib.mirrorFunctionArgs f ( args: + let + getName = x: x.pname or (lib.getName (x.name or "")); + applyMsgStdenvArg = + name: + lib.warnIf (lib.oldestSupportedReleaseIsAtLeast 2511) '' + ${name}: Passing `stdenv` directly to `buildPythonPackage` or `buildPythonApplication` is deprecated. You should use their `.override` function instead, e.g: + buildPythonPackage.override { stdenv = customStdenv; } { } + ''; + in if !(lib.isFunction args) && (args ? stdenv) then - lib.warnIf (lib.oldestSupportedReleaseIsAtLeast 2511) '' - ${ - args.name or args.pname or "" - }: Passing `stdenv` directly to `buildPythonPackage` or `buildPythonApplication` is deprecated. You should use their `.override` function instead, e.g: - buildPythonPackage.override { stdenv = customStdenv; } { } - '' (f'.override { inherit (args) stdenv; } (removeAttrs args [ "stdenv" ])) + applyMsgStdenvArg (getName args) ( + f'.override { inherit (args) stdenv; } (removeAttrs args [ "stdenv" ]) + ) else f args ) From 5b114f0534d820d60186d402e8964b64d67e810e Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Mon, 5 Jan 2026 15:37:43 +0800 Subject: [PATCH 18/67] buildPython*: overrideStdenvCompat: lower warnings down to the stdenv override value If Nix supports lazy attribute names in the future, this change will make `.override` warning-free and make such warning (or future throw) remediateable via another override. --- pkgs/development/interpreters/python/python-packages-base.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix index 74ae67e1b563..1fe5fcbaf60e 100644 --- a/pkgs/development/interpreters/python/python-packages-base.nix +++ b/pkgs/development/interpreters/python/python-packages-base.nix @@ -63,8 +63,8 @@ let ''; in if !(lib.isFunction args) && (args ? stdenv) then - applyMsgStdenvArg (getName args) ( - f'.override { inherit (args) stdenv; } (removeAttrs args [ "stdenv" ]) + f'.override { stdenv = applyMsgStdenvArg (getName args) args.stdenv; } ( + removeAttrs args [ "stdenv" ] ) else f args From de48b6a845e7f206d8c11075a507814b6b5d13c7 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Mon, 5 Jan 2026 16:06:56 +0800 Subject: [PATCH 19/67] buildPython*: extend overrideStdenvCompat to fixed-point arguments with `passthru.__stdenvPythonCompat` Co-authored-by: Matt Sturgeon --- .../interpreters/python/mk-python-derivation.nix | 1 + .../interpreters/python/python-packages-base.nix | 11 +++++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index f3e5249c189e..0fb0a1326025 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -418,6 +418,7 @@ lib.extendMkDerivation { optional-dependencies ; updateScript = nix-update-script { }; + ${if attrs ? stdenv then "__stdenvPythonCompat" else null} = attrs.stdenv; } // attrs.passthru or { }; diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix index 1fe5fcbaf60e..77ac26630161 100644 --- a/pkgs/development/interpreters/python/python-packages-base.nix +++ b/pkgs/development/interpreters/python/python-packages-base.nix @@ -54,6 +54,7 @@ let lib.mirrorFunctionArgs f ( args: let + result = f args; getName = x: x.pname or (lib.getName (x.name or "")); applyMsgStdenvArg = name: @@ -62,12 +63,18 @@ let buildPythonPackage.override { stdenv = customStdenv; } { } ''; in - if !(lib.isFunction args) && (args ? stdenv) then + if lib.isFunction args && result ? __stdenvPythonCompat then + # Less reliable, as constructing with the wrong `stdenv` might lead to evaluation errors in the package definition. + f'.override { stdenv = applyMsgStdenvArg (getName result) result.__stdenvPythonCompat; } ( + finalAttrs: removeAttrs (args finalAttrs) [ "stdenv" ] + ) + else if (!lib.isFunction args) && (args ? stdenv) then + # More reliable, but only works when args is not `(finalAttrs: { })` f'.override { stdenv = applyMsgStdenvArg (getName args) args.stdenv; } ( removeAttrs args [ "stdenv" ] ) else - f args + result ) // { # Preserve the effect of overrideStdenvCompat when calling `buildPython*.override`. From dde8c23da21daee38605216180acf9279a3a410f Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 09:35:44 +0000 Subject: [PATCH 20/67] python3Packages.torch-geometric: skip failing tests on python>=3.14 --- .../torch-geometric/default.nix | 77 ++++++++++++++----- 1 file changed, 58 insertions(+), 19 deletions(-) diff --git a/pkgs/development/python-modules/torch-geometric/default.nix b/pkgs/development/python-modules/torch-geometric/default.nix index 06ebacdca490..dfe08055bd8e 100644 --- a/pkgs/development/python-modules/torch-geometric/default.nix +++ b/pkgs/development/python-modules/torch-geometric/default.nix @@ -71,7 +71,7 @@ pythonAtLeast, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "torch-geometric"; version = "2.7.0"; pyproject = true; @@ -79,7 +79,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "pyg-team"; repo = "pytorch_geometric"; - tag = version; + tag = finalAttrs.version; hash = "sha256-xlOzpoYRoEfIRWSQoZbEPvUW43AMr3rCgIYnxwG/z3A="; }; @@ -165,9 +165,7 @@ buildPythonPackage rec { ]; }; - pythonImportsCheck = [ - "torch_geometric" - ]; + pythonImportsCheck = [ "torch_geometric" ]; nativeCheckInputs = [ pytestCheckHook @@ -249,26 +247,67 @@ buildPythonPackage rec { # RuntimeError: Boolean value of Tensor with more than one value is ambiguous "test_feature_store" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # TypeError: cannot pickle 'sqlite3.Connection' object + "test_dataloader_on_disk_dataset" + + # AssertionError: assert False + # assert utils.supports_bipartite_graphs('SAGEConv') + "test_gnn_cheatsheet" + + # AttributeError: readonly attribute + "test_fill_config_store" + "test_register" + "test_to_dataclass" + + # AttributeError: '...' object has no attribute '__annotations__' + "test_degree_scaler_aggregation" + "test_explain_message" + "test_fused_aggregation" + "test_gcn_conv_with_decomposed_layers" + "test_hetero_dict_linear_jit" + "test_hetero_linear_basic" + "test_jit" + "test_mlp" + "test_multi_agg" + "test_my_commented_conv" + "test_my_conv_jit" + "test_my_conv_jit_save" + "test_my_default_arg_conv" + "test_my_edge_conv_jit" + "test_my_kwargs_conv" + "test_my_multiple_aggr_conv_jit" + "test_pickle" + "test_sequential_jit" + "test_torch_script" + "test_traceable_my_conv_with_self_loops" + "test_tuple_output_jit" ]; - disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [ - # MPS (Metal) tests are failing when using `libtorch_cpu`. - # Crashes in `structured_cat_out_mps` - "test/nn/models/test_deep_graph_infomax.py::test_infomax_predefined_model[mps]" - "test/nn/norm/test_instance_norm.py::test_instance_norm[True-mps]" - "test/nn/norm/test_instance_norm.py::test_instance_norm[False-mps]" - "test/nn/norm/test_layer_norm.py::test_layer_norm[graph-True-mps]" - "test/nn/norm/test_layer_norm.py::test_layer_norm[graph-False-mps]" - "test/nn/norm/test_layer_norm.py::test_layer_norm[node-True-mps]" - "test/nn/norm/test_layer_norm.py::test_layer_norm[node-False-mps]" - "test/utils/test_scatter.py::test_group_cat[mps]" - ]; + disabledTestPaths = + lib.optionals stdenv.hostPlatform.isDarwin [ + # MPS (Metal) tests are failing when using `libtorch_cpu`. + # Crashes in `structured_cat_out_mps` + "test/nn/models/test_deep_graph_infomax.py::test_infomax_predefined_model[mps]" + "test/nn/norm/test_instance_norm.py::test_instance_norm[True-mps]" + "test/nn/norm/test_instance_norm.py::test_instance_norm[False-mps]" + "test/nn/norm/test_layer_norm.py::test_layer_norm[graph-True-mps]" + "test/nn/norm/test_layer_norm.py::test_layer_norm[graph-False-mps]" + "test/nn/norm/test_layer_norm.py::test_layer_norm[node-True-mps]" + "test/nn/norm/test_layer_norm.py::test_layer_norm[node-False-mps]" + "test/utils/test_scatter.py::test_group_cat[mps]" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # AttributeError: '...' object has no attribute '__annotations__' + "test/nn/aggr/test_aggr_utils.py" + ]; meta = { description = "Graph Neural Network Library for PyTorch"; homepage = "https://github.com/pyg-team/pytorch_geometric"; - changelog = "https://github.com/pyg-team/pytorch_geometric/blob/${src.rev}/CHANGELOG.md"; + changelog = "https://github.com/pyg-team/pytorch_geometric/blob/${finalAttrs.src.tag}/CHANGELOG.md"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) From 810209c2176416a6718e6bf7dc2f460eefce01b3 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 09:53:55 +0000 Subject: [PATCH 21/67] python3Packages.compressai: skip failing tests on python>=3.14 --- .../python-modules/compressai/default.nix | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/compressai/default.nix b/pkgs/development/python-modules/compressai/default.nix index 6e453e9488e7..e56ce6e7f05c 100644 --- a/pkgs/development/python-modules/compressai/default.nix +++ b/pkgs/development/python-modules/compressai/default.nix @@ -3,6 +3,7 @@ stdenv, buildPythonPackage, fetchFromGitHub, + pythonAtLeast, # build-system pybind11, @@ -31,7 +32,7 @@ pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "compressai"; version = "1.2.8"; pyproject = true; @@ -39,9 +40,9 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "InterDigitalInc"; repo = "CompressAI"; - tag = "v${version}"; - hash = "sha256-Fgobh7Q1rKomcqAT4kJl2RsM1W13ErO8sFB2urCqrCk="; + tag = "v${finalAttrs.version}"; fetchSubmodules = true; + hash = "sha256-Fgobh7Q1rKomcqAT4kJl2RsM1W13ErO8sFB2urCqrCk="; }; build-system = [ @@ -100,6 +101,12 @@ buildPythonPackage rec { # Flaky (AssertionError: assert 0.08889999999999998 < 0.064445) "test_compiling" "test_find_close" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # AttributeError: '...' object has no attribute '__annotations__' + "test_gdn" + "test_gdn1" + "test_lower_bound_script" ]; disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [ @@ -117,4 +124,4 @@ buildPythonPackage rec { license = lib.licenses.bsd3Clear; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) From 5dab8cdd0f69d9dc17ba5ed808d3cdb7dd38366f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 Jan 2026 14:28:15 +0000 Subject: [PATCH 22/67] minio-warp: 1.3.1 -> 1.4.0 --- pkgs/by-name/mi/minio-warp/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/mi/minio-warp/package.nix b/pkgs/by-name/mi/minio-warp/package.nix index cb50680ab54e..3eb9e2538ade 100644 --- a/pkgs/by-name/mi/minio-warp/package.nix +++ b/pkgs/by-name/mi/minio-warp/package.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "minio-warp"; - version = "1.3.1"; + version = "1.4.0"; src = fetchFromGitHub { owner = "minio"; repo = "warp"; rev = "v${version}"; - hash = "sha256-bXThbMwT3T59nFCMEz8TnMMDYq26rDwKTOBamVGRsyM="; + hash = "sha256-y76A9m0vLCAEP7/HPRwCPZ5vt2xXw2f+dGmOOi86c1c="; }; - vendorHash = "sha256-fo4LLRqqylx4oZOkLOgFzT436+vjap9dW+IpQ0IFa8Y="; + vendorHash = "sha256-4gwFXMUCqr3Fui0iMnCNHLJ7ikyAdhX/rgZIarUNIHw="; # See .goreleaser.yml ldflags = [ From d4e91aae96b0bf43345b2897bc2e1fe8ccb0c2b8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 Jan 2026 17:24:23 +0000 Subject: [PATCH 23/67] parca-agent: 0.44.2 -> 0.45.0 --- pkgs/by-name/pa/parca-agent/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pa/parca-agent/package.nix b/pkgs/by-name/pa/parca-agent/package.nix index 81756629bc77..d10210c4de64 100644 --- a/pkgs/by-name/pa/parca-agent/package.nix +++ b/pkgs/by-name/pa/parca-agent/package.nix @@ -8,18 +8,18 @@ buildGoModule (finalAttrs: { pname = "parca-agent"; - version = "0.44.2"; + version = "0.45.0"; src = fetchFromGitHub { owner = "parca-dev"; repo = "parca-agent"; tag = "v${finalAttrs.version}"; - hash = "sha256-nRStraxWDk3eY6L4znPsvT+NNz/cIYBae5sdYnOybi0="; + hash = "sha256-WGR4EFsM7C7lf8VbPefw/4sQQD2ld3jCJE52M7MbRi8="; fetchSubmodules = true; }; proxyVendor = true; - vendorHash = "sha256-OvhKmCxLIzLXxBmTaLrZFTAIkZXG2C1AZggaVYhlF3I="; + vendorHash = "sha256-KwXSiZsviyR0wDKYFwlDUvJ+7PpEUoSyLsw2ZVcyK60="; buildInputs = [ stdenv.cc.libc.static From e2d30688e4ba5cee214014e8107750fa329a2791 Mon Sep 17 00:00:00 2001 From: Kenichi Kamiya Date: Tue, 20 Jan 2026 02:54:48 +0900 Subject: [PATCH 24/67] cargo-nextest: skip unstable versions in updateScript --- pkgs/by-name/ca/cargo-nextest/package.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ca/cargo-nextest/package.nix b/pkgs/by-name/ca/cargo-nextest/package.nix index 17fe3011d6bc..7867ce393a88 100644 --- a/pkgs/by-name/ca/cargo-nextest/package.nix +++ b/pkgs/by-name/ca/cargo-nextest/package.nix @@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec { src = fetchFromGitHub { owner = "nextest-rs"; repo = "nextest"; - rev = "cargo-nextest-${version}"; + tag = "cargo-nextest-${version}"; hash = "sha256-Ff9GibY6pm7+NbgAB8iNO+uj+uK1sxU+UkaiIS5BLEk="; }; @@ -33,7 +33,9 @@ rustPlatform.buildRustPackage rec { "cargo-nextest" ]; - passthru.updateScript = nix-update-script { }; + passthru.updateScript = nix-update-script { + extraArgs = [ "--version-regex=^cargo-nextest-([0-9.]+)$" ]; + }; meta = { description = "Next-generation test runner for Rust projects"; From a23e84db494af3c1fc36338254746e25147f1d80 Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Mon, 19 Jan 2026 14:55:51 +0100 Subject: [PATCH 25/67] gitlab: use pname and version instead of name --- pkgs/by-name/gi/gitlab/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gi/gitlab/package.nix b/pkgs/by-name/gi/gitlab/package.nix index 643779c11af1..a78e89ebeeb5 100644 --- a/pkgs/by-name/gi/gitlab/package.nix +++ b/pkgs/by-name/gi/gitlab/package.nix @@ -234,9 +234,9 @@ let }; in stdenv.mkDerivation { - name = "gitlab${lib.optionalString gitlabEnterprise "-ee"}-${version}"; + pname = "gitlab${lib.optionalString gitlabEnterprise "-ee"}"; - inherit src; + inherit src version; nativeBuildInputs = [ makeWrapper ]; buildInputs = [ From 3e3c8389bb55e6f6a340d28b2aa1a738684fd5a1 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 08:58:36 +0000 Subject: [PATCH 26/67] python3Packages.qcodes: 0.53.0 -> 0.54.4 Diff: https://github.com/microsoft/Qcodes/compare/v0.53.0...v0.54.4 Changelog: https://github.com/QCoDeS/Qcodes/releases/tag/v0.54.4 --- .../python-modules/qcodes/default.nix | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/pkgs/development/python-modules/qcodes/default.nix b/pkgs/development/python-modules/qcodes/default.nix index 337f078f8855..33a7e8547639 100644 --- a/pkgs/development/python-modules/qcodes/default.nix +++ b/pkgs/development/python-modules/qcodes/default.nix @@ -14,11 +14,11 @@ h5netcdf, h5py, ipykernel, - ipython, ipywidgets, jsonschema, libcst, matplotlib, + networkx, numpy, opentelemetry-api, packaging, @@ -32,12 +32,10 @@ typing-extensions, uncertainties, websockets, - wrapt, xarray, # optional-dependencies furo, - jinja2, nbsphinx, pyvisa-sim, scipy, @@ -59,21 +57,23 @@ writableTmpDirAsHomeHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "qcodes"; - version = "0.53.0"; + version = "0.54.4"; pyproject = true; src = fetchFromGitHub { owner = "microsoft"; repo = "Qcodes"; - tag = "v${version}"; - hash = "sha256-uXVL25U7szJF/v7OEsB9Ww1h6ziBxsMJdqhZG5qn0VU="; + tag = "v${finalAttrs.version}"; + hash = "sha256-xiD/Iy/5FVadOc9/AxUbGgpOlyli2g6/hwpY1J3/urE="; }; postPatch = '' substituteInPlace pyproject.toml \ - --replace-fail 'default-version = "0.0"' 'default-version = "${version}"' + --replace-fail \ + 'default-version = "0.54.0dev+Unknown"' \ + 'default-version = "${finalAttrs.version}"' ''; build-system = [ @@ -88,10 +88,10 @@ buildPythonPackage rec { h5netcdf h5py ipykernel - ipython ipywidgets jsonschema matplotlib + networkx numpy opentelemetry-api packaging @@ -105,7 +105,6 @@ buildPythonPackage rec { typing-extensions uncertainties websockets - wrapt xarray ]; @@ -113,7 +112,6 @@ buildPythonPackage rec { docs = [ # autodocsumm furo - jinja2 nbsphinx pyvisa-sim # qcodes-loop @@ -160,6 +158,13 @@ buildPythonPackage rec { "--hypothesis-profile ci" # Follow upstream with settings "--durations=20" + + # ERROR tests/test_interactive_widget.py - DeprecationWarning: Jupyter is migrating its paths to use standard platformdirs + # given by the platformdirs library. To remove this warning and + # see the appropriate new directories, set the environment variable + # `JUPYTER_PLATFORM_DIRS=1` and then run `jupyter --paths`. + # The use of platformdirs will be the default in `jupyter_core` v6 + "-Wignore::DeprecationWarning" ]; disabledTestPaths = [ @@ -200,10 +205,10 @@ buildPythonPackage rec { meta = { description = "Python-based data acquisition framework"; - changelog = "https://github.com/QCoDeS/Qcodes/releases/tag/${src.tag}"; + changelog = "https://github.com/QCoDeS/Qcodes/releases/tag/${finalAttrs.src.tag}"; downloadPage = "https://github.com/QCoDeS/Qcodes"; homepage = "https://qcodes.github.io/Qcodes/"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ evilmav ]; }; -} +}) From 4c530935715a69b0fc0eb9fb058b14ccadd07a26 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 11:18:40 +0000 Subject: [PATCH 27/67] python3Packages.qcodes: remove evilmav from maintainers --- pkgs/development/python-modules/qcodes/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/qcodes/default.nix b/pkgs/development/python-modules/qcodes/default.nix index 33a7e8547639..c03515983db7 100644 --- a/pkgs/development/python-modules/qcodes/default.nix +++ b/pkgs/development/python-modules/qcodes/default.nix @@ -209,6 +209,6 @@ buildPythonPackage (finalAttrs: { downloadPage = "https://github.com/QCoDeS/Qcodes"; homepage = "https://qcodes.github.io/Qcodes/"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ evilmav ]; + maintainers = with lib.maintainers; [ ]; }; }) From 349c4cb04b743d0a26e608625fbb1969f1a54f9d Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 11:18:54 +0000 Subject: [PATCH 28/67] python3Packages.qcodes: add GaetanLepage to maintainers --- pkgs/development/python-modules/qcodes/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/qcodes/default.nix b/pkgs/development/python-modules/qcodes/default.nix index c03515983db7..d7610f8bdd5a 100644 --- a/pkgs/development/python-modules/qcodes/default.nix +++ b/pkgs/development/python-modules/qcodes/default.nix @@ -209,6 +209,8 @@ buildPythonPackage (finalAttrs: { downloadPage = "https://github.com/QCoDeS/Qcodes"; homepage = "https://qcodes.github.io/Qcodes/"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ ]; + maintainers = with lib.maintainers; [ + GaetanLepage + ]; }; }) From 93a099ec1d22d5033d7d1b62f741977280f921e3 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 09:05:43 +0000 Subject: [PATCH 29/67] python3Packages.qcodes-contrib-drivers: use finalAttrs --- .../python-modules/qcodes-contrib-drivers/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/qcodes-contrib-drivers/default.nix b/pkgs/development/python-modules/qcodes-contrib-drivers/default.nix index ef5048090a7a..7779e3c04cca 100644 --- a/pkgs/development/python-modules/qcodes-contrib-drivers/default.nix +++ b/pkgs/development/python-modules/qcodes-contrib-drivers/default.nix @@ -23,7 +23,7 @@ writableTmpDirAsHomeHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "qcodes-contrib-drivers"; version = "0.23.0"; pyproject = true; @@ -31,7 +31,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "QCoDeS"; repo = "Qcodes_contrib_drivers"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-m2idBaQl2OVhrY5hcLTeXY6BycGf0ufa/ySgxaU2L/4="; }; @@ -71,8 +71,8 @@ buildPythonPackage rec { meta = { description = "User contributed drivers for QCoDeS"; homepage = "https://github.com/QCoDeS/Qcodes_contrib_drivers"; - changelog = "https://github.com/QCoDeS/Qcodes_contrib_drivers/releases/tag/v${version}"; + changelog = "https://github.com/QCoDeS/Qcodes_contrib_drivers/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ evilmav ]; }; -} +}) From 38b950f3c00bfcace0b5201510a988867c789b34 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 11:11:57 +0000 Subject: [PATCH 30/67] python3Packages.txaio: 25.6.1 -> 25.12.2 Changelog: https://github.com/crossbario/txaio/blob/v25.12.2/docs/releases.rst --- .../python-modules/txaio/default.nix | 44 ++++++------------- 1 file changed, 14 insertions(+), 30 deletions(-) diff --git a/pkgs/development/python-modules/txaio/default.nix b/pkgs/development/python-modules/txaio/default.nix index 3289c9eaf663..0c33a85a3065 100644 --- a/pkgs/development/python-modules/txaio/default.nix +++ b/pkgs/development/python-modules/txaio/default.nix @@ -1,54 +1,38 @@ { lib, buildPythonPackage, - fetchPypi, - mock, - pytest-asyncio, + fetchFromGitHub, + hatchling, pytestCheckHook, - twisted, - zope-interface, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "txaio"; - version = "25.6.1"; - format = "setuptools"; + version = "25.12.2"; + pyproject = true; - src = fetchPypi { - inherit pname version; - hash = "sha256-2MA9yoI1Fcm8qSDfM1BJI65U8tq/R2zFqe1cwWke1oc="; + src = fetchFromGitHub { + owner = "crossbario"; + repo = "txaio"; + tag = "v${lib.replaceString "." "_" finalAttrs.version}"; + hash = "sha256-/vlkjSOlQYbRpjMySBzoSBSXm0yxWSHmzIF3ZfFIR64="; }; - propagatedBuildInputs = [ - twisted - zope-interface + build-system = [ + hatchling ]; nativeCheckInputs = [ - mock - pytest-asyncio pytestCheckHook ]; - disabledTests = [ - # No real value - "test_sdist" - # Some tests seems out-dated and require additional data - "test_as_future" - "test_errback" - "test_create_future" - "test_callback" - "test_immediate_result" - "test_cancel" - ]; - pythonImportsCheck = [ "txaio" ]; meta = { description = "Utilities to support code that runs unmodified on Twisted and asyncio"; homepage = "https://github.com/crossbario/txaio"; - changelog = "https://github.com/crossbario/txaio/blob/v${version}/docs/releases.rst"; + changelog = "https://github.com/crossbario/txaio/blob/${finalAttrs.src.tag}/docs/releases.rst"; license = lib.licenses.mit; maintainers = [ ]; }; -} +}) From e295658655232359902fcd311f27554e33bf7300 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 19 Jan 2026 11:31:35 +0000 Subject: [PATCH 31/67] python3Packages.autobahn: 24.4.2 -> 25.12.2 Diff: https://github.com/crossbario/autobahn-python/compare/v24.4.2...v25.12.2 Changelog: https://github.com/crossbario/autobahn-python/blob/refs/tags/v25.12.2/docs/changelog.rst --- .../python-modules/autobahn/default.nix | 126 ++++++++++-------- 1 file changed, 72 insertions(+), 54 deletions(-) diff --git a/pkgs/development/python-modules/autobahn/default.nix b/pkgs/development/python-modules/autobahn/default.nix index e10fba4c46f1..c0c31b346e2e 100644 --- a/pkgs/development/python-modules/autobahn/default.nix +++ b/pkgs/development/python-modules/autobahn/default.nix @@ -2,56 +2,66 @@ lib, buildPythonPackage, fetchFromGitHub, - fetchpatch2, - attrs, - argon2-cffi, - cbor2, + + # build-system cffi, + hatchling, + setuptools, + + # dependencies cryptography, - flatbuffers, hyperlink, - mock, - msgpack, - passlib, - py-ubjson, pynacl, - pygobject3, + txaio, + + # optional-dependencies + # compress + python-snappy, + # encryption + base58, pyopenssl, qrcode, - pytest-asyncio_0, - python-snappy, - pytestCheckHook, - pythonOlder, service-identity, - setuptools, - twisted, - txaio, + # scram + argon2-cffi, + passlib, + # serialization + cbor2, + flatbuffers, + msgpack, ujson, + py-ubjson, + # twisted + attrs, + twisted, zope-interface, + # ui + pygobject3, + + # tests + mock, + pytest-asyncio_0, + pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "autobahn"; - version = "24.4.2"; + version = "25.12.2"; pyproject = true; src = fetchFromGitHub { owner = "crossbario"; repo = "autobahn-python"; - tag = "v${version}"; - hash = "sha256-aeTE4a37zr83KZ+v947XikzFrHAhkZ4mj4tXdkQnB84="; + tag = "v${finalAttrs.version}"; + hash = "sha256-vSS7DpfGfNwQT8OsgEXJaP5J40QFIopdAD94/y7/jFY="; }; - patches = [ - (fetchpatch2 { - # removal of broken pytest-asyncio markers - url = "https://github.com/crossbario/autobahn-python/commit/7bc85b34e200640ab98a41cfddb38267f39bc92e.patch"; - hash = "sha256-JbuYWQhvjlXuHde8Z3ZSJAyrMOdIcE1GOq+Eh2HTz8c="; - }) + build-system = [ + cffi + hatchling + setuptools ]; - build-system = [ setuptools ]; - dependencies = [ cryptography hyperlink @@ -59,29 +69,6 @@ buildPythonPackage rec { txaio ]; - nativeCheckInputs = [ - mock - pytest-asyncio_0 - pytestCheckHook - ] - ++ optional-dependencies.scram - ++ optional-dependencies.serialization; - - preCheck = '' - # Run asyncio tests (requires twisted) - export USE_ASYNCIO=1 - ''; - - enabledTestPaths = [ - "./autobahn" - ]; - - disabledTestPaths = [ - "./autobahn/twisted" - ]; - - pythonImportsCheck = [ "autobahn" ]; - optional-dependencies = lib.fix (self: { all = self.accelerate @@ -97,6 +84,8 @@ buildPythonPackage rec { ]; compress = [ python-snappy ]; encryption = [ + base58 + # ecdsa (marked as insecure) pynacl pyopenssl qrcode # pytrie @@ -123,11 +112,40 @@ buildPythonPackage rec { ui = [ pygobject3 ]; }); + pythonImportsCheck = [ "autobahn" ]; + + nativeCheckInputs = [ + mock + pytest-asyncio_0 + pytestCheckHook + ] + ++ finalAttrs.passthru.optional-dependencies.encryption + ++ finalAttrs.passthru.optional-dependencies.scram + ++ finalAttrs.passthru.optional-dependencies.serialization; + + preCheck = '' + # Run asyncio tests (requires twisted) + export USE_ASYNCIO=1 + rm src/autobahn/__init__.py + ''; + + enabledTestPaths = [ + "src/autobahn" + ]; + + disabledTestPaths = [ + "src/autobahn/twisted" + + # Requires insecure ecdsa library + "src/autobahn/wamp/test/test_wamp_cryptosign.py" + ]; + meta = { - changelog = "https://github.com/crossbario/autobahn-python/blob/${src.rev}/docs/changelog.rst"; description = "WebSocket and WAMP in Python for Twisted and asyncio"; homepage = "https://crossbar.io/autobahn"; + downloadPage = "https://github.com/crossbario/autobahn-python"; + changelog = "https://github.com/crossbario/autobahn-python/blob/${finalAttrs.src.tag}/docs/changelog.rst"; license = lib.licenses.mit; maintainers = [ ]; }; -} +}) From e40be51140fa7580462d46aa905d368020bf6299 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 Jan 2026 22:18:55 +0000 Subject: [PATCH 32/67] libretro.flycast: 0-unstable-2025-12-29 -> 0-unstable-2026-01-19 --- pkgs/applications/emulators/libretro/cores/flycast.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/emulators/libretro/cores/flycast.nix b/pkgs/applications/emulators/libretro/cores/flycast.nix index b307f1480f41..f21fe82b67ff 100644 --- a/pkgs/applications/emulators/libretro/cores/flycast.nix +++ b/pkgs/applications/emulators/libretro/cores/flycast.nix @@ -8,13 +8,13 @@ }: mkLibretroCore { core = "flycast"; - version = "0-unstable-2025-12-29"; + version = "0-unstable-2026-01-19"; src = fetchFromGitHub { owner = "flyinghead"; repo = "flycast"; - rev = "4886dcb1c20cd4a85627cc4970d9d01cdf1c2d7d"; - hash = "sha256-Lp0MCf8MbqfeSdp6qrWi+q1xgatKl+8HDbTSd5xuzLM="; + rev = "f86e195017fb1595c2622bca3c95e88198194784"; + hash = "sha256-Cd3vFpB66Bymv/Zjzd4XO3qJn5vaSnkWV1i5IxtaXXc="; fetchSubmodules = true; }; From 071a3b9d25568ce2b66f79431fd65a1e9bfbe3e9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 Jan 2026 23:44:42 +0000 Subject: [PATCH 33/67] elpa: 2025.06.001 -> 2025.06.002 --- pkgs/by-name/el/elpa/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/el/elpa/package.nix b/pkgs/by-name/el/elpa/package.nix index 2247ce9dc58b..2fda624d90e0 100644 --- a/pkgs/by-name/el/elpa/package.nix +++ b/pkgs/by-name/el/elpa/package.nix @@ -28,13 +28,13 @@ assert blas.isILP64 == scalapack.isILP64; stdenv.mkDerivation rec { pname = "elpa"; - version = "2025.06.001"; + version = "2025.06.002"; passthru = { inherit (blas) isILP64; }; src = fetchurl { url = "https://elpa.mpcdf.mpg.de/software/tarball-archive/Releases/${version}/elpa-${version}.tar.gz"; - sha256 = "sha256-/usf6hq0qGcLjTJAdl7wragoBi737JtzXuy6KEhRXJQ="; + sha256 = "sha256-3jGAwG4rDbtWk56ErRpf0WhEZb04rSGWeS0PQCiTf9o="; }; patches = [ From d76ed3ea14ee68eb4daae7a38c74923d7f53f5df Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 19 Jan 2026 19:19:07 +0200 Subject: [PATCH 34/67] libqalculate: 5.8.2 -> 5.9.0 Diff: https://github.com/qalculate/libqalculate/compare/v5.8.2...v5.9.0 Particularly, see: https://github.com/Qalculate/libqalculate/pull/869 for dropping `intltool`. --- pkgs/by-name/li/libqalculate/package.nix | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/li/libqalculate/package.nix b/pkgs/by-name/li/libqalculate/package.nix index acef76c7a30d..0b70df361a2c 100644 --- a/pkgs/by-name/li/libqalculate/package.nix +++ b/pkgs/by-name/li/libqalculate/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - intltool, pkg-config, doxygen, autoreconfHook, @@ -27,13 +26,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libqalculate"; - version = "5.8.2"; + version = "5.9.0"; src = fetchFromGitHub { owner = "qalculate"; repo = "libqalculate"; tag = "v${finalAttrs.version}"; - hash = "sha256-oA4AcsnyBhH6YtyHAb5Duzf5vGhY3tJT0Su3C09xOPU="; + hash = "sha256-BhpqNTFkghb+Qg/oEKfascvo5Q5BKXjzCOL8S7OE4Kc="; }; outputs = [ @@ -43,7 +42,6 @@ stdenv.mkDerivation (finalAttrs: { ]; nativeBuildInputs = [ - intltool pkg-config autoreconfHook doxygen @@ -65,10 +63,6 @@ stdenv.mkDerivation (finalAttrs: { ]; enableParallelBuilding = true; - preConfigure = '' - intltoolize -f - ''; - postPatch = lib.optionalString (gnuplotBinary != "") '' substituteInPlace libqalculate/Calculator-plot.cc \ --replace-fail 'commandline = "gnuplot"' 'commandline = "${gnuplotBinary}"' \ From 7ee6e842a0f6b810e7c5ff1f778c10b199cfa4e4 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 20 Jan 2026 02:04:04 +0200 Subject: [PATCH 35/67] qalculate-qt: remove intltool Not needed since a long time now probably. GitHub search in repository lists only this commit: https://github.com/Qalculate/qalculate-qt/commit/b3bb8a2d042f401ab26f63e60b2e287da47124ec Which is irrelevant for us. --- pkgs/by-name/qa/qalculate-qt/package.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/by-name/qa/qalculate-qt/package.nix b/pkgs/by-name/qa/qalculate-qt/package.nix index 9e2c4b24d028..d042807c9540 100644 --- a/pkgs/by-name/qa/qalculate-qt/package.nix +++ b/pkgs/by-name/qa/qalculate-qt/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - intltool, pkg-config, qt6, libqalculate, @@ -21,7 +20,6 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = with qt6; [ qmake - intltool pkg-config qttools wrapQtAppsHook From 600894377095651882c283f224d390858306a31f Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 19 Jan 2026 19:19:19 +0200 Subject: [PATCH 36/67] qalculate-qt: 5.8.2 -> 5.9.0 Diff: https://github.com/qalculate/qalculate-qt/compare/v5.8.2...v5.9.0 --- pkgs/by-name/qa/qalculate-qt/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/qa/qalculate-qt/package.nix b/pkgs/by-name/qa/qalculate-qt/package.nix index d042807c9540..930828348c2e 100644 --- a/pkgs/by-name/qa/qalculate-qt/package.nix +++ b/pkgs/by-name/qa/qalculate-qt/package.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "qalculate-qt"; - version = "5.8.2"; + version = "5.9.0"; src = fetchFromGitHub { owner = "qalculate"; repo = "qalculate-qt"; tag = "v${finalAttrs.version}"; - hash = "sha256-+5LEXc5B2Kt5UifIV2owSsp7Yd412gppMeHs2YLdGYg="; + hash = "sha256-/8Ipz+K0IEuZwvjNlvI01kGqxHOAQ8Il+XW2QYXQH8A="; }; nativeBuildInputs = with qt6; [ From dc8b1a824c98a561f48871be4fe265b21950aa90 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 19 Jan 2026 16:27:41 +0000 Subject: [PATCH 37/67] qalculate-gtk: 5.8.2 -> 5.9.0 Diff: https://github.com/Qalculate/qalculate-gtk/compare/v5.8.2...v5.9.0 In particular, see https://github.com/Qalculate/qalculate-gtk/pull/681 for intltool removal. --- pkgs/by-name/qa/qalculate-gtk/package.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/qa/qalculate-gtk/package.nix b/pkgs/by-name/qa/qalculate-gtk/package.nix index 5b3eedf60d68..a1a08dcc692c 100644 --- a/pkgs/by-name/qa/qalculate-gtk/package.nix +++ b/pkgs/by-name/qa/qalculate-gtk/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - intltool, autoreconfHook, pkg-config, libqalculate, @@ -14,19 +13,18 @@ stdenv.mkDerivation (finalAttrs: { pname = "qalculate-gtk"; - version = "5.8.2"; + version = "5.9.0"; src = fetchFromGitHub { owner = "qalculate"; repo = "qalculate-gtk"; tag = "v${finalAttrs.version}"; - hash = "sha256-jJKy3LKO2ihtXtYMSOlVvq8RAfgpcxDgE8Ud9Fzd/Qg="; + hash = "sha256-5rldVskEoCJi6SvBn4xbGUB9wb6lObToi8gN3e8FvHY="; }; hardeningDisable = [ "format" ]; nativeBuildInputs = [ - intltool pkg-config autoreconfHook wrapGAppsHook3 From 2607374e8c3b4c6762013efb40d8572af6e70b5d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 00:05:58 +0000 Subject: [PATCH 38/67] python3Packages.python-heatclient: 4.3.0 -> 5.0.0 --- pkgs/development/python-modules/python-heatclient/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/python-heatclient/default.nix b/pkgs/development/python-modules/python-heatclient/default.nix index d588a1c76851..f15df2138ba0 100644 --- a/pkgs/development/python-modules/python-heatclient/default.nix +++ b/pkgs/development/python-modules/python-heatclient/default.nix @@ -25,13 +25,13 @@ buildPythonPackage rec { pname = "python-heatclient"; - version = "4.3.0"; + version = "5.0.0"; pyproject = true; src = fetchPypi { pname = "python_heatclient"; inherit version; - hash = "sha256-itp863fyXw2+OuLjMoowRhrblP+/NrDCqrwszkg7dfA="; + hash = "sha256-q3CtG+bRPo9gNHl6KJSutDU33EKUun/7C0pBe1ahpx4="; }; build-system = [ From 4365feb8bb3520fa74b9edfbb1a1e22d4d891358 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 00:21:12 +0000 Subject: [PATCH 39/67] mpd: 0.24.6 -> 0.24.7 --- pkgs/by-name/mp/mpd/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mp/mpd/package.nix b/pkgs/by-name/mp/mpd/package.nix index 0620c6e60c71..53fc3f5583aa 100644 --- a/pkgs/by-name/mp/mpd/package.nix +++ b/pkgs/by-name/mp/mpd/package.nix @@ -197,13 +197,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "mpd"; - version = "0.24.6"; + version = "0.24.7"; src = fetchFromGitHub { owner = "MusicPlayerDaemon"; repo = "MPD"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-KAyTDfe3bEFWwImNaTOgq0jAs49kH8H+8ZJPQipN4QA="; + sha256 = "sha256-2sOlyeEpg48J1GZu25Umz/Wl2i7EqL8R9HslDidX3NM="; }; buildInputs = [ From 30eb17a3de83cf95db581514badea479ee1a7b7f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 01:08:11 +0000 Subject: [PATCH 40/67] release-plz: 0.3.150 -> 0.3.151 --- pkgs/by-name/re/release-plz/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/re/release-plz/package.nix b/pkgs/by-name/re/release-plz/package.nix index fa52da1b670e..fa6cdaece5d1 100644 --- a/pkgs/by-name/re/release-plz/package.nix +++ b/pkgs/by-name/re/release-plz/package.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "release-plz"; - version = "0.3.150"; + version = "0.3.151"; src = fetchFromGitHub { owner = "MarcoIeni"; repo = "release-plz"; rev = "release-plz-v${version}"; - hash = "sha256-gV1B7c7yC5KBjQ5y44dAgMUuGtL55ICM++kNShNh/nM="; + hash = "sha256-yH+ggH5bJNvdD+iv3gk6PZ/EXHoQhdl7ur9Sj6/GE/Q="; }; - cargoHash = "sha256-o1Gds4UDZRVstPNPaisriUUeX0fabqLrS5TSqXMEB1c="; + cargoHash = "sha256-hi0TghUBEXBMSXq+gjxeGZWzpqzQTBg8WGOdkzP1Q70="; nativeBuildInputs = [ installShellFiles From ebadfdc8f15d9a0121571854fbe98f63d7249f75 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 01:36:52 +0000 Subject: [PATCH 41/67] asusctl: 6.2.0 -> 6.3.1 --- pkgs/by-name/as/asusctl/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/as/asusctl/package.nix b/pkgs/by-name/as/asusctl/package.nix index e0856ee9d559..ee0e4555cbfb 100644 --- a/pkgs/by-name/as/asusctl/package.nix +++ b/pkgs/by-name/as/asusctl/package.nix @@ -18,16 +18,16 @@ }: rustPlatform.buildRustPackage rec { pname = "asusctl"; - version = "6.2.0"; + version = "6.3.1"; src = fetchFromGitLab { owner = "asus-linux"; repo = "asusctl"; tag = version; - hash = "sha256-frQbfCdK7bD6IAUa+MAOaRLhMrbdFRdHocQ0Z1tzsqE="; + hash = "sha256-x3WKxjYrWYaLWDi52b3uQSYnr/Qunf6JYu4ikt4ajls="; }; - cargoHash = "sha256-Z3JFp/qH3mD3Hy/kqSONOZ+syulgr+t0ZzFRvNN+Ayg="; + cargoHash = "sha256-FyVbeHzwMr8UJ2OoVYVekXJFhus/ab7KwfGK4eaua6A="; postPatch = '' files=" From 1ad3c468c340718a9df14e8305959fb19a653296 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 02:00:31 +0000 Subject: [PATCH 42/67] librime: 1.16.0 -> 1.16.1 --- pkgs/by-name/li/librime/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/librime/package.nix b/pkgs/by-name/li/librime/package.nix index ec958a637a46..158d74692d48 100644 --- a/pkgs/by-name/li/librime/package.nix +++ b/pkgs/by-name/li/librime/package.nix @@ -30,13 +30,13 @@ let in stdenv.mkDerivation rec { pname = "librime"; - version = "1.16.0"; + version = "1.16.1"; src = fetchFromGitHub { owner = "rime"; repo = "librime"; rev = version; - sha256 = "sha256-zKc9Xxv+DHOfwpMaXeG34NwdGbXH6XP3ua+LrivQvBU="; + sha256 = "sha256-Jbo6Svt/d00ZJwtYkWMKFeKzpFFYhbnm3m2alDxRGvU="; }; nativeBuildInputs = [ From f9b56690d2291f96f82d41f9418921403831beb2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 02:29:16 +0000 Subject: [PATCH 43/67] monkeysAudio: 11.91 -> 12.02 --- pkgs/by-name/mo/monkeysAudio/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mo/monkeysAudio/package.nix b/pkgs/by-name/mo/monkeysAudio/package.nix index 09edda8fee6b..3fb4ec1c991c 100644 --- a/pkgs/by-name/mo/monkeysAudio/package.nix +++ b/pkgs/by-name/mo/monkeysAudio/package.nix @@ -6,12 +6,12 @@ }: stdenv.mkDerivation (finalAttrs: { - version = "11.91"; + version = "12.02"; pname = "monkeys-audio"; src = fetchzip { url = "https://monkeysaudio.com/files/MAC_${builtins.concatStringsSep "" (lib.strings.splitString "." finalAttrs.version)}_SDK.zip"; - hash = "sha256-fCNq7xmE/JFYTAV0zlZWn3hnOZYperMryP9xwkt6y2U="; + hash = "sha256-4/WKQJr9ZSFM7IiMGwwVAoyPxJegjlLqjyXOOc3KR2k="; stripRoot = false; }; From e795b3610f3fc498638d0aa093fa5eb16d3de4ef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 03:49:56 +0000 Subject: [PATCH 44/67] discord-canary: 0.0.844 -> 0.0.852 --- .../instant-messengers/discord/sources.json | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/discord/sources.json b/pkgs/applications/networking/instant-messengers/discord/sources.json index 0461d1c6117e..f714248b084c 100644 --- a/pkgs/applications/networking/instant-messengers/discord/sources.json +++ b/pkgs/applications/networking/instant-messengers/discord/sources.json @@ -1,8 +1,8 @@ { "linux-canary": { - "hash": "sha256-2o0SBMbtozibAIL7lHDJ2LfNjbDKY578PvcNdFs/AC4=", - "url": "https://canary.dl2.discordapp.net/apps/linux/0.0.844/discord-canary-0.0.844.tar.gz", - "version": "0.0.844" + "hash": "sha256-jomLXlIr+ajJspmh/seNb48alPSuCw8ybYkfc0uAziE=", + "url": "https://canary.dl2.discordapp.net/apps/linux/0.0.852/discord-canary-0.0.852.tar.gz", + "version": "0.0.852" }, "linux-development": { "hash": "sha256-EVkjWoqWl9Z+iHCLPOLu4PIUb2wC3HVcPVjOVz++IVw=", @@ -15,19 +15,19 @@ "version": "0.0.172" }, "linux-stable": { - "hash": "sha256-/NfgHBXsUWYoDEVGz13GBU1ISpSdB5OmrjhSN25SBMg=", - "url": "https://stable.dl2.discordapp.net/apps/linux/0.0.119/discord-0.0.119.tar.gz", - "version": "0.0.119" + "hash": "sha256-4rJ0l0zSoOz7L65sy3Gegcsb/nJGGFu6h5TGAb0fqUI=", + "url": "https://stable.dl2.discordapp.net/apps/linux/0.0.120/discord-0.0.120.tar.gz", + "version": "0.0.120" }, "osx-canary": { - "hash": "sha256-qh5+hCEQXivdugj5jzS+i1ftmyh6l2YEE63oS+qV2Go=", - "url": "https://canary.dl2.discordapp.net/apps/osx/0.0.948/DiscordCanary.dmg", - "version": "0.0.948" + "hash": "sha256-ZzqakVB2Rkcq5zME2WnSCw1CLzpD3VDM/pu4nQ7rRNs=", + "url": "https://canary.dl2.discordapp.net/apps/osx/0.0.956/DiscordCanary.dmg", + "version": "0.0.956" }, "osx-development": { - "hash": "sha256-y840b3WlWnSK+22l7AoasQbDmbB+2LOzbxA13yJxrPA=", - "url": "https://development.dl2.discordapp.net/apps/osx/0.0.106/DiscordDevelopment.dmg", - "version": "0.0.106" + "hash": "sha256-B1//zMlTv2+RWHfWZSaaU8ubVOwWob+EYjNdtFRwlgg=", + "url": "https://development.dl2.discordapp.net/apps/osx/0.0.107/DiscordDevelopment.dmg", + "version": "0.0.107" }, "osx-ptb": { "hash": "sha256-tjWbvWOvSinVZDvJYFFcbmr+y7W5PmIr/alrS82ECBo=", @@ -35,8 +35,8 @@ "version": "0.0.204" }, "osx-stable": { - "hash": "sha256-OjHYJNZlM/cOLM61qvoauzNl3f/GVPdJMsnM+kxc/38=", - "url": "https://stable.dl2.discordapp.net/apps/osx/0.0.371/Discord.dmg", - "version": "0.0.371" + "hash": "sha256-PkZU/1GxPmfxq2qP/5gGU85EFYPI1V42iHfoy9x9fKI=", + "url": "https://stable.dl2.discordapp.net/apps/osx/0.0.372/Discord.dmg", + "version": "0.0.372" } } From 6bb76f59ec0bcd9e4fe8336d57659238db35428a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:33:44 -0800 Subject: [PATCH 45/67] python3Packages.aspell-python: remove superfluous pythonAtLeast --- pkgs/development/python-modules/aspell-python/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aspell-python/default.nix b/pkgs/development/python-modules/aspell-python/default.nix index 7bf0bd859bb6..87784477ccbd 100644 --- a/pkgs/development/python-modules/aspell-python/default.nix +++ b/pkgs/development/python-modules/aspell-python/default.nix @@ -6,7 +6,6 @@ fetchPypi, isPy27, pytestCheckHook, - pythonAtLeast, setuptools, }: @@ -37,7 +36,7 @@ buildPythonPackage rec { enabledTestPaths = [ "test/unittests.py" ]; - disabledTests = lib.optionals (pythonAtLeast "3.10") [ + disabledTests = [ # https://github.com/WojciechMula/aspell-python/issues/22 "test_add" "test_get" From 914c1131da2d8dd7df53f880f4ae1b511524835d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:34:39 -0800 Subject: [PATCH 46/67] python3Packages.xkcdpass: remove superfluous pythonAtLeast --- pkgs/development/python-modules/xkcdpass/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/xkcdpass/default.nix b/pkgs/development/python-modules/xkcdpass/default.nix index 540cc0ebad58..95b2442a3f3c 100644 --- a/pkgs/development/python-modules/xkcdpass/default.nix +++ b/pkgs/development/python-modules/xkcdpass/default.nix @@ -4,7 +4,6 @@ fetchPypi, installShellFiles, pytestCheckHook, - pythonAtLeast, setuptools, }: @@ -26,7 +25,7 @@ buildPythonPackage rec { pythonImportsCheck = [ "xkcdpass" ]; - disabledTests = lib.optionals (pythonAtLeast "3.10") [ + disabledTests = [ # https://github.com/redacted/XKCD-password-generator/issues/138 "test_entropy_printout_valid_input" ]; From 3677e88db0ed9803a9dfd6b3ad36398367948316 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:35:19 -0800 Subject: [PATCH 47/67] python3Packages.marshmallow-dataclass: remove superfluous pythonAtLeast --- .../python-modules/marshmallow-dataclass/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/marshmallow-dataclass/default.nix b/pkgs/development/python-modules/marshmallow-dataclass/default.nix index 8a725de16474..1638fb33e17a 100644 --- a/pkgs/development/python-modules/marshmallow-dataclass/default.nix +++ b/pkgs/development/python-modules/marshmallow-dataclass/default.nix @@ -4,7 +4,6 @@ fetchFromGitHub, marshmallow, pytestCheckHook, - pythonAtLeast, setuptools, typeguard, typing-inspect, @@ -39,7 +38,7 @@ buildPythonPackage rec { "-Wignore::DeprecationWarning" ]; - disabledTests = lib.optionals (pythonAtLeast "3.10") [ + disabledTests = [ # TypeError: UserId is not a dataclass and cannot be turned into one. "test_newtype" ]; From e35b33037bead91909fe7ea253e152614a3d4df7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:36:06 -0800 Subject: [PATCH 48/67] python3Packages.sgmllib3k: remove superfluous pythonAtLeast --- pkgs/development/python-modules/sgmllib3k/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/sgmllib3k/default.nix b/pkgs/development/python-modules/sgmllib3k/default.nix index 9fa707ea0efc..3d488ca98eb0 100644 --- a/pkgs/development/python-modules/sgmllib3k/default.nix +++ b/pkgs/development/python-modules/sgmllib3k/default.nix @@ -4,7 +4,6 @@ fetchPypi, isPy27, pytestCheckHook, - pythonAtLeast, }: buildPythonPackage rec { @@ -21,7 +20,7 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; - disabledTests = lib.optionals (pythonAtLeast "3.10") [ "test_declaration_junk_chars" ]; + disabledTests = [ "test_declaration_junk_chars" ]; doCheck = false; From 7310a22de59f823c0722755850d4bc3336ebc651 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:37:26 -0800 Subject: [PATCH 49/67] python3Packages.csvw: remove superfluous pythonAtLeast --- pkgs/development/python-modules/csvw/default.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/development/python-modules/csvw/default.nix b/pkgs/development/python-modules/csvw/default.nix index c5ce235b251e..8bccfd9f3d85 100644 --- a/pkgs/development/python-modules/csvw/default.nix +++ b/pkgs/development/python-modules/csvw/default.nix @@ -2,7 +2,6 @@ lib, buildPythonPackage, fetchFromGitHub, - pythonAtLeast, attrs, isodate, python-dateutil, @@ -43,8 +42,6 @@ buildPythonPackage rec { # this test is flaky on darwin because it depends on the resolution of filesystem mtimes # https://github.com/cldf/csvw/blob/45584ad63ff3002a9b3a8073607c1847c5cbac58/tests/test_db.py#L257 "test_write_file_exists" - ] - ++ lib.optionals (pythonAtLeast "3.10") [ # https://github.com/cldf/csvw/issues/58 "test_roundtrip_escapechar" "test_escapequote_escapecharquotechar_final" From 855d20d185fe67864e1a97895bbc44358abf780f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:38:04 -0800 Subject: [PATCH 50/67] python3Packages.persim: remove superfluous pythonAtLeast --- pkgs/development/python-modules/persim/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/persim/default.nix b/pkgs/development/python-modules/persim/default.nix index ec3669359be4..9c8dbff7ac49 100644 --- a/pkgs/development/python-modules/persim/default.nix +++ b/pkgs/development/python-modules/persim/default.nix @@ -10,7 +10,6 @@ scikit-learn, scipy, pytestCheckHook, - pythonAtLeast, }: buildPythonPackage rec { @@ -44,7 +43,7 @@ buildPythonPackage rec { pythonImportsCheck = [ "persim" ]; - disabledTests = lib.optionals (pythonAtLeast "3.10") [ + disabledTests = [ # AttributeError: module 'collections' has no attribute 'Iterable' "test_empyt_diagram_list" "test_empty_diagram_list" From 5c827c6dbbf6cb1ee765357579f86f9ee3deec11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:39:43 -0800 Subject: [PATCH 51/67] python3Packages.flake8-future-import: remove outdated patches --- .../flake8-future-import/default.nix | 16 +++------------- .../fix-annotations-version-10.patch | 13 ------------- .../flake8-future-import/skip-test.patch | 13 ------------- 3 files changed, 3 insertions(+), 39 deletions(-) delete mode 100644 pkgs/development/python-modules/flake8-future-import/fix-annotations-version-10.patch delete mode 100644 pkgs/development/python-modules/flake8-future-import/skip-test.patch diff --git a/pkgs/development/python-modules/flake8-future-import/default.nix b/pkgs/development/python-modules/flake8-future-import/default.nix index 2fd7b83b7ccb..c41bb467c632 100644 --- a/pkgs/development/python-modules/flake8-future-import/default.nix +++ b/pkgs/development/python-modules/flake8-future-import/default.nix @@ -2,10 +2,6 @@ lib, buildPythonPackage, fetchFromGitHub, - isPy27, - isPy38, - isPy39, - pythonAtLeast, setuptools, flake8, six, @@ -25,15 +21,9 @@ buildPythonPackage rec { hash = "sha256-2EcCOx3+PCk9LYpQjHCFNpQVI2Pdi+lWL8R6bNadFe0="; }; - patches = - lib.optionals (pythonAtLeast "3.10") [ ./fix-annotations-version-11.patch ] - ++ lib.optionals (isPy38 || isPy39) [ ./fix-annotations-version-10.patch ] - ++ lib.optionals isPy27 [ - # Upstream disables this test case naturally on python 3, but it also fails - # inside NixPkgs for python 2. Since it's going to be deleted, we just skip it - # on py2 as well. - ./skip-test.patch - ]; + patches = [ + ./fix-annotations-version-11.patch + ]; postPatch = '' substituteInPlace "test_flake8_future_import.py" \ diff --git a/pkgs/development/python-modules/flake8-future-import/fix-annotations-version-10.patch b/pkgs/development/python-modules/flake8-future-import/fix-annotations-version-10.patch deleted file mode 100644 index 2e3062c8ac43..000000000000 --- a/pkgs/development/python-modules/flake8-future-import/fix-annotations-version-10.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/flake8_future_import.py b/flake8_future_import.py -index 92c3fda..27a1a66 100755 ---- a/flake8_future_import.py -+++ b/flake8_future_import.py -@@ -76,7 +76,7 @@ UNICODE_LITERALS = Feature(4, 'unicode_literals', (2, 6, 0), (3, 0, 0)) - GENERATOR_STOP = Feature(5, 'generator_stop', (3, 5, 0), (3, 7, 0)) - NESTED_SCOPES = Feature(6, 'nested_scopes', (2, 1, 0), (2, 2, 0)) - GENERATORS = Feature(7, 'generators', (2, 2, 0), (2, 3, 0)) --ANNOTATIONS = Feature(8, 'annotations', (3, 7, 0), (4, 0, 0)) -+ANNOTATIONS = Feature(8, 'annotations', (3, 7, 0), (3, 10, 0)) - - - # Order important as it defines the error code diff --git a/pkgs/development/python-modules/flake8-future-import/skip-test.patch b/pkgs/development/python-modules/flake8-future-import/skip-test.patch deleted file mode 100644 index 300358f9158b..000000000000 --- a/pkgs/development/python-modules/flake8-future-import/skip-test.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/test_flake8_future_import.py b/test_flake8_future_import.py -index 84fde59..345f23f 100644 ---- a/test_flake8_future_import.py -+++ b/test_flake8_future_import.py -@@ -230,7 +230,7 @@ class TestBadSyntax(TestCaseBase): - """Test using various bad syntax examples from Python's library.""" - - --@unittest.skipIf(sys.version_info[:2] >= (3, 7), 'flake8 supports up to 3.6') -+@unittest.skip("Has issue with installed path for flake8 in python2") - class Flake8TestCase(TestCaseBase): - - """ From 776f2d99e6a39564877d90ce408d90200a245b46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:46:49 -0800 Subject: [PATCH 52/67] python3Packages.scikit-hep-testdata: remove superfluous pythonAtLeast --- .../python-modules/scikit-hep-testdata/default.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/scikit-hep-testdata/default.nix b/pkgs/development/python-modules/scikit-hep-testdata/default.nix index f3ec89b963ca..af270a36233d 100644 --- a/pkgs/development/python-modules/scikit-hep-testdata/default.nix +++ b/pkgs/development/python-modules/scikit-hep-testdata/default.nix @@ -9,8 +9,6 @@ # dependencies pyyaml, requests, - pythonAtLeast, - importlib-resources, }: buildPythonPackage rec { @@ -30,8 +28,7 @@ buildPythonPackage rec { dependencies = [ pyyaml requests - ] - ++ lib.optionals (!pythonAtLeast "3.9") [ importlib-resources ]; + ]; SKHEP_DATA = 1; # install the actual root files From dcd131e13a9e70c223b05cc185c458d397d01d4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:47:35 -0800 Subject: [PATCH 53/67] python3Packages.urlpy: remove superfluous pythonAtLeast --- pkgs/development/python-modules/urlpy/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/urlpy/default.nix b/pkgs/development/python-modules/urlpy/default.nix index 7e1fc83509aa..db8bd94e8879 100644 --- a/pkgs/development/python-modules/urlpy/default.nix +++ b/pkgs/development/python-modules/urlpy/default.nix @@ -4,7 +4,6 @@ buildPythonPackage, publicsuffix2, pytestCheckHook, - pythonAtLeast, }: buildPythonPackage rec { pname = "urlpy"; @@ -24,7 +23,7 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; - disabledTests = lib.optionals (pythonAtLeast "3.9") [ + disabledTests = [ # Fails with "AssertionError: assert 'unknown' == ''" "test_unknown_protocol" ]; From 649d514ac26d0e2d64cc9701d50fa6ba83d09e1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:48:13 -0800 Subject: [PATCH 54/67] python3Packages.httplib2: remove superfluous pythonAtLeast --- pkgs/development/python-modules/httplib2/default.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/development/python-modules/httplib2/default.nix b/pkgs/development/python-modules/httplib2/default.nix index ef7141fbc59d..780fff3ba1a9 100644 --- a/pkgs/development/python-modules/httplib2/default.nix +++ b/pkgs/development/python-modules/httplib2/default.nix @@ -11,7 +11,6 @@ pytest-randomly, pytest-timeout, pytestCheckHook, - pythonAtLeast, six, }: @@ -42,9 +41,6 @@ buildPythonPackage rec { __darwinAllowLocalNetworking = true; - # Don't run tests for older Pythons - doCheck = pythonAtLeast "3.9"; - disabledTests = [ # ValueError: Unable to load PEM file. # https://github.com/httplib2/httplib2/issues/192#issuecomment-993165140 From bb3cb9b61967a305fb68593509928634e770f064 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:49:17 -0800 Subject: [PATCH 55/67] python3Packages.crashtest: remove superfluous pythonAtLeast --- pkgs/development/python-modules/crashtest/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/development/python-modules/crashtest/default.nix b/pkgs/development/python-modules/crashtest/default.nix index 2ecd4adb0975..a2552279172e 100644 --- a/pkgs/development/python-modules/crashtest/default.nix +++ b/pkgs/development/python-modules/crashtest/default.nix @@ -2,14 +2,12 @@ lib, buildPythonPackage, fetchPypi, - pythonAtLeast, }: buildPythonPackage rec { pname = "crashtest"; version = "0.4.1"; format = "setuptools"; - disabled = !(pythonAtLeast "3.6"); src = fetchPypi { inherit pname version; From a377f9593da6c706e8abb23dc1724084bfd66cae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:49:59 -0800 Subject: [PATCH 56/67] python3Packages.edward: remove superfluous pythonAtLeast --- pkgs/development/python-modules/edward/default.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/development/python-modules/edward/default.nix b/pkgs/development/python-modules/edward/default.nix index 5ca81b8cca4b..2041bc1ce1da 100644 --- a/pkgs/development/python-modules/edward/default.nix +++ b/pkgs/development/python-modules/edward/default.nix @@ -2,8 +2,6 @@ lib, buildPythonPackage, fetchPypi, - isPy27, - pythonAtLeast, keras, numpy, scipy, @@ -16,8 +14,6 @@ buildPythonPackage rec { version = "1.3.5"; format = "setuptools"; - disabled = !(isPy27 || pythonAtLeast "3.4"); - src = fetchPypi { inherit pname version; sha256 = "3818b39e77c26fc1a37767a74fdd5e7d02877d75ed901ead2f40bd03baaa109f"; From dfd04aefaa326d79d6fcdf9df0c9fb736f63a599 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 19 Jan 2026 22:51:25 -0800 Subject: [PATCH 57/67] python3Packages.pypass: remove superfluous pythonAtLeast --- pkgs/development/python-modules/pypass/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/pypass/default.nix b/pkgs/development/python-modules/pypass/default.nix index ad8e17fc8bee..4e952df17c52 100644 --- a/pkgs/development/python-modules/pypass/default.nix +++ b/pkgs/development/python-modules/pypass/default.nix @@ -10,7 +10,6 @@ gnupg, pbr, pexpect, - pythonAtLeast, pytestCheckHook, setuptools, replaceVars, @@ -41,8 +40,7 @@ buildPythonPackage rec { }) ]; - # Remove enum34 requirement if Python >= 3.4 - pythonRemoveDeps = lib.optionals (pythonAtLeast "3.4") [ + pythonRemoveDeps = [ "enum34" ]; From a1dcc30922c9db1cae59ec7d3914286f8f02f362 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 20 Jan 2026 07:20:12 +0000 Subject: [PATCH 58/67] home-assistant-custom-lovelace-modules.universal-remote-card: 4.9.4 -> 4.9.5 --- .../universal-remote-card/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix index 1f6af90374c5..de22d3c86057 100644 --- a/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix @@ -6,16 +6,16 @@ buildNpmPackage rec { pname = "universal-remote-card"; - version = "4.9.4"; + version = "4.9.5"; src = fetchFromGitHub { owner = "Nerwyn"; repo = "android-tv-card"; rev = version; - hash = "sha256-gPzFF6MeA9JDCUp6Vz0HokKcxyV3Qw71dW3CBexsv1U="; + hash = "sha256-0odR9ZCXS8vovQTX81U2PL1i45ftijJ/WRWk00DBWXc="; }; - npmDepsHash = "sha256-TcaA73aG9CNxu4KUfYsbs9vOwKgz70lEoI8KSCro61M="; + npmDepsHash = "sha256-Z9u7fNd9XB41HiD0MuMy9xjq3mROSYp1sTRyJ0Rf9xw="; installPhase = '' runHook preInstall From 5e9048847dd6c95ae747bbdc2951074262239592 Mon Sep 17 00:00:00 2001 From: chordtoll Date: Fri, 16 Jan 2026 14:34:37 -0800 Subject: [PATCH 59/67] ocamlPackages.stdcompat: 19 -> 21.1 --- pkgs/development/ocaml-modules/stdcompat/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/ocaml-modules/stdcompat/default.nix b/pkgs/development/ocaml-modules/stdcompat/default.nix index d75b4839a8b0..25abe8fa9679 100644 --- a/pkgs/development/ocaml-modules/stdcompat/default.nix +++ b/pkgs/development/ocaml-modules/stdcompat/default.nix @@ -7,22 +7,22 @@ buildDunePackage rec { pname = "stdcompat"; - version = "19"; + version = "21.1"; - minimalOCamlVersion = "4.06"; + minimalOCamlVersion = "4.11"; src = fetchurl { - url = "https://github.com/thierry-martinez/stdcompat/releases/download/v${version}/stdcompat-${version}.tar.gz"; - sha256 = "sha256-DKQGd4nnIN6SPls6hcA/2Jvc7ivYNpeMU6rYsVc1ClU="; + url = "https://github.com/ocamllibs/stdcompat/archive/refs/tags/${version}.tar.gz"; + sha256 = "sha256-RSJ9AgUEmt23QZCk60ETIXmkJhG7knQe+s8wNxxIHm4="; }; # Otherwise ./configure script will run and create files conflicting with dune. dontConfigure = true; meta = { - homepage = "https://github.com/thierry-martinez/stdcompat"; + homepage = "https://github.com/ocamllibs/stdcompat"; license = lib.licenses.bsd2; maintainers = [ lib.maintainers.vbgl ]; - broken = lib.versionAtLeast ocaml.version "5.2"; + broken = lib.versionAtLeast ocaml.version "5.4"; }; } From a3dc5bec8217e0e4b6463c0479840618591b58ec Mon Sep 17 00:00:00 2001 From: chordtoll Date: Fri, 16 Jan 2026 14:48:36 -0800 Subject: [PATCH 60/67] ocamlPackages.pyml: patch to remove unused header --- pkgs/development/ocaml-modules/pyml/default.nix | 4 ++++ .../ocaml-modules/pyml/remove-stdcompat.patch | 11 +++++++++++ 2 files changed, 15 insertions(+) create mode 100644 pkgs/development/ocaml-modules/pyml/remove-stdcompat.patch diff --git a/pkgs/development/ocaml-modules/pyml/default.nix b/pkgs/development/ocaml-modules/pyml/default.nix index 8f5553ffa59e..9c74b4f9b47a 100644 --- a/pkgs/development/ocaml-modules/pyml/default.nix +++ b/pkgs/development/ocaml-modules/pyml/default.nix @@ -18,6 +18,10 @@ buildDunePackage rec { hash = "sha256-WPtmj9EEs7P72OXWJg1syIrbLuh7u4V4W4nyozXmSa0="; }; + patches = [ + ./remove-stdcompat.patch + ]; + buildInputs = [ utop ]; diff --git a/pkgs/development/ocaml-modules/pyml/remove-stdcompat.patch b/pkgs/development/ocaml-modules/pyml/remove-stdcompat.patch new file mode 100644 index 000000000000..5d8bdb739f59 --- /dev/null +++ b/pkgs/development/ocaml-modules/pyml/remove-stdcompat.patch @@ -0,0 +1,11 @@ +diff --git a/pyml_stubs.c b/pyml_stubs.c +index 40e3481..e7826f1 100644 +--- a/pyml_stubs.c ++++ b/pyml_stubs.c +@@ -11,7 +11,6 @@ + #include + #include + #include +-#include + #include + #include "pyml_stubs.h" From 85755ffd9af093d5a9d8aa48a26ba612089473f8 Mon Sep 17 00:00:00 2001 From: liberodark Date: Tue, 20 Jan 2026 10:53:09 +0100 Subject: [PATCH 61/67] oxidized-web: 0.18.0 -> 0.18.1 --- pkgs/by-name/ox/oxidized/Gemfile | 2 +- pkgs/by-name/ox/oxidized/Gemfile.lock | 18 +++++++++--------- pkgs/by-name/ox/oxidized/gemset.nix | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/ox/oxidized/Gemfile b/pkgs/by-name/ox/oxidized/Gemfile index a7d824ee67ae..e92ee6f43713 100644 --- a/pkgs/by-name/ox/oxidized/Gemfile +++ b/pkgs/by-name/ox/oxidized/Gemfile @@ -1,6 +1,6 @@ source 'https://rubygems.org' gem 'oxidized', '0.35.0' -gem 'oxidized-web', '0.18.0' +gem 'oxidized-web', '0.18.1' gem 'oxidized-script', '0.7.0' gem 'psych', '~> 5.0' diff --git a/pkgs/by-name/ox/oxidized/Gemfile.lock b/pkgs/by-name/ox/oxidized/Gemfile.lock index 9dd1cba4846d..ccef0248a676 100644 --- a/pkgs/by-name/ox/oxidized/Gemfile.lock +++ b/pkgs/by-name/ox/oxidized/Gemfile.lock @@ -49,16 +49,16 @@ GEM oxidized-script (0.7.0) oxidized (~> 0.29) slop (~> 4.6) - oxidized-web (0.18.0) - charlock_holmes (>= 0.7.5, < 0.8.0) + oxidized-web (0.18.1) + charlock_holmes (~> 0.7) emk-sinatra-url-for (~> 0.2) - haml (>= 6.0.0, < 7.0.0) - htmlentities (>= 4.3.0, < 4.5.0) - json (>= 2.3.0, < 2.17.0) + haml (>= 6, < 7) + htmlentities (~> 4.3) + json (~> 2.3) oxidized (>= 0.34.1) - puma (>= 6.6, < 7.2) - sinatra (>= 4.1.1, < 4.3.0) - sinatra-contrib (>= 4.1.1, < 4.3.0) + puma (>= 6.6, < 8) + sinatra (~> 4.1) + sinatra-contrib (~> 4.1) psych (5.2.6) date stringio @@ -107,7 +107,7 @@ PLATFORMS DEPENDENCIES oxidized (= 0.35.0) oxidized-script (= 0.7.0) - oxidized-web (= 0.18.0) + oxidized-web (= 0.18.1) psych (~> 5.0) BUNDLED WITH diff --git a/pkgs/by-name/ox/oxidized/gemset.nix b/pkgs/by-name/ox/oxidized/gemset.nix index 2f22f3817c98..1b9f4bef6397 100644 --- a/pkgs/by-name/ox/oxidized/gemset.nix +++ b/pkgs/by-name/ox/oxidized/gemset.nix @@ -278,10 +278,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "19sz075liiqim98jvnb3jawxdpd8kk146bwvqzwvmimbgdzf8xfr"; + sha256 = "1yx8q8v5ri2j7h7slpkk4plnrgc098l9avxnaavibj14fri3z26n"; type = "gem"; }; - version = "0.18.0"; + version = "0.18.1"; }; psych = { dependencies = [ From a8970485ea115a858a18997ba6bf8e998289550f Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 20 Jan 2026 10:53:57 +0100 Subject: [PATCH 62/67] python313Packages.iamdata: 0.1.202601191 -> 0.1.202601201 Diff: https://github.com/cloud-copilot/iam-data-python/compare/v0.1.202601191...v0.1.202601201 Changelog: https://github.com/cloud-copilot/iam-data-python/releases/tag/v0.1.202601201 --- pkgs/development/python-modules/iamdata/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/iamdata/default.nix b/pkgs/development/python-modules/iamdata/default.nix index 6eacd4a5f831..caf0060df90d 100644 --- a/pkgs/development/python-modules/iamdata/default.nix +++ b/pkgs/development/python-modules/iamdata/default.nix @@ -8,14 +8,14 @@ buildPythonPackage (finalAttrs: { pname = "iamdata"; - version = "0.1.202601191"; + version = "0.1.202601201"; pyproject = true; src = fetchFromGitHub { owner = "cloud-copilot"; repo = "iam-data-python"; tag = "v${finalAttrs.version}"; - hash = "sha256-fdHOXm+FJcHHSb01z6e01zHQmt0ZRl2/gs9wrtTR468="; + hash = "sha256-s+1J/NPlGxdthGL2lHPQ9bpvrgujiYvBKGhOFbKGflw="; }; __darwinAllowLocalNetworking = true; From 2eb0f9de3e11ca93a654395ef94d44ab94d71231 Mon Sep 17 00:00:00 2001 From: Augustin Trancart Date: Tue, 20 Jan 2026 10:58:55 +0100 Subject: [PATCH 63/67] framework-tool-tui: 0.7.3 -> 0.7.6 --- pkgs/by-name/fr/framework-tool-tui/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/fr/framework-tool-tui/package.nix b/pkgs/by-name/fr/framework-tool-tui/package.nix index da232f379af8..903424c9ea7e 100644 --- a/pkgs/by-name/fr/framework-tool-tui/package.nix +++ b/pkgs/by-name/fr/framework-tool-tui/package.nix @@ -7,16 +7,16 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "framework-tool-tui"; - version = "0.7.3"; + version = "0.7.6"; src = fetchFromGitHub { owner = "grouzen"; repo = "framework-tool-tui"; tag = "v${finalAttrs.version}"; - hash = "sha256-+m92Q5rfINS/TDAXpHDpwJPyV8kGrdS4y72DWw9NLe0="; + hash = "sha256-reIsJK2bGuMf83SmjCVu9PdUrd4zilCxpvbZllnU6vo="; }; - cargoHash = "sha256-feA+Jn3ldq6pJe/xFqBAaemNcT0Kjfl61IWIXKHHp9o="; + cargoHash = "sha256-E2lVpu+sI/Bf1YwqCbwg3pr15kfo4DUddwI+5/Dwh40="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ udev ]; From 1adb29f2cde037eedc42eace69ed298cce4b8846 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Tue, 20 Jan 2026 10:07:37 +0000 Subject: [PATCH 64/67] python3Packages.pocket-tts: 1.0.1 -> 1.0.2 Diff: https://github.com/kyutai-labs/pocket-tts/compare/v1.0.1...v1.0.2 Changelog: https://github.com/kyutai-labs/pocket-tts/releases/tag/v1.0.2 --- .../python-modules/pocket-tts/default.nix | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pocket-tts/default.nix b/pkgs/development/python-modules/pocket-tts/default.nix index 2ef871f5428c..d8edaaba7539 100644 --- a/pkgs/development/python-modules/pocket-tts/default.nix +++ b/pkgs/development/python-modules/pocket-tts/default.nix @@ -22,18 +22,21 @@ typer, typing-extensions, uvicorn, + + # optional-dependencies + soundfile, }: buildPythonPackage (finalAttrs: { pname = "pocket-tts"; - version = "1.0.1"; + version = "1.0.2"; pyproject = true; src = fetchFromGitHub { owner = "kyutai-labs"; repo = "pocket-tts"; tag = "v${finalAttrs.version}"; - hash = "sha256-VFLpUsHnQYSr5RgNKJOX1TD30o1A8rG4cs2VeZWriaU="; + hash = "sha256-m//UCZEENE5bl9TV0rDCA3Th1TykvC5oZLay+f7lEr8="; }; build-system = [ @@ -62,6 +65,12 @@ buildPythonPackage (finalAttrs: { uvicorn ]; + optional-dependencies = { + audio = [ + soundfile + ]; + }; + pythonImportsCheck = [ "pocket_tts" ]; # All tests are failing as the model cannot be downloaded from the sandbox From 867605fbf06262b885163f5cc74ca83c199d607d Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Tue, 20 Jan 2026 06:05:45 +0000 Subject: [PATCH 65/67] =?UTF-8?q?babl:=200.1.116=20=E2=86=92=200.1.120?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/babl/-/compare/BABL_0_1_116...28d1099aaa1a518ee1b82aef4816da1670037f84 Introduces `relocatable` feature defaulting to `auto` (interpreted as `enabled` on Win32 or MacOS, `disabled` elsewhere) but since our Meson setup hooks passes `-Dauto_features=enabled`, we would be enabling it everywhere. Let’s explicitly disable it for Linux like expected, and for other platforms since I cannot test it there. --- pkgs/by-name/ba/babl/package.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ba/babl/package.nix b/pkgs/by-name/ba/babl/package.nix index fe499cb872b5..3454630b2dd1 100644 --- a/pkgs/by-name/ba/babl/package.nix +++ b/pkgs/by-name/ba/babl/package.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "babl"; - version = "0.1.116"; + version = "0.1.120"; outputs = [ "out" @@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "https://download.gimp.org/pub/babl/${lib.versions.majorMinor finalAttrs.version}/babl-${finalAttrs.version}.tar.xz"; - hash = "sha256-UPrgaYZ8et4SWYiP8ePbhf7IbXCCUuU4W1pPOaeOxIM="; + hash = "sha256-9HatFSAftO0MkMF0xSSx5CcczWmjdyQtamn834fOrMI="; }; patches = [ @@ -46,6 +46,9 @@ stdenv.mkDerivation (finalAttrs: { mesonFlags = [ "-Dprefix-dev=${placeholder "dev"}" + # On Linux, this would be disabled by default but we have -Dauto_features=enabled. + # Disable it on other platforms too, since I cannot test it there. + "-Drelocatable=disabled" ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ # Docs are opt-out in native but opt-in in cross builds. From 3dd13a7e2956569b996603a20c6a8688474e3fa5 Mon Sep 17 00:00:00 2001 From: HigherOrderLogic <73709188+HigherOrderLogic@users.noreply.github.com> Date: Sat, 25 Oct 2025 12:54:40 +0000 Subject: [PATCH 66/67] steel: add `STEEL_HOME` env var to more binaries --- pkgs/by-name/st/steel/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/st/steel/package.nix b/pkgs/by-name/st/steel/package.nix index 9106284cd1f6..2f6c7ffad30b 100644 --- a/pkgs/by-name/st/steel/package.nix +++ b/pkgs/by-name/st/steel/package.nix @@ -91,6 +91,9 @@ rustPlatform.buildRustPackage { postFixup = '' wrapProgram $out/bin/steel --set-default STEEL_HOME "$out/lib/steel" + wrapProgram $out/bin/steel-language-server --set-default STEEL_HOME "$out/lib/steel" + wrapProgram $out/bin/forge --set-default STEEL_HOME "$out/lib/steel" + wrapProgram $out/bin/cargo-steel-lib --set-default STEEL_HOME "$out/lib/steel" ''; env = { From c63c673e99884ca71bfb5532087bf092fc641463 Mon Sep 17 00:00:00 2001 From: HigherOrderLogic <73709188+HigherOrderLogic@users.noreply.github.com> Date: Tue, 20 Jan 2026 08:35:29 -0300 Subject: [PATCH 67/67] steel-language-server: init at 0-unstable-2026-01-15 --- .../st/steel-language-server/package.nix | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 pkgs/by-name/st/steel-language-server/package.nix diff --git a/pkgs/by-name/st/steel-language-server/package.nix b/pkgs/by-name/st/steel-language-server/package.nix new file mode 100644 index 000000000000..a00a1467e78e --- /dev/null +++ b/pkgs/by-name/st/steel-language-server/package.nix @@ -0,0 +1,38 @@ +{ + lib, + rustPlatform, + makeBinaryWrapper, + steel, +}: +rustPlatform.buildRustPackage { + pname = "steel-language-server"; + + inherit (steel) + version + src + cargoHash + postPatch + ; + + nativeBuildInputs = [ + makeBinaryWrapper + rustPlatform.bindgenHook + ]; + + cargoBuildFlags = [ + "--package" + "steel-language-server" + ]; + + doCheck = false; + + postFixup = '' + wrapProgram $out/bin/steel-language-server --set-default STEEL_HOME "${steel}/lib/steel" + ''; + + meta = steel.meta // { + description = "Steel language server"; + maintainers = steel.meta.maintainers ++ [ lib.maintainers.higherorderlogic ]; + mainProgram = "steel-language-server"; + }; +}