From 490ac31492562e040b5bff3295f6764e9d4abe76 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 18 Mar 2025 02:45:54 +0000 Subject: [PATCH 01/46] python312Packages.groq: 0.18.0 -> 0.19.0 --- pkgs/development/python-modules/groq/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/groq/default.nix b/pkgs/development/python-modules/groq/default.nix index 088b17955c37..815a010cdd8f 100644 --- a/pkgs/development/python-modules/groq/default.nix +++ b/pkgs/development/python-modules/groq/default.nix @@ -19,14 +19,14 @@ buildPythonPackage rec { pname = "groq"; - version = "0.18.0"; + version = "0.19.0"; pyproject = true; src = fetchFromGitHub { owner = "groq"; repo = "groq-python"; tag = "v${version}"; - hash = "sha256-BEXS+RccECCYJJm9uygqFSDxC0MNcC8swyfA7gPM6AY="; + hash = "sha256-+1us/LPQEMeswxxHvydfTCod+RimUD2lKtlAZ3pDZOA="; }; build-system = [ @@ -64,7 +64,7 @@ buildPythonPackage rec { meta = { description = "Library for the Groq API"; homepage = "https://github.com/groq/groq-python"; - changelog = "https://github.com/groq/groq-python/blob/${src.rev}/CHANGELOG.md"; + changelog = "https://github.com/groq/groq-python/blob/${src.tag}/CHANGELOG.md"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ fab ]; }; From 5bcb173eb1f8fd26851bd8be7cf8aec9ce9c7dd0 Mon Sep 17 00:00:00 2001 From: Franz Pletz Date: Tue, 18 Mar 2025 23:11:38 +0100 Subject: [PATCH 02/46] rspamd: 3.11.0 -> 3.11.1 --- pkgs/by-name/rs/rspamd/package.nix | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/rs/rspamd/package.nix b/pkgs/by-name/rs/rspamd/package.nix index ae32c7eb1a18..84704aa15f79 100644 --- a/pkgs/by-name/rs/rspamd/package.nix +++ b/pkgs/by-name/rs/rspamd/package.nix @@ -2,7 +2,6 @@ stdenv, lib, fetchFromGitHub, - fetchpatch, cmake, doctest, fmt_11, @@ -31,23 +30,15 @@ stdenv.mkDerivation rec { pname = "rspamd"; - version = "3.11.0"; + version = "3.11.1"; src = fetchFromGitHub { owner = "rspamd"; repo = "rspamd"; rev = version; - hash = "sha256-id5nmxdqx+0m0JCCvwaEuUAQkMLTlWadfieJ0wO/wJI="; + hash = "sha256-vG52R8jYJlCgQqhA8zbZLMES1UxfxknAVOt87nhcflM="; }; - patches = [ - # remove https://www.nixspam.net/ because it has been shutdown - (fetchpatch { - url = "https://github.com/rspamd/rspamd/commit/dc6e7494c2440cd6c4e474b5ee3c4fabdad1f6bf.patch"; - hash = "sha256-7zY+l5ADLWgPTTBNG/GxX23uX2OwQ33hyzSuokTLgqc="; - }) - ]; - hardeningEnable = [ "pie" ]; nativeBuildInputs = [ From 00996c9f33e3f7400ee51887e0f0b8dfadf3fa9c Mon Sep 17 00:00:00 2001 From: Franz Pletz Date: Tue, 18 Mar 2025 23:11:52 +0100 Subject: [PATCH 03/46] nixos/rspamd: fix tests, postfix now always throws warnings --- nixos/tests/rspamd.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/tests/rspamd.nix b/nixos/tests/rspamd.nix index 603b59a52e4b..7dcfe959931e 100644 --- a/nixos/tests/rspamd.nix +++ b/nixos/tests/rspamd.nix @@ -320,7 +320,6 @@ in machine.wait_until_fails('[ "$(postqueue -p)" != "Mail queue is empty" ]') machine.fail("journalctl -u postfix | grep -i error >&2") - machine.fail("journalctl -u postfix | grep -i warning >&2") ''; }; } From d3110c95325138076714de5f5d68cca388a002c4 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Tue, 25 Mar 2025 12:37:09 +0000 Subject: [PATCH 04/46] nextcloud: update maintainer information * Create a dedicated team. Before, information was inconsistent between e.g. tests and package, module had none at all. * Add maintainership from us to all trivially packaged apps. This is only to make sure that we take care of them building and installing and that's about it. --- maintainers/team-list.nix | 12 ++++++++++++ nixos/modules/services/web-apps/nextcloud.nix | 1 + nixos/tests/nextcloud/basic.nix | 8 ++------ .../nextcloud/with-declarative-redis-and-secrets.nix | 7 +------ nixos/tests/nextcloud/with-mysql-and-memcached.nix | 5 ++--- nixos/tests/nextcloud/with-objectstore.nix | 7 +------ nixos/tests/nextcloud/with-postgresql-and-redis.nix | 7 +------ pkgs/build-support/fetchnextcloudapp/default.nix | 3 ++- pkgs/servers/nextcloud/default.nix | 8 +------- pkgs/servers/nextcloud/packages/default.nix | 1 + 10 files changed, 24 insertions(+), 35 deletions(-) diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index 199e2ff4f751..b3d41f9b34aa 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -858,6 +858,18 @@ with lib.maintainers; shortName = "Vim/Neovim"; }; + nextcloud = { + members = [ + bachp + britter + dotlambda + ma27 + ]; + scope = "Maintain Nextcloud, its tests and the integration of applications."; + shortName = "Nextcloud"; + enableFeatureFreezePing = true; + }; + ngi = { members = [ eljamm diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix index ed436dad32e0..be8e741d2122 100644 --- a/nixos/modules/services/web-apps/nextcloud.nix +++ b/nixos/modules/services/web-apps/nextcloud.nix @@ -1356,4 +1356,5 @@ in { ]); meta.doc = ./nextcloud.md; + meta.maintainers = teams.nextcloud; } diff --git a/nixos/tests/nextcloud/basic.nix b/nixos/tests/nextcloud/basic.nix index 9faf20a2f5ad..bd1c53ab3997 100644 --- a/nixos/tests/nextcloud/basic.nix +++ b/nixos/tests/nextcloud/basic.nix @@ -11,12 +11,8 @@ runTest ( { config, lib, ... }: { inherit name; - meta = with lib.maintainers; { - maintainers = [ - globin - eqyiel - ma27 - ]; + meta = { + maintainers = lib.teams.nextcloud.members; }; imports = [ testBase ]; diff --git a/nixos/tests/nextcloud/with-declarative-redis-and-secrets.nix b/nixos/tests/nextcloud/with-declarative-redis-and-secrets.nix index 40d231c21cac..094732a10fa6 100644 --- a/nixos/tests/nextcloud/with-declarative-redis-and-secrets.nix +++ b/nixos/tests/nextcloud/with-declarative-redis-and-secrets.nix @@ -14,12 +14,7 @@ runTest ( in { inherit name; - meta = with lib.maintainers; { - maintainers = [ - eqyiel - ma27 - ]; - }; + meta.maintainers = lib.teams.nextcloud.members; imports = [ testBase ]; diff --git a/nixos/tests/nextcloud/with-mysql-and-memcached.nix b/nixos/tests/nextcloud/with-mysql-and-memcached.nix index 55b1e5e5695f..5b2cd4976064 100644 --- a/nixos/tests/nextcloud/with-mysql-and-memcached.nix +++ b/nixos/tests/nextcloud/with-mysql-and-memcached.nix @@ -11,9 +11,8 @@ runTest ( { config, lib, ... }: { inherit name; - meta = with lib.maintainers; { - maintainers = [ eqyiel ]; - }; + + meta.maintainers = lib.teams.nextcloud.members; imports = [ testBase ]; diff --git a/nixos/tests/nextcloud/with-objectstore.nix b/nixos/tests/nextcloud/with-objectstore.nix index 5a2a4a6fd0f1..802c070b879d 100644 --- a/nixos/tests/nextcloud/with-objectstore.nix +++ b/nixos/tests/nextcloud/with-objectstore.nix @@ -20,12 +20,7 @@ runTest ( in { inherit name; - meta = with lib.maintainers; { - maintainers = [ - onny - ma27 - ]; - }; + meta.maintainers = lib.teams.nextcloud.members; imports = [ testBase ]; diff --git a/nixos/tests/nextcloud/with-postgresql-and-redis.nix b/nixos/tests/nextcloud/with-postgresql-and-redis.nix index 520aedf5688f..3a6b73bfe4e9 100644 --- a/nixos/tests/nextcloud/with-postgresql-and-redis.nix +++ b/nixos/tests/nextcloud/with-postgresql-and-redis.nix @@ -11,12 +11,7 @@ runTest ( { config, lib, ... }: { inherit name; - meta = with lib.maintainers; { - maintainers = [ - eqyiel - ma27 - ]; - }; + meta.maintainers = lib.teams.nextcloud.members; imports = [ testBase ]; diff --git a/pkgs/build-support/fetchnextcloudapp/default.nix b/pkgs/build-support/fetchnextcloudapp/default.nix index d2c6e842a165..ccc079b70204 100644 --- a/pkgs/build-support/fetchnextcloudapp/default.nix +++ b/pkgs/build-support/fetchnextcloudapp/default.nix @@ -15,6 +15,7 @@ patches ? [ ], description ? null, homepage ? null, + maintainers ? [ ], unpack ? false, # whether to use fetchzip rather than fetchurl }: applyPatches ( @@ -26,7 +27,7 @@ applyPatches ( { license = lib.licenses.${license}; longDescription = description; - inherit homepage; + inherit homepage maintainers; } // lib.optionalAttrs (description != null) { longDescription = description; diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix index 72bdd6ba0800..5172a9159fe0 100644 --- a/pkgs/servers/nextcloud/default.nix +++ b/pkgs/servers/nextcloud/default.nix @@ -44,13 +44,7 @@ let changelog = "https://nextcloud.com/changelog/#${lib.replaceStrings [ "." ] [ "-" ] version}"; description = "Sharing solution for files, calendars, contacts and more"; homepage = "https://nextcloud.com"; - maintainers = with lib.maintainers; [ - schneefux - bachp - globin - ma27 - britter - ]; + maintainers = lib.teams.nextcloud.members; license = lib.licenses.agpl3Plus; platforms = lib.platforms.linux; knownVulnerabilities = diff --git a/pkgs/servers/nextcloud/packages/default.nix b/pkgs/servers/nextcloud/packages/default.nix index 7e0c19c5a60a..3963cf90cce2 100644 --- a/pkgs/servers/nextcloud/packages/default.nix +++ b/pkgs/servers/nextcloud/packages/default.nix @@ -32,6 +32,7 @@ let appName = pname; appVersion = data.version; license = appBaseDefs.${pname}; + maintainers = lib.teams.nextcloud.members; inherit (data) url hash From 773094b49c1abd8a6927e6c6a7b5167ec1cc3cd6 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Tue, 25 Mar 2025 12:41:30 +0000 Subject: [PATCH 05/46] nixos/nextcloud: clarify support status of apps in the manual Realized that this is something, I discussed with Benedikt, but wasn't written down somewhere. --- nixos/modules/services/web-apps/nextcloud.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/nextcloud.md b/nixos/modules/services/web-apps/nextcloud.md index 316659141e47..700cee34f4f8 100644 --- a/nixos/modules/services/web-apps/nextcloud.md +++ b/nixos/modules/services/web-apps/nextcloud.md @@ -241,7 +241,20 @@ This can be configured with the [](#opt-services.nextcloud.phpExtraExtensions) s Alternatively, extra apps can also be declared with the [](#opt-services.nextcloud.extraApps) setting. When using this setting, apps can no longer be managed statefully because this can lead to Nextcloud updating apps -that are managed by Nix. If you want automatic updates it is recommended that you use web interface to install apps. +that are managed by Nix: + +```nix +{ config, pkgs, ... }: { + services.nextcloud.extraApps = with config.services.nextcloud.package.packages.apps; [ + inherit user_oidc calendar contacts; + ]; +} +``` + +Keep in mind that this is essentially a mirror of the apps from the appstore, but managed in +nixpkgs. This is by no means a curated list of apps that receive special testing on each update. + +If you want automatic updates it is recommended that you use web interface to install apps. ## Known warnings {#module-services-nextcloud-known-warnings} From e70f438ce917585c9c84d78f3a66fad87d416190 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 26 Mar 2025 05:52:09 +0000 Subject: [PATCH 06/46] python312Packages.logbook: 1.8.0 -> 1.8.1 --- pkgs/development/python-modules/logbook/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/logbook/default.nix b/pkgs/development/python-modules/logbook/default.nix index 004ff4e383af..f8043beac697 100644 --- a/pkgs/development/python-modules/logbook/default.nix +++ b/pkgs/development/python-modules/logbook/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "logbook"; - version = "1.8.0"; + version = "1.8.1"; format = "setuptools"; disabled = pythonOlder "3.9"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "getlogbook"; repo = "logbook"; tag = version; - hash = "sha256-SpM7LQVcQ9eJ88QDpq/3rq04jr0zrrrQuTeqtz9xsng="; + hash = "sha256-Uq5/IdbwewfTCR+lbF8UcUhQe76EHpt4CFkbi3SLGLk="; }; nativeBuildInputs = [ @@ -69,7 +69,7 @@ buildPythonPackage rec { meta = with lib; { description = "Logging replacement for Python"; homepage = "https://logbook.readthedocs.io/"; - changelog = "https://github.com/getlogbook/logbook/blob/${version}/CHANGES"; + changelog = "https://github.com/getlogbook/logbook/blob/${src.tag}/CHANGES"; license = licenses.bsd3; maintainers = [ ]; }; From c850d1c436fd584b91093b6c4be1897192a2d2b4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 26 Mar 2025 08:40:31 +0000 Subject: [PATCH 07/46] prowlarr: 1.31.2.4975 -> 1.32.2.4987 --- pkgs/by-name/pr/prowlarr/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/pr/prowlarr/package.nix b/pkgs/by-name/pr/prowlarr/package.nix index 41052aba6f28..6fc633cee1f5 100644 --- a/pkgs/by-name/pr/prowlarr/package.nix +++ b/pkgs/by-name/pr/prowlarr/package.nix @@ -37,16 +37,16 @@ let hash = { - aarch64-darwin = "sha256-ZKs6zHcwRrzwRqJWs6pAAnfn7oiu2D6HclIj2/ADEm4="; - aarch64-linux = "sha256-QJHJQEP5OBgMpCdOxURP98+e6mMBcNTAYSCORKnFXpw="; - x86_64-darwin = "sha256-k3DchyolwqszS6m0N1t1tdqFCUvBrDrhKIQ56E74bUQ="; - x86_64-linux = "sha256-7HKf5Pn0PUo3NPMdEcrw9dZl4EJkrchi2k9jtfqiXlg="; + aarch64-darwin = "sha256-5wuBChkTOljCPPRsQw6KRKbpqjW5GwJWWw8EBDVsIw0="; + aarch64-linux = "sha256-4bqK+fEkYk9LK3suWgqoSzf9vKtPpbYGuEL62M/KHR4="; + x86_64-darwin = "sha256-azG6bG7zwzZ/VU5TfjS7w3OecRb4ovgAbjlAcIyGBCM="; + x86_64-linux = "sha256-bHdI+eVBQAPQAceP2zDnxj9uh/z5aA84W1leFO5Fw0w="; } .${stdenv.hostPlatform.system} or unsupported; in stdenv.mkDerivation rec { inherit pname; - version = "1.31.2.4975"; + version = "1.32.2.4987"; src = fetchurl { url = "https://github.com/Prowlarr/Prowlarr/releases/download/v${version}/Prowlarr.master.${version}.${os}-core-${arch}.tar.gz"; From dbc61bb109b9e6af4fbbffbe3d6501285009e6a4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 26 Mar 2025 20:07:38 +0000 Subject: [PATCH 08/46] eglexternalplatform: 1.2 -> 1.2.1 --- pkgs/by-name/eg/eglexternalplatform/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/eg/eglexternalplatform/package.nix b/pkgs/by-name/eg/eglexternalplatform/package.nix index 51f865708ddd..d07a0c48a017 100644 --- a/pkgs/by-name/eg/eglexternalplatform/package.nix +++ b/pkgs/by-name/eg/eglexternalplatform/package.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "eglexternalplatform"; - version = "1.2"; + version = "1.2.1"; src = fetchFromGitHub { owner = "Nvidia"; repo = "eglexternalplatform"; rev = version; - hash = "sha256-t0dka5aUv5hB4G8PbSGiIY74XIFAsmo5a7dfWb2QCLM="; + hash = "sha256-tDKh1oSnOSG/XztHHYCwg1tDB7M6olOtJ8te+uan9ko="; }; nativeBuildInputs = [ From 06326a0d57ee75bfa0c78c03080f42de9f118e4a Mon Sep 17 00:00:00 2001 From: Connor Nelson Date: Thu, 27 Mar 2025 21:39:02 -0700 Subject: [PATCH 09/46] python312Packages.angr: fix optional dependencies --- pkgs/development/python-modules/angr/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix index 1cf65180063a..13c5b91e1c23 100644 --- a/pkgs/development/python-modules/angr/default.nix +++ b/pkgs/development/python-modules/angr/default.nix @@ -79,14 +79,13 @@ buildPythonPackage rec { rich rpyc sortedcontainers - sqlalchemy sympy - unicorn-angr unique-log-filter ]; optional-dependencies = { - AngrDB = [ sqlalchemy ]; + angrdb = [ sqlalchemy ]; + unicorn = [ unicorn-angr ]; }; setupPyBuildFlags = lib.optionals stdenv.hostPlatform.isLinux [ From 21954cf09b63698212cbd73dd05c5e90e1e3395b Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Fri, 28 Mar 2025 17:32:41 +0100 Subject: [PATCH 10/46] nextcloud-news-updater: remove, unmaintained --- .../manual/release-notes/rl-2505.section.md | 2 ++ pkgs/servers/nextcloud/news-updater.nix | 28 ------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 -- 4 files changed, 3 insertions(+), 30 deletions(-) delete mode 100644 pkgs/servers/nextcloud/news-updater.nix diff --git a/nixos/doc/manual/release-notes/rl-2505.section.md b/nixos/doc/manual/release-notes/rl-2505.section.md index 3c28e71bb8b1..df6841c1b0a9 100644 --- a/nixos/doc/manual/release-notes/rl-2505.section.md +++ b/nixos/doc/manual/release-notes/rl-2505.section.md @@ -598,6 +598,8 @@ - hddfancontrol has been updated to major release 2. See the [migration guide](https://github.com/desbma/hddfancontrol/tree/master?tab=readme-ov-file#migrating-from-v1x), as there are breaking changes. +- `nextcloud-news-updater` is unmaintained and was removed from nixpkgs. + - `services.cloudflared` now uses a dynamic user, and its `user` and `group` options have been removed. If the user or group is still necessary, they can be created manually. - The Home Assistant module has new options {option}`services.home-assistant.blueprints.automation`, `services.home-assistant.blueprints.script`, and {option}`services.home-assistant.blueprints.template` that allow for the declarative installation of [blueprints](https://www.home-assistant.io/docs/blueprint/) into the appropriate configuration directories. diff --git a/pkgs/servers/nextcloud/news-updater.nix b/pkgs/servers/nextcloud/news-updater.nix deleted file mode 100644 index f26ba5fdaff4..000000000000 --- a/pkgs/servers/nextcloud/news-updater.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ - lib, - fetchurl, - python3Packages, - php, -}: - -python3Packages.buildPythonApplication rec { - pname = "nextcloud-news-updater"; - version = "11.0.0"; - - src = fetchurl { - url = "mirror://pypi/n/nextcloud_news_updater/nextcloud_news_updater-${version}.tar.gz"; - sha256 = "bc2055c16f0dbf610b7e17650508a18fa5a1de652ecdf69c5d4073c97376e9cf"; - }; - - doCheck = false; - - propagatedBuildInputs = [ php ]; - - meta = { - description = "Fast parallel feed updater for the Nextcloud news app"; - mainProgram = "nextcloud-news-updater"; - homepage = "https://github.com/nextcloud/news-updater"; - license = lib.licenses.gpl3; - maintainers = with lib.maintainers; [ schneefux ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index fd1e82d28a68..69fe37aeb8ec 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1072,6 +1072,7 @@ mapAliases { first on 24.05 because Nextcloud doesn't support upgrades across multiple major versions! ''; # Added 2024-06-25 nextcloud27Packages = throw "Nextcloud27 is EOL!"; # Added 2024-06-25 + nextcloud-news-updater = throw "nextcloud-news-updater has been removed because the project is unmaintained"; # Added 2025-03-28 nagiosPluginsOfficial = monitoring-plugins; neochat = makePlasma5Throw "neochat"; # added 2022-05-10 nerdfonts = throw '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b1319f5d2667..9713a34fe557 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4239,8 +4239,6 @@ with pkgs; nextcloud30Packages = callPackage ../servers/nextcloud/packages { ncVersion = "30"; }; nextcloud31Packages = callPackage ../servers/nextcloud/packages { ncVersion = "31"; }; - nextcloud-news-updater = callPackage ../servers/nextcloud/news-updater.nix { }; - nextcloud-notify_push = callPackage ../servers/nextcloud/notify_push.nix { }; inherit (callPackages ../applications/networking/cluster/nomad { }) From 1748b23974a2e54912c28c928d332aa0b816cbef Mon Sep 17 00:00:00 2001 From: Malo Bourgon Date: Fri, 28 Mar 2025 10:23:45 -0700 Subject: [PATCH 11/46] claude-code: 0.2.54 -> 0.2.56 --- pkgs/by-name/cl/claude-code/package-lock.json | 8 ++++---- pkgs/by-name/cl/claude-code/package.nix | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/package-lock.json b/pkgs/by-name/cl/claude-code/package-lock.json index 88921827057b..db377ac6dae1 100644 --- a/pkgs/by-name/cl/claude-code/package-lock.json +++ b/pkgs/by-name/cl/claude-code/package-lock.json @@ -5,13 +5,13 @@ "packages": { "": { "dependencies": { - "@anthropic-ai/claude-code": "^0.2.54" + "@anthropic-ai/claude-code": "^0.2.56" } }, "node_modules/@anthropic-ai/claude-code": { - "version": "0.2.54", - "resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-0.2.54.tgz", - "integrity": "sha512-kl/g4oBg+FBQHRQv3INaiDuNWoYIUm4BbIk4qd5YbesFQVMPGtblh0Avst61FUo9ZCm64iBPWupPe5aaiJ6Y9Q==", + "version": "0.2.56", + "resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-0.2.56.tgz", + "integrity": "sha512-+ouNnASXYEgR2RNB5LDTVsR8bzUBNU3n8ZN16tIzlm0jIO/kWL243zBubdrjwmQcqroYqyu1CtN2Aav/vaouUA==", "hasInstallScript": true, "license": "SEE LICENSE IN README.md", "bin": { diff --git a/pkgs/by-name/cl/claude-code/package.nix b/pkgs/by-name/cl/claude-code/package.nix index c69a2bf8f4d9..fdc35a14bda3 100644 --- a/pkgs/by-name/cl/claude-code/package.nix +++ b/pkgs/by-name/cl/claude-code/package.nix @@ -6,14 +6,14 @@ buildNpmPackage rec { pname = "claude-code"; - version = "0.2.54"; + version = "0.2.56"; src = fetchzip { url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${version}.tgz"; - hash = "sha256-zeHaEqcUcxvF0xu2ZViL0m3v8v0UFB/xvBsEWR03F9I="; + hash = "sha256-8zqRRaqa8RFLzJC4MyrSAeK6b5vPxOxa8Q6x0UNlMuY="; }; - npmDepsHash = "sha256-e0vVEtJC1QIlGS6XQA0eMLdd7wFYWRuyC0Ynpu/Iw88="; + npmDepsHash = "sha256-h7iO6IZLKo1ifXykBm89CAmVe4K3DaewQ4gQekM9xmM="; postPatch = '' cp ${./package-lock.json} package-lock.json From 47f7b963773f55e92eb1aeda6d22ecb4be1bdfdb Mon Sep 17 00:00:00 2001 From: provokateurin Date: Sat, 29 Mar 2025 11:32:41 +0100 Subject: [PATCH 12/46] maintainers: Add provokateurin --- maintainers/maintainer-list.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 80fac0d41653..f252e57d41ba 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -19336,6 +19336,11 @@ githubId = 15833376; name = "Pierre ROux"; }; + provokateurin = { + name = "Kate Döen"; + github = "provokateurin"; + githubId = 26026535; + }; prrlvr = { email = "po@prrlvr.fr"; github = "prrlvr"; From 4714f769cdce02edd619fec4855e8a3ba859687f Mon Sep 17 00:00:00 2001 From: provokateurin Date: Sat, 29 Mar 2025 11:33:02 +0100 Subject: [PATCH 13/46] maintainers: Add provokateurin to nextcloud team --- maintainers/team-list.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index b3d41f9b34aa..197400af873b 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -864,6 +864,7 @@ with lib.maintainers; britter dotlambda ma27 + provokateurin ]; scope = "Maintain Nextcloud, its tests and the integration of applications."; shortName = "Nextcloud"; From c0cc3532282a3f3785e2db10efd023a57378d554 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 30 Mar 2025 14:47:12 +0000 Subject: [PATCH 14/46] dbvisualizer: 25.1 -> 25.1.2 --- pkgs/by-name/db/dbvisualizer/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/db/dbvisualizer/package.nix b/pkgs/by-name/db/dbvisualizer/package.nix index a5101267901f..9151eff9b697 100644 --- a/pkgs/by-name/db/dbvisualizer/package.nix +++ b/pkgs/by-name/db/dbvisualizer/package.nix @@ -13,7 +13,7 @@ let in stdenv.mkDerivation (finalAttrs: { inherit pname; - version = "25.1"; + version = "25.1.2"; src = let @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { in fetchurl { url = "https://www.dbvis.com/product_download/dbvis-${finalAttrs.version}/media/dbvis_linux_${underscoreVersion}.tar.gz"; - hash = "sha256-Se2d5S8nXKmNJ1UoYNGJyvHC20THShjzGh2T98NhFv4="; + hash = "sha256-bEvC0cd/slgddXDiLaArri3+hA3CRHBy9vhrJ8m1Jrg="; }; strictDeps = true; From 37e2a1bb11c54659d19169112cabb39f46bc0cd7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 31 Mar 2025 13:32:13 +0000 Subject: [PATCH 15/46] python312Packages.llama-index-llms-openai: 0.3.25 -> 0.3.29 --- .../python-modules/llama-index-llms-openai/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/llama-index-llms-openai/default.nix b/pkgs/development/python-modules/llama-index-llms-openai/default.nix index 66a12bf34c3d..0a25cba9384c 100644 --- a/pkgs/development/python-modules/llama-index-llms-openai/default.nix +++ b/pkgs/development/python-modules/llama-index-llms-openai/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "llama-index-llms-openai"; - version = "0.3.25"; + version = "0.3.29"; pyproject = true; disabled = pythonOlder "3.8"; @@ -18,7 +18,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "llama_index_llms_openai"; inherit version; - hash = "sha256-Hk/R0Wa7Y1ynwD8EhsBNgJeJSMW42JyLRprl0ChSz0s="; + hash = "sha256-320v9zhSpHGAlPawJmRWnSirpLeEi0SlEEQMdvE8Lic="; }; pythonRemoveDeps = [ From 090c2790bb570cb6bc695361950bb6776840bef7 Mon Sep 17 00:00:00 2001 From: Piotr Kwiecinski <2151333+piotrkwiecinski@users.noreply.github.com> Date: Mon, 31 Mar 2025 16:05:31 +0200 Subject: [PATCH 16/46] nixosTests.n8n: migrate to runTest Part of #386873 --- nixos/tests/all-tests.nix | 2 +- nixos/tests/n8n.nix | 52 +++++++++++++++++++-------------------- 2 files changed, 26 insertions(+), 28 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 7a2fa8c192ae..2c3c602d2697 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -756,7 +756,7 @@ in { mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {}; mysql-backup = handleTest ./mysql/mysql-backup.nix {}; mysql-replication = handleTest ./mysql/mysql-replication.nix {}; - n8n = handleTest ./n8n.nix {}; + n8n = runTest ./n8n.nix; nagios = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nagios.nix {}; nar-serve = handleTest ./nar-serve.nix {}; nat.firewall = handleTest ./nat.nix { withFirewall = true; }; diff --git a/nixos/tests/n8n.nix b/nixos/tests/n8n.nix index e5d730563c67..4d6ce0c0b2b7 100644 --- a/nixos/tests/n8n.nix +++ b/nixos/tests/n8n.nix @@ -1,30 +1,28 @@ -import ./make-test-python.nix ( - { lib, ... }: - let - port = 5678; - webhookUrl = "http://example.com"; - in - { - name = "n8n"; - meta.maintainers = with lib.maintainers; [ - freezeboy - k900 - ]; +{ lib, ... }: +let + port = 5678; + webhookUrl = "http://example.com"; +in +{ + name = "n8n"; + meta.maintainers = with lib.maintainers; [ + freezeboy + k900 + ]; - nodes.machine = - { pkgs, ... }: - { - services.n8n = { - enable = true; - webhookUrl = webhookUrl; - }; + nodes.machine = + { pkgs, ... }: + { + services.n8n = { + enable = true; + webhookUrl = webhookUrl; }; + }; - testScript = '' - machine.wait_for_unit("n8n.service") - machine.wait_for_console_text("Editor is now accessible via") - machine.succeed("curl --fail -vvv http://localhost:${toString port}/") - machine.succeed("grep -qF ${webhookUrl} /etc/systemd/system/n8n.service") - ''; - } -) + testScript = '' + machine.wait_for_unit("n8n.service") + machine.wait_for_console_text("Editor is now accessible via") + machine.succeed("curl --fail -vvv http://localhost:${toString port}/") + machine.succeed("grep -qF ${webhookUrl} /etc/systemd/system/n8n.service") + ''; +} From eed38c7f7458636659b41075e110159b98da6d10 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Mon, 31 Mar 2025 18:31:46 +0200 Subject: [PATCH 17/46] cmph: init at 2.0.2 --- pkgs/by-name/cm/cmph/package.nix | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 pkgs/by-name/cm/cmph/package.nix diff --git a/pkgs/by-name/cm/cmph/package.nix b/pkgs/by-name/cm/cmph/package.nix new file mode 100644 index 000000000000..6780c294ecc5 --- /dev/null +++ b/pkgs/by-name/cm/cmph/package.nix @@ -0,0 +1,26 @@ +{ + lib, + stdenv, + fetchurl, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "cmph"; + version = "2.0.2"; + + src = fetchurl { + url = "https://deac-ams.dl.sourceforge.net/project/cmph/v${finalAttrs.version}/cmph-${finalAttrs.version}.tar.gz"; + hash = "sha256-Nl8egFZADUYPHue/r9vzfV7mx46PRyO/SzwIHIlzPx4="; + }; + + meta = { + description = "Free minimal perfect hash C library, providing several algorithms in the literature in a consistent, ease to use, API"; + homepage = "https://sourceforge.net/projects/cmph/"; + license = with lib.licenses; [ + gpl2 + mpl11 + ]; + maintainers = with lib.maintainers; [ drupol ]; + platforms = lib.platforms.linux ++ lib.platforms.darwin; + }; +}) From 020e865b79339a405f162d1eab73a61f7b01c974 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Mon, 31 Mar 2025 20:37:37 +0200 Subject: [PATCH 18/46] sops: 3.10.0 -> 3.10.1 No code changes. Just a re-release of 3.10.0 https://github.com/getsops/sops/compare/v3.10.0...v3.10.1 https://github.com/getsops/sops/releases/tag/v3.10.1 Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/so/sops/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/so/sops/package.nix b/pkgs/by-name/so/sops/package.nix index 0bfc6df55978..4705134f6b27 100644 --- a/pkgs/by-name/so/sops/package.nix +++ b/pkgs/by-name/so/sops/package.nix @@ -9,13 +9,13 @@ buildGoModule rec { pname = "sops"; - version = "3.10.0"; + version = "3.10.1"; src = fetchFromGitHub { owner = "getsops"; repo = pname; tag = "v${version}"; - hash = "sha256-NOZvVL4b7+TVlB6iM4HJDa5PHOjvcN0BXDMOHmqg7lU="; + hash = "sha256-LdsuN243oQ/L6LYgynb7Kw60alXn5IfUfhY0WaZFVCU="; }; vendorHash = "sha256-I+iwimrNdKABZFP2etZTQJAXKigh+0g/Jhip86Cl5Rg="; From c3e2012f923fd367c15ddbf9decd08ec23cb532a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 31 Mar 2025 18:53:33 +0000 Subject: [PATCH 19/46] sof-firmware: 2025.01 -> 2025.01.1 --- pkgs/by-name/so/sof-firmware/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/so/sof-firmware/package.nix b/pkgs/by-name/so/sof-firmware/package.nix index 93e9e33092c1..e9c483c4c1bf 100644 --- a/pkgs/by-name/so/sof-firmware/package.nix +++ b/pkgs/by-name/so/sof-firmware/package.nix @@ -6,11 +6,11 @@ stdenvNoCC.mkDerivation rec { pname = "sof-firmware"; - version = "2025.01"; + version = "2025.01.1"; src = fetchurl { url = "https://github.com/thesofproject/sof-bin/releases/download/v${version}/sof-bin-${version}.tar.gz"; - sha256 = "sha256-NNVl23V6MkUBBjF8xR84v2eWLg/It/fHLm45/YnpkmM="; + sha256 = "sha256-o2IQ2cJF6BsNlnTWsn0f1BIpaM+SWu/FW0htNlD4gyM="; }; dontFixup = true; # binaries must not be stripped or patchelfed From 4f7495cac2e7a1d33576b5c3bcb0e9f71c1f7990 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 31 Mar 2025 21:48:43 +0200 Subject: [PATCH 20/46] zig_0_11: mark as broken See this error: The following command exited with code 1: /build/source/build/stage3/bin/zig test docgen_tmp/test_noreturn_from_exit.zig -target x86_64-windows --test-no-exec ../doc/langref.html.in:5198:25: error: test failed {#target_windows#} Generating docgen examples [1872/5411] error: ParseError /build/source/tools/docgen.zig:1864:17: 0x2a4c5f in exec (docgen) return error.ChildExitError; ^ /build/source/tools/docgen.zig:289:5: 0x2c023e in parseError__anon_6779 (docgen) return error.ParseError; ^ /build/source/tools/docgen.zig:1585:29: 0x2b7d4d in genHtml__anon_4842 (docgen) return parseError(tokenizer, code.source_token, "test failed", .{}); ^ /build/source/tools/docgen.zig:106:5: 0x2c44b8 in main (docgen) try genHtml(allocator, &tokenizer, &toc, buffered_writer.writer(), zig_exe, opt_zig_lib_dir, do_code_tests); ^ --- pkgs/development/compilers/zig/generic.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/compilers/zig/generic.nix b/pkgs/development/compilers/zig/generic.nix index 84f83b5aa709..eb08623f2013 100644 --- a/pkgs/development/compilers/zig/generic.nix +++ b/pkgs/development/compilers/zig/generic.nix @@ -173,6 +173,8 @@ stdenv.mkDerivation (finalAttrs: { license = lib.licenses.mit; maintainers = with lib.maintainers; [ andrewrk ] ++ lib.teams.zig.members; mainProgram = "zig"; + # docgen fails to build + broken = version == "0.11.0"; platforms = lib.platforms.unix; }; }) From 7be89c1891dff3a1e24a821fa483eaae091ce8ab Mon Sep 17 00:00:00 2001 From: Piotr Kwiecinski <2151333+piotrkwiecinski@users.noreply.github.com> Date: Mon, 31 Mar 2025 21:57:36 +0200 Subject: [PATCH 21/46] nixosTests.xscreensaver: migrate to runTest Part of #386873 --- nixos/tests/all-tests.nix | 2 +- nixos/tests/xscreensaver.nix | 150 +++++++++++++++++------------------ 2 files changed, 76 insertions(+), 76 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 7d8af87cd9eb..fe7043b81fc7 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -1337,7 +1337,7 @@ in { xpadneo = runTest ./xpadneo.nix; xrdp = runTest ./xrdp.nix; xrdp-with-audio-pulseaudio = runTest ./xrdp-with-audio-pulseaudio.nix; - xscreensaver = handleTest ./xscreensaver.nix {}; + xscreensaver = runTest ./xscreensaver.nix; xss-lock = runTest ./xss-lock.nix; xterm = runTest ./xterm.nix; xxh = runTest ./xxh.nix; diff --git a/nixos/tests/xscreensaver.nix b/nixos/tests/xscreensaver.nix index a8ac81e08fd6..27f496cb9def 100644 --- a/nixos/tests/xscreensaver.nix +++ b/nixos/tests/xscreensaver.nix @@ -1,81 +1,81 @@ -import ./make-test-python.nix ( - { pkgs, lib, ... }: - { - name = "pass-secret-service"; - meta.maintainers = with lib.maintainers; [ - vancluever - ]; +{ lib, ... }: +{ + name = "pass-secret-service"; + meta.maintainers = with lib.maintainers; [ + vancluever + ]; - nodes = { - ok = - { nodes, pkgs, ... }: - { - imports = [ - ./common/x11.nix - ./common/user-account.nix - ]; - test-support.displayManager.auto.user = "alice"; - services.xscreensaver.enable = true; - }; + node.pkgsReadOnly = false; - empty_wrapperPrefix = - { nodes, pkgs, ... }: - { - imports = [ - ./common/x11.nix - ./common/user-account.nix - ]; - test-support.displayManager.auto.user = "alice"; - services.xscreensaver.enable = true; - nixpkgs.overlays = [ - (self: super: { - xscreensaver = super.xscreensaver.override { - wrapperPrefix = ""; - }; - }) - ]; - }; + nodes = { + ok = + { nodes, pkgs, ... }: + { + imports = [ + ./common/x11.nix + ./common/user-account.nix + ]; + test-support.displayManager.auto.user = "alice"; + services.xscreensaver.enable = true; + }; - bad_wrapperPrefix = - { nodes, pkgs, ... }: - { - imports = [ - ./common/x11.nix - ./common/user-account.nix - ]; - test-support.displayManager.auto.user = "alice"; - services.xscreensaver.enable = true; - nixpkgs.overlays = [ - (self: super: { - xscreensaver = super.xscreensaver.override { - wrapperPrefix = "/a/bad/path"; - }; - }) - ]; - }; - }; + empty_wrapperPrefix = + { nodes, pkgs, ... }: + { + imports = [ + ./common/x11.nix + ./common/user-account.nix + ]; + test-support.displayManager.auto.user = "alice"; + services.xscreensaver.enable = true; + nixpkgs.overlays = [ + (self: super: { + xscreensaver = super.xscreensaver.override { + wrapperPrefix = ""; + }; + }) + ]; + }; - testScript = '' - ok.wait_for_x() - ok.wait_for_unit("xscreensaver", "alice") - _, output_ok = ok.systemctl("status xscreensaver", "alice") - assert 'To prevent the kernel from randomly unlocking' not in output_ok - assert 'your screen via the out-of-memory killer' not in output_ok - assert '"xscreensaver-auth" must be setuid root' not in output_ok + bad_wrapperPrefix = + { nodes, pkgs, ... }: + { + imports = [ + ./common/x11.nix + ./common/user-account.nix + ]; + test-support.displayManager.auto.user = "alice"; + services.xscreensaver.enable = true; + nixpkgs.overlays = [ + (self: super: { + xscreensaver = super.xscreensaver.override { + wrapperPrefix = "/a/bad/path"; + }; + }) + ]; + }; + }; - empty_wrapperPrefix.wait_for_x() - empty_wrapperPrefix.wait_for_unit("xscreensaver", "alice") - _, output_empty_wrapperPrefix = empty_wrapperPrefix.systemctl("status xscreensaver", "alice") - assert 'To prevent the kernel from randomly unlocking' in output_empty_wrapperPrefix - assert 'your screen via the out-of-memory killer' in output_empty_wrapperPrefix - assert '"xscreensaver-auth" must be setuid root' in output_empty_wrapperPrefix + testScript = '' + ok.wait_for_x() + ok.wait_for_unit("xscreensaver", "alice") + _, output_ok = ok.systemctl("status xscreensaver", "alice") + assert 'To prevent the kernel from randomly unlocking' not in output_ok + assert 'your screen via the out-of-memory killer' not in output_ok + assert '"xscreensaver-auth" must be setuid root' not in output_ok - bad_wrapperPrefix.wait_for_x() - bad_wrapperPrefix.wait_for_unit("xscreensaver", "alice") - _, output_bad_wrapperPrefix = bad_wrapperPrefix.systemctl("status xscreensaver", "alice") - assert 'To prevent the kernel from randomly unlocking' in output_bad_wrapperPrefix - assert 'your screen via the out-of-memory killer' in output_bad_wrapperPrefix - assert '"xscreensaver-auth" must be setuid root' in output_bad_wrapperPrefix - ''; - } -) + empty_wrapperPrefix.wait_for_x() + empty_wrapperPrefix.wait_for_unit("xscreensaver", "alice") + _, output_empty_wrapperPrefix = empty_wrapperPrefix.systemctl("status xscreensaver", "alice") + assert 'To prevent the kernel from randomly unlocking' in output_empty_wrapperPrefix + assert 'your screen via the out-of-memory killer' in output_empty_wrapperPrefix + assert '"xscreensaver-auth" must be setuid root' in output_empty_wrapperPrefix + + bad_wrapperPrefix.wait_for_x() + bad_wrapperPrefix.wait_for_unit("xscreensaver", "alice") + _, output_bad_wrapperPrefix = bad_wrapperPrefix.systemctl("status xscreensaver", "alice") + assert 'To prevent the kernel from randomly unlocking' in output_bad_wrapperPrefix + assert 'your screen via the out-of-memory killer' in output_bad_wrapperPrefix + assert '"xscreensaver-auth" must be setuid root' in output_bad_wrapperPrefix + ''; +} From 79c1d5b7c73f478e26301ccf01f49bd13a8c092b Mon Sep 17 00:00:00 2001 From: Piotr Kwiecinski <2151333+piotrkwiecinski@users.noreply.github.com> Date: Mon, 31 Mar 2025 22:37:56 +0200 Subject: [PATCH 22/46] nixosTests.bazarr: migrate to runTest Part of #386873 --- nixos/tests/all-tests.nix | 2 +- nixos/tests/bazarr.nix | 42 +++++++++++++++++++-------------------- 2 files changed, 21 insertions(+), 23 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 7d8af87cd9eb..cb8ca2775cae 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -203,7 +203,7 @@ in { }; ayatana-indicators = runTest ./ayatana-indicators.nix; babeld = runTest ./babeld.nix; - bazarr = handleTest ./bazarr.nix {}; + bazarr = runTest ./bazarr.nix; bcachefs = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bcachefs.nix {}; beanstalkd = handleTest ./beanstalkd.nix {}; bees = handleTest ./bees.nix {}; diff --git a/nixos/tests/bazarr.nix b/nixos/tests/bazarr.nix index b19b0ec00ddf..48206ce6e2f4 100644 --- a/nixos/tests/bazarr.nix +++ b/nixos/tests/bazarr.nix @@ -1,26 +1,24 @@ -import ./make-test-python.nix ( - { lib, ... }: +{ lib, ... }: - let - port = 42069; - in - { - name = "bazarr"; - meta.maintainers = with lib.maintainers; [ d-xo ]; +let + port = 42069; +in +{ + name = "bazarr"; + meta.maintainers = with lib.maintainers; [ d-xo ]; - nodes.machine = - { pkgs, ... }: - { - services.bazarr = { - enable = true; - listenPort = port; - }; + nodes.machine = + { pkgs, ... }: + { + services.bazarr = { + enable = true; + listenPort = port; }; + }; - testScript = '' - machine.wait_for_unit("bazarr.service") - machine.wait_for_open_port(${toString port}) - machine.succeed("curl --fail http://localhost:${toString port}/") - ''; - } -) + testScript = '' + machine.wait_for_unit("bazarr.service") + machine.wait_for_open_port(${toString port}) + machine.succeed("curl --fail http://localhost:${toString port}/") + ''; +} From d235e9cd90b0522dc8ffc0b13e45caf8db373aef Mon Sep 17 00:00:00 2001 From: Piotr Kwiecinski <2151333+piotrkwiecinski@users.noreply.github.com> Date: Mon, 31 Mar 2025 22:56:18 +0200 Subject: [PATCH 23/46] nixosTests.firefly-iii: migrate to runTest Part of #386873 --- nixos/tests/all-tests.nix | 2 +- nixos/tests/firefly-iii.nix | 212 ++++++++++++++++++------------------ 2 files changed, 106 insertions(+), 108 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 7d8af87cd9eb..b9b58e3d7ff6 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -398,7 +398,7 @@ in { fider = runTest ./fider.nix; filesender = handleTest ./filesender.nix {}; filesystems-overlayfs = runTest ./filesystems-overlayfs.nix; - firefly-iii = handleTest ./firefly-iii.nix {}; + firefly-iii = runTest ./firefly-iii.nix; firefly-iii-data-importer = handleTest ./firefly-iii-data-importer.nix {}; firefox = runTest { imports = [./firefox.nix ]; diff --git a/nixos/tests/firefly-iii.nix b/nixos/tests/firefly-iii.nix index 290d07711002..35a695a057ac 100644 --- a/nixos/tests/firefly-iii.nix +++ b/nixos/tests/firefly-iii.nix @@ -1,119 +1,117 @@ -import ./make-test-python.nix ( - { lib, ... }: +{ lib, ... }: - let - db-pass = "Test2Test2"; - app-key = "TestTestTestTestTestTestTestTest"; - in - { - name = "firefly-iii"; - meta.maintainers = [ lib.maintainers.savyajha ]; +let + db-pass = "Test2Test2"; + app-key = "TestTestTestTestTestTestTestTest"; +in +{ + name = "firefly-iii"; + meta.maintainers = [ lib.maintainers.savyajha ]; - nodes.fireflySqlite = - { config, ... }: - { - environment.etc = { - "firefly-iii-appkey".text = app-key; + nodes.fireflySqlite = + { config, ... }: + { + environment.etc = { + "firefly-iii-appkey".text = app-key; + }; + services.firefly-iii = { + enable = true; + enableNginx = true; + settings = { + APP_KEY_FILE = "/etc/firefly-iii-appkey"; + LOG_CHANNEL = "stdout"; + SITE_OWNER = "mail@example.com"; }; - services.firefly-iii = { - enable = true; - enableNginx = true; - settings = { - APP_KEY_FILE = "/etc/firefly-iii-appkey"; - LOG_CHANNEL = "stdout"; - SITE_OWNER = "mail@example.com"; - }; + }; + }; + + nodes.fireflyPostgresql = + { config, pkgs, ... }: + { + environment.etc = { + "firefly-iii-appkey".text = app-key; + "postgres-pass".text = db-pass; + }; + services.firefly-iii = { + enable = true; + enableNginx = true; + settings = { + APP_KEY_FILE = "/etc/firefly-iii-appkey"; + LOG_CHANNEL = "stdout"; + SITE_OWNER = "mail@example.com"; + DB_CONNECTION = "pgsql"; + DB_DATABASE = "firefly"; + DB_USERNAME = "firefly"; + DB_PASSWORD_FILE = "/etc/postgres-pass"; + PGSQL_SCHEMA = "firefly"; }; }; - nodes.fireflyPostgresql = - { config, pkgs, ... }: - { - environment.etc = { - "firefly-iii-appkey".text = app-key; - "postgres-pass".text = db-pass; - }; - services.firefly-iii = { - enable = true; - enableNginx = true; - settings = { - APP_KEY_FILE = "/etc/firefly-iii-appkey"; - LOG_CHANNEL = "stdout"; - SITE_OWNER = "mail@example.com"; - DB_CONNECTION = "pgsql"; - DB_DATABASE = "firefly"; - DB_USERNAME = "firefly"; - DB_PASSWORD_FILE = "/etc/postgres-pass"; - PGSQL_SCHEMA = "firefly"; - }; - }; + services.postgresql = { + enable = true; + package = pkgs.postgresql_16; + authentication = '' + local all postgres peer + local firefly firefly password + ''; + initialScript = pkgs.writeText "firefly-init.sql" '' + CREATE USER "firefly" WITH LOGIN PASSWORD '${db-pass}'; + CREATE DATABASE "firefly" WITH OWNER "firefly"; + \c firefly + CREATE SCHEMA AUTHORIZATION firefly; + ''; + }; + }; - services.postgresql = { - enable = true; - package = pkgs.postgresql_16; - authentication = '' - local all postgres peer - local firefly firefly password - ''; - initialScript = pkgs.writeText "firefly-init.sql" '' - CREATE USER "firefly" WITH LOGIN PASSWORD '${db-pass}'; - CREATE DATABASE "firefly" WITH OWNER "firefly"; - \c firefly - CREATE SCHEMA AUTHORIZATION firefly; - ''; + nodes.fireflyMysql = + { config, pkgs, ... }: + { + environment.etc = { + "firefly-iii-appkey".text = app-key; + "mysql-pass".text = db-pass; + }; + services.firefly-iii = { + enable = true; + enableNginx = true; + settings = { + APP_KEY_FILE = "/etc/firefly-iii-appkey"; + LOG_CHANNEL = "stdout"; + SITE_OWNER = "mail@example.com"; + DB_CONNECTION = "mysql"; + DB_DATABASE = "firefly"; + DB_USERNAME = "firefly"; + DB_PASSWORD_FILE = "/etc/mysql-pass"; + DB_SOCKET = "/run/mysqld/mysqld.sock"; }; }; - nodes.fireflyMysql = - { config, pkgs, ... }: - { - environment.etc = { - "firefly-iii-appkey".text = app-key; - "mysql-pass".text = db-pass; - }; - services.firefly-iii = { - enable = true; - enableNginx = true; - settings = { - APP_KEY_FILE = "/etc/firefly-iii-appkey"; - LOG_CHANNEL = "stdout"; - SITE_OWNER = "mail@example.com"; - DB_CONNECTION = "mysql"; - DB_DATABASE = "firefly"; - DB_USERNAME = "firefly"; - DB_PASSWORD_FILE = "/etc/mysql-pass"; - DB_SOCKET = "/run/mysqld/mysqld.sock"; - }; - }; - - services.mysql = { - enable = true; - package = pkgs.mariadb; - initialScript = pkgs.writeText "firefly-init.sql" '' - create database firefly DEFAULT CHARACTER SET utf8mb4; - create user 'firefly'@'localhost' identified by '${db-pass}'; - grant all on firefly.* to 'firefly'@'localhost'; - ''; - settings.mysqld.character-set-server = "utf8mb4"; - }; + services.mysql = { + enable = true; + package = pkgs.mariadb; + initialScript = pkgs.writeText "firefly-init.sql" '' + create database firefly DEFAULT CHARACTER SET utf8mb4; + create user 'firefly'@'localhost' identified by '${db-pass}'; + grant all on firefly.* to 'firefly'@'localhost'; + ''; + settings.mysqld.character-set-server = "utf8mb4"; }; + }; - testScript = '' - fireflySqlite.wait_for_unit("phpfpm-firefly-iii.service") - fireflySqlite.wait_for_unit("nginx.service") - fireflySqlite.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") - fireflySqlite.succeed("curl -fvvv -Ls http://localhost/v1/js/app.js") - fireflySqlite.succeed("systemctl start firefly-iii-cron.service") - fireflyPostgresql.wait_for_unit("phpfpm-firefly-iii.service") - fireflyPostgresql.wait_for_unit("nginx.service") - fireflyPostgresql.wait_for_unit("postgresql.service") - fireflyPostgresql.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") - fireflyPostgresql.succeed("systemctl start firefly-iii-cron.service") - fireflyMysql.wait_for_unit("phpfpm-firefly-iii.service") - fireflyMysql.wait_for_unit("nginx.service") - fireflyMysql.wait_for_unit("mysql.service") - fireflyMysql.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") - fireflyMysql.succeed("systemctl start firefly-iii-cron.service") - ''; - } -) + testScript = '' + fireflySqlite.wait_for_unit("phpfpm-firefly-iii.service") + fireflySqlite.wait_for_unit("nginx.service") + fireflySqlite.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") + fireflySqlite.succeed("curl -fvvv -Ls http://localhost/v1/js/app.js") + fireflySqlite.succeed("systemctl start firefly-iii-cron.service") + fireflyPostgresql.wait_for_unit("phpfpm-firefly-iii.service") + fireflyPostgresql.wait_for_unit("nginx.service") + fireflyPostgresql.wait_for_unit("postgresql.service") + fireflyPostgresql.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") + fireflyPostgresql.succeed("systemctl start firefly-iii-cron.service") + fireflyMysql.wait_for_unit("phpfpm-firefly-iii.service") + fireflyMysql.wait_for_unit("nginx.service") + fireflyMysql.wait_for_unit("mysql.service") + fireflyMysql.succeed("curl -fvvv -Ls http://localhost/ | grep 'Firefly III'") + fireflyMysql.succeed("systemctl start firefly-iii-cron.service") + ''; +} From e8ea207b5f3043f77a6f6e7acb6131dfda9236d8 Mon Sep 17 00:00:00 2001 From: Piotr Kwiecinski <2151333+piotrkwiecinski@users.noreply.github.com> Date: Mon, 31 Mar 2025 22:57:48 +0200 Subject: [PATCH 24/46] nixosTests.firefly-iii-data-importer: migrate to runTest Part of #386873 --- nixos/tests/all-tests.nix | 2 +- nixos/tests/firefly-iii-data-importer.nix | 43 +++++++++++------------ 2 files changed, 21 insertions(+), 24 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index b9b58e3d7ff6..ec0935a3e3dc 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -399,7 +399,7 @@ in { filesender = handleTest ./filesender.nix {}; filesystems-overlayfs = runTest ./filesystems-overlayfs.nix; firefly-iii = runTest ./firefly-iii.nix; - firefly-iii-data-importer = handleTest ./firefly-iii-data-importer.nix {}; + firefly-iii-data-importer = runTest ./firefly-iii-data-importer.nix; firefox = runTest { imports = [./firefox.nix ]; _module.args.firefoxPackage = pkgs.firefox; diff --git a/nixos/tests/firefly-iii-data-importer.nix b/nixos/tests/firefly-iii-data-importer.nix index aba41576d797..d43a30650bc2 100644 --- a/nixos/tests/firefly-iii-data-importer.nix +++ b/nixos/tests/firefly-iii-data-importer.nix @@ -1,27 +1,24 @@ -import ./make-test-python.nix ( - { lib, ... }: +{ lib, ... }: +{ + name = "firefly-iii-data-importer"; + meta.maintainers = [ lib.maintainers.savyajha ]; - { - name = "firefly-iii-data-importer"; - meta.maintainers = [ lib.maintainers.savyajha ]; - - nodes.dataImporter = - { ... }: - { - services.firefly-iii-data-importer = { - enable = true; - enableNginx = true; - settings = { - LOG_CHANNEL = "stdout"; - USE_CACHE = true; - }; + nodes.dataImporter = + { ... }: + { + services.firefly-iii-data-importer = { + enable = true; + enableNginx = true; + settings = { + LOG_CHANNEL = "stdout"; + USE_CACHE = true; }; }; + }; - testScript = '' - dataImporter.wait_for_unit("phpfpm-firefly-iii-data-importer.service") - dataImporter.wait_for_unit("nginx.service") - dataImporter.succeed("curl -fvvv -Ls http://localhost/token | grep 'Firefly III Data Import Tool'") - ''; - } -) + testScript = '' + dataImporter.wait_for_unit("phpfpm-firefly-iii-data-importer.service") + dataImporter.wait_for_unit("nginx.service") + dataImporter.succeed("curl -fvvv -Ls http://localhost/token | grep 'Firefly III Data Import Tool'") + ''; +} From 230457a4421237a2d223db51386c359333c90db0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 31 Mar 2025 21:39:11 +0000 Subject: [PATCH 25/46] python312Packages.pydroid-ipcam: 2.0.0 -> 3.0.0 --- pkgs/development/python-modules/pydroid-ipcam/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pydroid-ipcam/default.nix b/pkgs/development/python-modules/pydroid-ipcam/default.nix index 31ec5abd39ce..a52a6f58d05b 100644 --- a/pkgs/development/python-modules/pydroid-ipcam/default.nix +++ b/pkgs/development/python-modules/pydroid-ipcam/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "pydroid-ipcam"; - version = "2.0.0"; + version = "3.0.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "home-assistant-libs"; repo = pname; tag = version; - hash = "sha256-toY3eVJdB5rbRuwkXMizpQUxUTo4Y1tWKFCZZuiYaGI="; + hash = "sha256-Z5dWgeXwIRd2iPT2GsWyypHVbaMZ5NUXEBxa8+AZdNk="; }; propagatedBuildInputs = [ From 0592081e2bf4ef156144ccf9456aa361201304f5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 31 Mar 2025 23:13:47 +0000 Subject: [PATCH 26/46] kubo: 0.34.0 -> 0.34.1 --- pkgs/by-name/ku/kubo/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ku/kubo/package.nix b/pkgs/by-name/ku/kubo/package.nix index 1d2d8b017a80..efce344392da 100644 --- a/pkgs/by-name/ku/kubo/package.nix +++ b/pkgs/by-name/ku/kubo/package.nix @@ -8,7 +8,7 @@ buildGoModule rec { pname = "kubo"; - version = "0.34.0"; # When updating, also check if the repo version changed and adjust repoVersion below + version = "0.34.1"; # When updating, also check if the repo version changed and adjust repoVersion below rev = "v${version}"; passthru.repoVersion = "16"; # Also update kubo-migrator when changing the repo version @@ -16,7 +16,7 @@ buildGoModule rec { # Kubo makes changes to its source tarball that don't match the git source. src = fetchurl { url = "https://github.com/ipfs/kubo/releases/download/${rev}/kubo-source.tar.gz"; - hash = "sha256-+nyL8fR8OLcUU4XdA+H4I3BFj1U/mOrb0Qio2sM21jQ="; + hash = "sha256-wrAnmPfls7LFO3gQBISSmn4ucuUVmzvYEoz+eVc/A5M="; }; # tarball contains multiple files/directories From 23cb03035e5d2a5200a90cfdea5f4fd840bb1f59 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 31 Mar 2025 23:27:58 +0000 Subject: [PATCH 27/46] python312Packages.pvo: 2.2.0 -> 2.2.1 --- pkgs/development/python-modules/pvo/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/pvo/default.nix b/pkgs/development/python-modules/pvo/default.nix index 073d591c4e48..f75d81ed45f0 100644 --- a/pkgs/development/python-modules/pvo/default.nix +++ b/pkgs/development/python-modules/pvo/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "pvo"; - version = "2.2.0"; + version = "2.2.1"; pyproject = true; disabled = pythonOlder "3.11"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "frenck"; repo = "python-pvoutput"; tag = "v${version}"; - hash = "sha256-EQdOPAYh7D9jHtuOuDtokxXnFKKtC0HybSwX77jj6+c="; + hash = "sha256-UdMcY7Va8LAW3x4CR6hIrIdwrXiHh1Hs3tK+SWBrJFE="; }; postPatch = '' @@ -54,7 +54,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python module to interact with the PVOutput API"; homepage = "https://github.com/frenck/python-pvoutput"; - changelog = "https://github.com/frenck/python-pvoutput/releases/tag/v${version}"; + changelog = "https://github.com/frenck/python-pvoutput/releases/tag/${src.tag}"; license = licenses.mit; maintainers = with maintainers; [ fab ]; }; From 26aed0dd63ee4fe97debb48599fd6df81bdeca32 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 1 Apr 2025 01:23:33 +0000 Subject: [PATCH 28/46] i2p: 2.8.1 -> 2.8.2 --- pkgs/by-name/i2/i2p/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/i2/i2p/package.nix b/pkgs/by-name/i2/i2p/package.nix index 3051b656bee5..8df086cdfef4 100644 --- a/pkgs/by-name/i2/i2p/package.nix +++ b/pkgs/by-name/i2/i2p/package.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "i2p"; - version = "2.8.1"; + version = "2.8.2"; src = fetchzip { urls = @@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: { "https://files.i2p-projekt.de/" "https://download.i2p2.no/releases/" ]); - hash = "sha256-3gR1vQTs2SCjNtdj/AA69C+2tF23sGxwlVxkkPBUZWU="; + hash = "sha256-GQhZrjguihc3FyWt5MUC61+pTvaB3ij2h+SQmasJtUI="; }; strictDeps = true; From c7354f14f3e4c1ffb5a8e775e6a45010a3f57b94 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 1 Apr 2025 08:25:01 +0200 Subject: [PATCH 29/46] python312Packages.opentelemetry-instrumentation-httpx: init at 0.50b0 --- .../default.nix | 41 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 ++ 2 files changed, 45 insertions(+) create mode 100644 pkgs/development/python-modules/opentelemetry-instrumentation-httpx/default.nix diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-httpx/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-httpx/default.nix new file mode 100644 index 000000000000..4fe687d399dd --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-httpx/default.nix @@ -0,0 +1,41 @@ +{ + buildPythonPackage, + hatchling, + httpx, + opentelemetry-api, + opentelemetry-instrumentation, + opentelemetry-util-http, + opentelemetry-test-utils, + pytestCheckHook, + respx, +}: + +buildPythonPackage { + inherit (opentelemetry-instrumentation) version src; + pname = "opentelemetry-instrumentation-httpx"; + pyproject = true; + + sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-httpx"; + + build-system = [ hatchling ]; + + dependencies = [ + httpx + opentelemetry-api + opentelemetry-instrumentation + opentelemetry-util-http + ]; + + nativeCheckInputs = [ + opentelemetry-test-utils + pytestCheckHook + respx + ]; + + pythonImportsCheck = [ "opentelemetry.instrumentation.httpx" ]; + + meta = opentelemetry-instrumentation.meta // { + homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-httpx"; + description = "Allows tracing HTTP requests made by the httpx library"; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3ef9e19f4662..d105ed810492 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10291,6 +10291,10 @@ self: super: with self; { callPackage ../development/python-modules/opentelemetry-instrumentation-grpc { }; + opentelemetry-instrumentation-httpx = + callPackage ../development/python-modules/opentelemetry-instrumentation-httpx + { }; + opentelemetry-instrumentation-logging = callPackage ../development/python-modules/opentelemetry-instrumentation-logging { }; From 2b4d9b011509775723788446bf1f1f6253b74847 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 1 Apr 2025 08:42:02 +0200 Subject: [PATCH 30/46] python313Packages.ohme: 1.4.1 -> 1.5.1 Diff: https://github.com/dan-r/ohmepy/compare/refs/tags/v1.4.1...v1.5.1 Changelog: https://github.com/dan-r/ohmepy/releases/tag/v1.5.1 --- pkgs/development/python-modules/ohme/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/ohme/default.nix b/pkgs/development/python-modules/ohme/default.nix index f8fd18364129..2fff0ede84ea 100644 --- a/pkgs/development/python-modules/ohme/default.nix +++ b/pkgs/development/python-modules/ohme/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "ohme"; - version = "1.4.1"; + version = "1.5.1"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "dan-r"; repo = "ohmepy"; tag = "v${version}"; - hash = "sha256-aKlB5TJLtj6NcYzzGjvR1WhpP2rZKMl/pUcPlDmy3+8="; + hash = "sha256-71uehQEiTTvcBPoNLNYvsE1vgp4vn3AZgGQCYrxtuYs="; }; build-system = [ setuptools ]; From 78a6389526ee6b1d773ebac8498314bb18825ee0 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 1 Apr 2025 08:43:06 +0200 Subject: [PATCH 31/46] python313Packages.aiorussound: 4.4.0 -> 4.5.0 Diff: https://github.com/noahhusby/aiorussound/compare/refs/tags/4.4.0...4.5.0 Changelog: https://github.com/noahhusby/aiorussound/releases/tag/4.5.0 --- pkgs/development/python-modules/aiorussound/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiorussound/default.nix b/pkgs/development/python-modules/aiorussound/default.nix index 88b55ddd91f4..d534ab28e80b 100644 --- a/pkgs/development/python-modules/aiorussound/default.nix +++ b/pkgs/development/python-modules/aiorussound/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "aiorussound"; - version = "4.4.0"; + version = "4.5.0"; pyproject = true; # requires newer f-strings introduced in 3.12 @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "noahhusby"; repo = "aiorussound"; tag = version; - hash = "sha256-y1ArQ4o9RRngJFT3uk3wO/EVZu3kWYXUx2pnTSFUruc="; + hash = "sha256-G4bJ2K9SBMoCwTCfn1oZSDoU/FHgZXQf13YEZJBKcNo="; }; build-system = [ poetry-core ]; From 887c3a0f8c30b0fba13edfc9c76df4590934d1a0 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Tue, 1 Apr 2025 08:32:09 +0200 Subject: [PATCH 32/46] open-webui: 0.5.20 -> 0.6.0 --- pkgs/by-name/op/open-webui/package.nix | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/op/open-webui/package.nix b/pkgs/by-name/op/open-webui/package.nix index 73a80c60e6e4..33e72e505215 100644 --- a/pkgs/by-name/op/open-webui/package.nix +++ b/pkgs/by-name/op/open-webui/package.nix @@ -8,13 +8,13 @@ }: let pname = "open-webui"; - version = "0.5.20"; + version = "0.6.0"; src = fetchFromGitHub { owner = "open-webui"; repo = "open-webui"; tag = "v${version}"; - hash = "sha256-GVUEKAuuLrVTVreEeGcIAsDSOltiQAHmWGM67C5RYt4="; + hash = "sha256-YCob6Tgnpdbt9QqnwakorXGlyaxy4wo2QCp4EMGHTrU="; }; frontend = buildNpmPackage rec { @@ -30,7 +30,7 @@ let url = "https://github.com/pyodide/pyodide/releases/download/${pyodideVersion}/pyodide-${pyodideVersion}.tar.bz2"; }; - npmDepsHash = "sha256-A84u/IMZX8JlyKXltvQFHZYFXSWPXsx2mr2WwT0Lraw="; + npmDepsHash = "sha256-lWVkZDlPDCmiNMj+7K47wSFwTKRJkS762uGtcBfx59s="; # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` # Until this is solved, running python packages from the browser will not work. @@ -133,11 +133,23 @@ python312.pkgs.buildPythonApplication rec { opencv-python-headless openpyxl opensearch-py + opentelemetry-api + opentelemetry-sdk + opentelemetry-exporter-otlp + opentelemetry-instrumentation + opentelemetry-instrumentation-fastapi + opentelemetry-instrumentation-sqlalchemy + opentelemetry-instrumentation-redis + opentelemetry-instrumentation-requests + opentelemetry-instrumentation-logging + opentelemetry-instrumentation-httpx + opentelemetry-instrumentation-aiohttp-client pandas passlib peewee peewee-migrate pgvector + pillow playwright psutil psycopg2-binary From 9f02d65aad74fb15e1185edf18830788a38cde28 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 1 Apr 2025 08:47:48 +0200 Subject: [PATCH 33/46] python312Packages.pvo: migrate to pytest-cov-stub --- pkgs/development/python-modules/pvo/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pvo/default.nix b/pkgs/development/python-modules/pvo/default.nix index f75d81ed45f0..9da666746217 100644 --- a/pkgs/development/python-modules/pvo/default.nix +++ b/pkgs/development/python-modules/pvo/default.nix @@ -7,6 +7,7 @@ poetry-core, mashumaro, pytest-asyncio, + pytest-cov-stub, pytestCheckHook, pythonOlder, syrupy, @@ -30,8 +31,7 @@ buildPythonPackage rec { postPatch = '' # Upstream doesn't set a version for the pyproject.toml substituteInPlace pyproject.toml \ - --replace "0.0.0" "${version}" \ - --replace "--cov" "" + --replace "0.0.0" "${version}" ''; build-system = [ poetry-core ]; @@ -45,6 +45,7 @@ buildPythonPackage rec { nativeCheckInputs = [ aresponses pytest-asyncio + pytest-cov-stub pytestCheckHook syrupy ]; From 2d479872ab934c30d0f1c7c8907c6f9330cf5b3e Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 1 Apr 2025 08:51:07 +0200 Subject: [PATCH 34/46] python312Packages.pydroid-ipcam: refactor --- .../python-modules/pydroid-ipcam/default.nix | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/pydroid-ipcam/default.nix b/pkgs/development/python-modules/pydroid-ipcam/default.nix index a52a6f58d05b..6912c9355136 100644 --- a/pkgs/development/python-modules/pydroid-ipcam/default.nix +++ b/pkgs/development/python-modules/pydroid-ipcam/default.nix @@ -4,24 +4,27 @@ buildPythonPackage, fetchFromGitHub, pythonOlder, + setuptools, yarl, }: buildPythonPackage rec { pname = "pydroid-ipcam"; version = "3.0.0"; - format = "setuptools"; + pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "home-assistant-libs"; - repo = pname; + repo = "pydroid-ipcam"; tag = version; hash = "sha256-Z5dWgeXwIRd2iPT2GsWyypHVbaMZ5NUXEBxa8+AZdNk="; }; - propagatedBuildInputs = [ + build-system = [ setuptools ]; + + dependencies = [ aiohttp yarl ]; @@ -34,7 +37,8 @@ buildPythonPackage rec { meta = with lib; { description = "Python library for Android IP Webcam"; homepage = "https://github.com/home-assistant-libs/pydroid-ipcam"; - license = with licenses; [ asl20 ]; + changelog = "https://github.com/home-assistant-libs/pydroid-ipcam/releases/tag/${src.tag}"; + license = licenses.asl20; maintainers = with maintainers; [ fab ]; }; } From 63455f1a21b1e5a96104379f01c7436c9af0839a Mon Sep 17 00:00:00 2001 From: Adrien Faure Date: Thu, 27 Mar 2025 16:08:00 +0100 Subject: [PATCH 35/46] docs: add separate Nixpkgs release notes the initial change was already made ad hoc in 10a75ab, in response to the recently introduced enforced redirects mapping that is supposed to keep stable URLs. due to the redirect mechanism's current limitation to locations within the same site (that is, either the Nixpkgs xor the NixOS manual), and the observation that noteworthy Nixpkgs changes tend to be self-contained, it seemed reasonable to introduce a seperate release notes document. it also has the advantage that users of only Nixpkgs don't have to deal with release notes that are only relevant for NixOS. the original change was already lossless for NixOS users, since the Nixpkgs release notes are appended to the NixOS release notes. this change moves the pre-existing Nixpkgs notes to the new dedicated page. Co-authored-by: Gagarin Valentin Gagarin --- doc/redirects.json | 6 + doc/release-notes/rl-2505.section.md | 268 +++++++++++++++++- nixos/doc/manual/redirects.json | 6 + .../manual/release-notes/rl-2505.section.md | 258 +---------------- 4 files changed, 277 insertions(+), 261 deletions(-) diff --git a/doc/redirects.json b/doc/redirects.json index 2c44eb3ed4a9..df7592d17920 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -95,6 +95,9 @@ "sec-nixpkgs-release-25.05": [ "release-notes.html#sec-nixpkgs-release-25.05" ], + "sec-nixpkgs-release-25.05-highlights": [ + "release-notes.html#sec-nixpkgs-release-25.05-highlights" + ], "sec-nixpkgs-release-25.05-incompatibilities": [ "release-notes.html#sec-nixpkgs-release-25.05-incompatibilities" ], @@ -119,6 +122,9 @@ "sec-nixpkgs-release-25.05-lib-additions-improvements": [ "release-notes.html#sec-nixpkgs-release-25.05-lib-additions-improvements" ], + "sec-nixpkgs-release-25.05-notable-changes": [ + "release-notes.html#sec-nixpkgs-release-25.05-notable-changes" + ], "sec-overlays-install": [ "index.html#sec-overlays-install" ], diff --git a/doc/release-notes/rl-2505.section.md b/doc/release-notes/rl-2505.section.md index fa6464a059f3..e030606cbdc4 100644 --- a/doc/release-notes/rl-2505.section.md +++ b/doc/release-notes/rl-2505.section.md @@ -1,13 +1,42 @@ # Nixpkgs 25.05 (2025.05/??) {#sec-nixpkgs-release-25.05} +## Highlights {#sec-nixpkgs-release-25.05-highlights} + + + +- **This release of Nixpkgs requires macOS Big Sur 11.3 or newer, as announced in the 24.11 release notes.** + We cannot guarantee that packages will continue to work on older versions of macOS. + Future Nixpkgs releases will only support [macOS versions supported by Apple](https://endoflife.date/macos); this means that **Nixpkgs 25.11 will require macOS Sonoma 14 or newer**. + Users on old macOS versions should consider upgrading to a supported version (potentially using [OpenCore Legacy Patcher](https://dortania.github.io/OpenCore-Legacy-Patcher/) for old hardware) or installing NixOS. + If neither of those options are viable and you require new versions of software, [MacPorts](https://www.macports.org/) supports versions back to Mac OS X Snow Leopard 10.6. + +- The default kernel package has been updated from 6.6 to 6.12. All supported kernels remain available. + +- GCC has been updated from GCC 13 to GCC 14. + This introduces some backwards‐incompatible changes; see the [upstream porting guide](https://gcc.gnu.org/gcc-14/porting_to.html) for details. + +- LLVM has been updated from LLVM 16 (on Darwin) and LLVM 18 (on other platforms) to LLVM 19. + This introduces some backwards‐incompatible changes; see the [upstream release notes](https://releases.llvm.org/) for details. + +- Emacs has been updated to 30.1. + This introduces some backwards‐incompatible changes; see the NEWS for details. + NEWS can been viewed from Emacs by typing `C-h n`, or by clicking `Help->Emacs News` from the menu bar. + It can also be browsed [online](https://git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=emacs-30). + +- The default PHP version has been updated to 8.4. + +- The default Erlang OTP version has been updated to 27. + +- The default Elixir version has been updated to 1.18. + +- `buildPythonPackage`, `buildPythonApplication` and the Python building setup hooks now support both `__structuredAttrs = true` and `__structuredAttrs = false`. + + + ## Backward Incompatibilities {#sec-nixpkgs-release-25.05-incompatibilities} -- `services.rippled` has been removed, as `rippled` was broken and had not been updated since 2022. - -- `services.rippleDataApi` has been removed, as `ripple-data-api` was broken and had not been updated since 2022. - - `apptainer` and `singularity` deprecate the workaround of overriding `vendorHash` and related attributes via `.override`, in favour of the unified overriding of the same group of attributes via `.overrideAttrs`. The compatibility layer will be removed in future releases. @@ -37,10 +66,6 @@ It should generally be replaced with `rustPlatform.fetchCargoVendor`, but `rustPlatform.importCargoLock` may also be appropriate in some circumstances. `rustPlatform.buildRustPackage` users must set `useFetchCargoVendor` to `true` and regenerate the `cargoHash`. -- The `nixos/modules/virtualisation/amazon-ec2-amis.nix` file is not supported anymore since 24.05. It will throw - and error starting 25.05 with instructions the following instructions: - The canonical source for NixOS AMIs is the AWS API. Please see https://nixos.org/download/#nixos-amazon or https://nixos.github.io/amis/ for instructions. - - NetBox was updated to `>= 4.2.0`. Have a look at the breaking changes of the [4.1 release](https://github.com/netbox-community/netbox/releases/tag/v4.1.0) and the [4.2 release](https://github.com/netbox-community/netbox/releases/tag/v4.2.0), @@ -59,11 +84,234 @@ the [release announcement](https://kafka.apache.org/blog#apache_kafka_400_release_announcement) for more details. +- `ast-grep` remove `sg` command to prevent conflict with `sg` command from shadow-utils. If you need legacy sg command compatibility with old code, you can use `ast-grep.override { enableLegacySg = true; }` + +- rename package `wtf` to `wtfutil`. + +- `python3Packages.beancount` was updated to 3.1.0. Previous major version remains available as `python3Packages.beancount_2`. + +- `wastebin` has been updated to 3.0.0. See the [Changelog](https://github.com/matze/wastebin/blob/master/CHANGELOG.md#300) for breaking changes to the configuration. + +- `binwalk` was updated to 3.1.0, which has been rewritten in rust. The python module is no longer available. + See the release notes of [3.1.0](https://github.com/ReFirmLabs/binwalk/releases/tag/v3.1.0) for more information. + +- `pkgs.nextcloud28` has been removed since it's out of support upstream. + +- `teleport` has been upgraded from major version 16 to major version 17. + Refer to [upstream upgrade instructions](https://goteleport.com/docs/upgrading/overview/) + and [release notes for v17](https://goteleport.com/docs/changelog/#1701-11152024). + +- Emacs lisp build helpers, such as `emacs.pkgs.melpaBuild`, now enables `__structuredAttrs` by default. + Environment variables have to be passed via the `env` attribute. + +- `buildGoModule` now passes environment variables via the `env` attribute. `CGO_ENABLED` should now be specified with `env.CGO_ENABLED` when passing to buildGoModule. Direct specification of `CGO_ENABLED` is now redirected by a compatibility layer with a warning, but will become an error in future releases. + + Go-related environment variables previously shadowed by `buildGoModule` now results in errors when specified directly. Such variables include `GOOS` and `GOARCH`. + + Third-party projects supporting both stable and unstable channels could detect this change through the absence of the `CGO_ENABLED` function argument in `buildGoModule` (`!((lib.functionArgs buildGoModule) ? CGO_ENABLED)`). + +- `buildGoPackage` has been removed. Use `buildGoModule` instead. See the [Go section in the nixpkgs manual](https://nixos.org/manual/nixpkgs/unstable/#sec-language-go) for details. + +- top-level `playwright` now refers to the github Microsoft/playwright package + instead of the python tester launcher. You can still refer to the python + launcher via `python3Packages.toPythonApplication python3Packages.playwright` + +- The representation of the flags attributes as shell/environment variables for most Python building setup hooks are now the same as `stdenv.mkDerivation` and other build helpers -- they are space-separated environment variables when `__structuredAttrs = false` and Bash arrays when `__structuredAttrs = true`, and are concatenated to the command without Bash-evaluation. The following behaviour changes are introduced during the conversion: + + - The following flags are no longer Bash-expanded before concatenated to the command: + - `disabledTests` and `disabledTestPaths` for `pytestCheckHook`. (`disabledTestPaths` used to be expanded twice before concatenation.) + - `setupPyBuildFlags` and `setupPyGlobalFlags` for `setuptoolsBuildHook`. + + - `pytestFlags` and `unittestFlags` replace `pytestFlagsArray` and `unittestFlagsArray` and become the new and conforming interface. + + - `pytestFlagsArray` and `unittestFlagsArray` are kept for compatibility purposes. They continue to be Bash-expanded before concatenated. This compatibility layer will be removed in future releases. + +- The `haka` package and module has been removed because the package was broken and unmaintained for 9 years. + +- `strawberry` has been updated to 1.2, which drops support for the VLC backend and Qt 5. The `strawberry-qt5` package + and `withGstreamer`/`withVlc` override options have been removed due to this. + +- `nezha` and its agent `nezha-agent` have been updated to v1, which contains breaking changes. See the [official wiki](https://nezha.wiki/en_US/) for more details. + +- `ps3-disc-dumper` was updated to 4.2.5, which removed the CLI project and now exclusively offers the GUI + +- `kmonad` is now hardened by default using common `systemd` settings. + If KMonad is used to execute shell commands, hardening may make some of them fail. In that case, you can disable hardening using {option}`services.kmonad.keyboards..enableHardening` option. + +- `isd` was updated from 0.2.0 to 0.5.1, the new version may crash with a previously generated config, try moving or deleting `~/.config/isd/schema.json`. + +- `uwsgi` no longer supports Python 2 plugins. + +- Support for CUDA 10 has been dropped, as announced in the 24.11 release notes. + +- `mepo` was updated to version 1.3.3. The manual page was removed, + a new JSON API was introduced to replace Mepolang for configuration, + and a few default key bindings were changed. + See the [1.3.0 changelog](https://git.sr.ht/~mil/mepo/refs/1.3.0) + for more details. + +- `mkBinaryCache` now defaults to using `zstd` compression for the binary caches it creates. The previous `xz` compression method can be used by passing `compression = "xz";`. + +- `nodePackages."@commitlint/config-conventional"` has been removed, as it is a library, and projects should depend on it instead. + +- zigbee2mqtt is now available in version 2.x as `zigbee2mqtt_2`. In NixOS 25.11 we'll remove `zigbee2mqtt_1` and default to `zigbee2mqtt_2`. See the [breaking changes](https://github.com/Koenkk/zigbee2mqtt/discussions/24198) announcement for 2.0.0. + +- `nodePackages.vls` has been deprecated, as the upstream consumer of it, vetur, has been deprecated by upstream. Upstream suggests migrating to Volar for Vue LSP tooling instead. + +- `nodePackages.create-react-native-app` has been removed, as it is deprecated. Upstream suggests using a framework for React Native apps instead. + +- `nodePackages.insect` has been removed, as it's deprecated by upstream. The suggested replacement is `numbat`. + +- `nodePackages.webpack-dev-server` has been removed, as it should be installed in projects that use it instead. + +- `nodePackages.copy-webpack-plugin` has been removed, as it should be installed in projects that use it instead. + +- `himalaya` has been updated from `v1.0.0-beta.4` to `v1.1.0`, which introduces breaking changes. Check out the [release notes](https://github.com/pimalaya/himalaya/releases) for details. + +- `linuxPackages.nvidiaPackages.dc_520` has been removed since it is marked broken and there are better newer alternatives. + +- `pnpm` was updated to version 10. If your project is incompatible, you can install the previous version from the package attribute `pnpm_9`. + +- `zig_0_9` and `zig_0_10` have been removed, you should upgrade to `zig_0_13` (also available as just `zig`), `zig_0_12` or `zig_0_11` instead. + +- `webpack-cli` was updated to major version 6, which has breaking changes from the previous version 5.1.4. See the [upstream release notes](https://github.com/webpack/webpack-cli/releases/tag/webpack-cli%406.0.0) for details on these changes. + +- `minetest` has been renamed to `luanti` to match the upstream name change but aliases have been added. The new name hasn't resulted in many changes as of yet but older references to minetest should be sunset. See the [new name announcement](https://blog.minetest.net/2024/10/13/Introducing-Our-New-Name/) for more details. + +- `poac` has been renamed to `cabinpkg` to match the upstream name change but an alias has been added. See the [new name announcement](https://github.com/orgs/cabinpkg/discussions/1052) for more details. + +- `serious-sans` has been removed because upstream changed its name to Serious Shanns, which is not currently packaged. + +- `racket_7_9` has been removed, as it is insecure. It is recommended to use Racket 8 instead. + +- `rofi` has been updated from 1.7.5 to 1.7.6 which introduces some breaking changes to binary plugins, and also contains a lot of new features and bug fixes. This is highlighted because the patch version bump does not indicate the volume of changes by itself. See the [upstream release notes](https://github.com/davatorium/rofi/releases/tag/1.7.6) for the full list of changes. + +- `ente-auth` now uses the name `enteauth` for its binary. The previous name was `ente_auth`. + +- `foundationdb` was upgraded to 7.3. + +- `fluxus` has been removed, as it depends on `racket_7_9` and had no updates in 9 years. + +- `sm64ex-coop` has been removed as it was archived upstream. Consider migrating to `sm64coopdx`. + +- `tldr` now uses [`tldr-python-client`](https://github.com/tldr-pages/tldr-python-client) instead of [`tldr-c-client`](https://github.com/tldr-pages/tldr-c-client) which is unmaintained. + +- `renovate` was updated to v39. See the [upstream release notes](https://docs.renovatebot.com/release-notes-for-major-versions/#version-39) for breaking changes. + Like upstream's docker images, renovate now runs on NodeJS 22. + +- The behavior of the `networking.nat.externalIP` and `networking.nat.externalIPv6` options has been changed. `networking.nat.forwardPorts` now only forwards packets destined for the specified IP addresses. + +- `python3Packages.bpycv` has been removed due to being incompatible with Blender 4 and unmaintained. + +- `python3Packages.jaeger-client` was removed because it was deprecated upstream. [OpenTelemetry](https://opentelemetry.io) is the recommended replacement. + +- `nodePackages.meshcommander` has been removed, as the package was deprecated by Intel. + +- The default version of `z3` has been updated from 4.8 to 4.13. There are still a few packages that need specific older versions; those will continue to be maintained as long as other packages depend on them but may be removed in the future. + +- `prometheus` has been updated from 2.55.0 to 3.1.0. + Read the [release blog post](https://prometheus.io/blog/2024/11/14/prometheus-3-0/) and + [migration guide](https://prometheus.io/docs/prometheus/3.1/migration/). + +- `kanata` was updated to v1.8.0, which introduces several breaking changes. + See the release notes of + [v1.7.0](https://github.com/jtroo/kanata/releases/tag/v1.7.0) and + [v1.8.0](https://github.com/jtroo/kanata/releases/tag/v1.8.0) + for more information. + +- `authelia` version 4.39.0 has made changes on the default claims for ID Tokens, to mirror the standard claims from the specification. + This change may affect some clients in unexpected ways, so manual intervention may be required. + Read the [release notes](https://www.authelia.com/blog/4.39-release-notes/), along with [the guide](https://www.authelia.com/integration/openid-connect/openid-connect-1.0-claims/#restore-functionality-prior-to-claims-parameter) to work around issues that may be encountered. + +- `ags` was updated to v2, which is just a CLI for Astal now. Components are available as a different package set `astal.*`. + If you want to use v1, it is available as `ags_1` package. + + See the release notes of + [v2.0.0](https://github.com/Aylur/ags/releases/tag/v2.0.0) + for more information. + +- `nodePackages.expo-cli` has been removed, as it was deprecated by upstream. The suggested replacement is the `npx expo` command. + +- `open-policy-agent` has has been updated to 1.0.0+. + This major release makes the `rego.v1` syntax the default. + This is a breaking change for those using v0 Rego. + See the [upgrade documentation](https://www.openpolicyagent.org/docs/v1.0.1/v0-upgrade/) for more details. + For those unable to upgrade yet, there is a [v0 compatibility mode](https://www.openpolicyagent.org/docs/v1.0.1/v0-compatibility/) + available too. + +- `vscode-utils.buildVscodeExtension` now requires pname as an argument + +- `nerdfonts` has been separated into individual font packages under the namespace `nerd-fonts`. The directories for font + files have changed from `$out/share/fonts/{opentype,truetype}/NerdFonts` to + `$out/share/fonts/{opentype,truetype}/NerdFonts/`, where `` can be found in the + [official website](https://www.nerdfonts.com/font-downloads) as the titles in preview images, with the "Nerd Font" + suffix and any whitespaces trimmed. Configuration changes are required, see build output. + +- `retroarch` has been refactored and the older `retroarch.override { cores = [ ... ]; }` to create a RetroArch derivation with custom cores doesn't work anymore, use `retroarch.withCores (cores: [ ... ])` instead. If you need more customization (e.g.: custom settings), use `wrapRetroArch` instead. + +- `borgmatic` has been updated from 1.8.14 to 1.9.5, please check the [upstream changelog](https://projects.torsion.org/borgmatic-collective/borgmatic/releases) for more details, especially for a few possibly breaking changes noted in the [1.9.0 changelog](https://projects.torsion.org/borgmatic-collective/borgmatic/releases/tag/1.9.0). + +- `nodePackages.ganache` has been removed, as the package has been deprecated by upstream. + +- `matomo` now defaults to version 5 (previously available as `matomo_5`). Version 4 has been removed as it reached EOL on December 19, 2024. + +- `matomo-beta` has been removed as the version of the `matomo` package can now be easily overridden through `overrideAttrs` (see [PR #374022](https://github.com/NixOS/nixpkgs/pull/374022)) + +- `docker_24` has been removed, as it was EOL with vulnerabilities since June 08, 2024. + +- Emacs 28 and 29 have been removed. + +- `containerd` has been updated to v2, which contains breaking changes. See the [containerd + 2.0](https://github.com/containerd/containerd/blob/main/docs/containerd-2.0.md) documentation for more + details. + +- `nodePackages.stackdriver-statsd-backend` has been removed, as the StackDriver service has been discontinued by Google, and therefore the package no longer works. + +- `python3Packages.opentracing` has been removed due to being unmaintained upstream. [OpenTelemetry](https://opentelemetry.io/) is the recommended replacement. + +- the notmuch vim plugin now lives in a separate output of the `notmuch` + package. Installing `notmuch` will not bring the notmuch vim package anymore, + add `vimPlugins.notmuch-vim` to your (Neo)vim configuration if you want the + vim plugin. + +- `prisma` and `prisma-engines` have been updated to version 6.3.0, which + introduces several breaking changes. See the + [Prisma ORM upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6) + for more information. + +- `depdendency-track` no longer bundes the UI inside the jar. This bundling + functionality is deprecated by upstream and causes UI assets not being served + after weeks of runtime. + +- `nq` was updated to 1.0, which renames the `fq` and `tq` utilities to `nqtail` and `nqterm` respectively. + +- `zf` was updated to 0.10.2, which includes breaking changes from the [0.10.0 release](https://github.com/natecraddock/zf/releases/tag/0.10.0). + `zf` no longer does Unicode normalization of the input and no longer supports terminal escape sequences in the `ZF_PROMPT` environment variable. + +- `confluent-cli` was updated from 3.60.0 to 4.16.0, which includes several breaking changes as detailed in [Confluent's release notes](https://docs.confluent.io/confluent-cli/current/release-notes.html). + +- `siduck76-st` has been renamed to `st-snazzy`, like the project's [flake](https://github.com/siduck/st/blob/main/flake.nix). + +- `python3Packages.jax` now directly depends on `python3Packages.jaxlib`. + As a result, packages that depend on jax no longer need to include jaxlib to their dependencies. + There is also a breaking change in the handling of CUDA. Instead of using a CUDA compatible jaxlib + as before, you can use plugins like `python3Packages.jax-cuda12-plugin`. + -### Titanium removed {#sec-nixpkgs-release-25.05-incompatibilities-titanium-removed} +## Other Notable Changes {#sec-nixpkgs-release-25.05-notable-changes} -- `titaniumenv`, `titanium`, and `titanium-alloy` have been removed due to lack of maintenance in Nixpkgs. +- `titaniumenv`, `titanium`, and `titanium-alloy` have been removed due to lack of maintenance in Nixpkgs []{#sec-nixpkgs-release-25.05-incompatibilities-titanium-removed}. + +- `gerbera` now has wavpack support. + +- GOverlay has been updated to 1.2, please check the [upstream changelog](https://github.com/benjamimgois/goverlay/releases) for more details. + +- For matrix homeserver Synapse we are now following the upstream recommendation to enable jemalloc as the memory allocator by default. + +- In `dovecot` package removed hard coding path to module directory. + +- `ddclient` was updated from 3.11.2 to 4.0.0 [Release notes](https://github.com/ddclient/ddclient/releases/tag/v4.0.0) ### NexusMods.App upgraded {#sec-nixpkgs-release-25.05-incompatibilities-nexusmods-app-upgraded} diff --git a/nixos/doc/manual/redirects.json b/nixos/doc/manual/redirects.json index de696eeab75b..964cf37cc5de 100644 --- a/nixos/doc/manual/redirects.json +++ b/nixos/doc/manual/redirects.json @@ -1949,6 +1949,12 @@ "sec-nixpkgs-release-25.05-lib-additions-improvements": [ "release-notes.html#sec-nixpkgs-release-25.05-lib-additions-improvements" ], + "sec-nixpkgs-release-25.05-highlights": [ + "release-notes.html#sec-nixpkgs-release-25.05-highlights" + ], + "sec-nixpkgs-release-25.05-notable-changes": [ + "release-notes.html#sec-nixpkgs-release-25.05-notable-changes" + ], "sec-release-24.11": [ "release-notes.html#sec-release-24.11" ], diff --git a/nixos/doc/manual/release-notes/rl-2505.section.md b/nixos/doc/manual/release-notes/rl-2505.section.md index 7c2f4df7bc73..bfd60ae976c7 100644 --- a/nixos/doc/manual/release-notes/rl-2505.section.md +++ b/nixos/doc/manual/release-notes/rl-2505.section.md @@ -1,38 +1,11 @@ -# Release 25.05 (“Warbler”, 2025.05/??) {#sec-release-25.05} +# Nixos 25.05 (“Warbler”, 2025.05/??) {#sec-release-25.05} ## Highlights {#sec-release-25.05-highlights} -- **This release of Nixpkgs requires macOS Big Sur 11.3 or newer, as announced in the 24.11 release notes.** - We cannot guarantee that packages will continue to work on older versions of macOS. - Future Nixpkgs releases will only support [macOS versions supported by Apple](https://endoflife.date/macos); this means that **Nixpkgs 25.11 will require macOS Sonoma 14 or newer**. - Users on old macOS versions should consider upgrading to a supported version (potentially using [OpenCore Legacy Patcher](https://dortania.github.io/OpenCore-Legacy-Patcher/) for old hardware) or installing NixOS. - If neither of those options are viable and you require new versions of software, [MacPorts](https://www.macports.org/) supports versions back to Mac OS X Snow Leopard 10.6. - - Initial support for the [COSMIC DE](https://system76.com/cosmic), a Rust-based desktop environment by System76, makers of Pop!_OS. Toggle the greeter (login manager) using `services.displayManager.cosmic-greeter.enable` and the DE itself with `services.desktopManager.cosmic.enable`. Mostly stable but still experimental. Please report any issues to the [COSMIC DE tracker in Nixpkgs](https://github.com/NixOS/nixpkgs/issues/259641) instead of upstream. -- The default kernel package has been updated from 6.6 to 6.12. All supported kernels remain available. - -- GCC has been updated from GCC 13 to GCC 14. - This introduces some backwards‐incompatible changes; see the [upstream porting guide](https://gcc.gnu.org/gcc-14/porting_to.html) for details. - -- LLVM has been updated from LLVM 16 (on Darwin) and LLVM 18 (on other platforms) to LLVM 19. - This introduces some backwards‐incompatible changes; see the [upstream release notes](https://releases.llvm.org/) for details. - -- Emacs has been updated to 30.1. - This introduces some backwards‐incompatible changes; see the NEWS for details. - NEWS can been viewed from Emacs by typing `C-h n`, or by clicking `Help->Emacs News` from the menu bar. - It can also be browsed [online](https://git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=emacs-30). - -- The default PHP version has been updated to 8.4. - -- The default Erlang OTP version has been updated to 27. - -- The default Elixir version has been updated to 1.18. - -- `buildPythonPackage`, `buildPythonApplication` and the Python building setup hooks now support both `__structuredAttrs = true` and `__structuredAttrs = false`. - - `services.dex` now restarts upon changes to the `.environmentFile` or entries in `.settings.staticClients[].secretFile` when the entry is a `path` type. - `nixos-rebuild-ng`, a full rewrite of `nixos-rebuild` in Python, is available for testing. You can enable it by setting [system.rebuild.enableNg](options.html#opt-system.rebuild.enableNg) in your configuration (this will replace the old `nixos-rebuild`), or by adding `nixos-rebuild-ng` to your `environment.systemPackages` (in this case, it will live side-by-side with `nixos-rebuild` as `nixos-rebuild-ng`). It is expected that the next major version of NixOS (25.11) will enable `system.rebuild.enableNg` by default. @@ -228,67 +201,24 @@ -- `ast-grep` remove `sg` command to prevent conflict with `sg` command from shadow-utils. If you need legacy sg command compatibility with old code, you can use `ast-grep.override { enableLegacySg = true; }` +- `services.rippled` has been removed, as `rippled` was broken and had not been updated since 2022. -- rename package `wtf` to `wtfutil`. +- `services.rippleDataApi` has been removed, as `ripple-data-api` was broken and had not been updated since 2022. + +- The `nixos/modules/virtualisation/amazon-ec2-amis.nix` file is not supported anymore since 24.05. It will throw + and error starting 25.05 with instructions the following instructions: + The canonical source for NixOS AMIs is the AWS API. Please see https://nixos.org/download/#nixos-amazon or https://nixos.github.io/amis/ for instructions. - The udev rules of the libjaylink package require users to be in the `jlink` instead of `plugdev` group now, since the `plugdev` group is very uncommon for NixOS. Alternatively, access is granted to seat sessions. -- `python3Packages.beancount` was updated to 3.1.0. Previous major version remains available as `python3Packages.beancount_2`. - -- `wastebin` has been updated to 3.0.0. See the [Changelog](https://github.com/matze/wastebin/blob/master/CHANGELOG.md#300) for breaking changes to the configuration. - -- `binwalk` was updated to 3.1.0, which has been rewritten in rust. The python module is no longer available. - See the release notes of [3.1.0](https://github.com/ReFirmLabs/binwalk/releases/tag/v3.1.0) for more information. - - The latest available version of Nextcloud is v31 (available as `pkgs.nextcloud31`). The installation logic is as follows: - If [`services.nextcloud.package`](#opt-services.nextcloud.package) is specified explicitly, this package will be installed (**recommended**) - If [`system.stateVersion`](#opt-system.stateVersion) is >=24.11, `pkgs.nextcloud30` will be installed by default. - If [`system.stateVersion`](#opt-system.stateVersion) is >=24.05, `pkgs.nextcloud31` will be installed by default. - Please note that an upgrade from v29 (or older) to v31 directly is not possible. Please upgrade to `nextcloud30` (or earlier) first. Nextcloud prohibits skipping major versions while upgrading. You can upgrade by declaring [`services.nextcloud.package = pkgs.nextcloud30;`](options.html#opt-services.nextcloud.package). -- `pkgs.nextcloud28` has been removed since it's out of support upstream. - -- `teleport` has been upgraded from major version 16 to major version 17. - Refer to [upstream upgrade instructions](https://goteleport.com/docs/upgrading/overview/) - and [release notes for v17](https://goteleport.com/docs/changelog/#1701-11152024). - - `services.cloudflare-dyndns.apiTokenFile` now must be just your Cloudflare api token. Previously it was supposed to be a file of the form `CLOUDFLARE_API_TOKEN=...`. -- Emacs lisp build helpers, such as `emacs.pkgs.melpaBuild`, now enables `__structuredAttrs` by default. - Environment variables have to be passed via the `env` attribute. - -- `buildGoModule` now passes environment variables via the `env` attribute. `CGO_ENABLED` should now be specified with `env.CGO_ENABLED` when passing to buildGoModule. Direct specification of `CGO_ENABLED` is now redirected by a compatibility layer with a warning, but will become an error in future releases. - - Go-related environment variables previously shadowed by `buildGoModule` now results in errors when specified directly. Such variables include `GOOS` and `GOARCH`. - - Third-party projects supporting both stable and unstable channels could detect this change through the absence of the `CGO_ENABLED` function argument in `buildGoModule` (`!((lib.functionArgs buildGoModule) ? CGO_ENABLED)`). - -- `buildGoPackage` has been removed. Use `buildGoModule` instead. See the [Go section in the nixpkgs manual](https://nixos.org/manual/nixpkgs/unstable/#sec-language-go) for details. - -- top-level `playwright` now refers to the github Microsoft/playwright package - instead of the python tester launcher. You can still refer to the python - launcher via `python3Packages.toPythonApplication python3Packages.playwright` - -- The representation of the flags attributes as shell/environment variables for most Python building setup hooks are now the same as `stdenv.mkDerivation` and other build helpers -- they are space-separated environment variables when `__structuredAttrs = false` and Bash arrays when `__structuredAttrs = true`, and are concatenated to the command without Bash-evaluation. The following behaviour changes are introduced during the conversion: - - - The following flags are no longer Bash-expanded before concatenated to the command: - - `disabledTests` and `disabledTestPaths` for `pytestCheckHook`. (`disabledTestPaths` used to be expanded twice before concatenation.) - - `setupPyBuildFlags` and `setupPyGlobalFlags` for `setuptoolsBuildHook`. - - - `pytestFlags` and `unittestFlags` replace `pytestFlagsArray` and `unittestFlagsArray` and become the new and conforming interface. - - - `pytestFlagsArray` and `unittestFlagsArray` are kept for compatibility purposes. They continue to be Bash-expanded before concatenated. This compatibility layer will be removed in future releases. - -- The `haka` package and module has been removed because the package was broken and unmaintained for 9 years. - -- `strawberry` has been updated to 1.2, which drops support for the VLC backend and Qt 5. The `strawberry-qt5` package - and `withGstreamer`/`withVlc` override options have been removed due to this. - -- `nezha` and its agent `nezha-agent` have been updated to v1, which contains breaking changes. See the [official wiki](https://nezha.wiki/en_US/) for more details. - -- `ps3-disc-dumper` was updated to 4.2.5, which removed the CLI project and now exclusively offers the GUI - - [](#opt-services.nextcloud.config.dbtype) is unset by default, the previous default was `sqlite`. This was done because `sqlite` is not a reasonable default since it's [not recommended by upstream](https://docs.nextcloud.com/server/30/admin_manual/installation/system_requirements.html) @@ -304,13 +234,6 @@ - `services.paperless` now installs `paperless-manage` as a normal system package instead of creating a symlink in `/var/lib/paperless`. `paperless-manage` now also changes to the appropriate user when being executed. -- `kmonad` is now hardened by default using common `systemd` settings. - If KMonad is used to execute shell commands, hardening may make some of them fail. In that case, you can disable hardening using {option}`services.kmonad.keyboards..enableHardening` option. - -- `isd` was updated from 0.2.0 to 0.5.1, the new version may crash with a previously generated config, try moving or deleting `~/.config/isd/schema.json`. - -- `uwsgi` no longer supports Python 2 plugins. - - `asusd` has been upgraded to version 6 which supports multiple aura devices. To account for this, the single `auraConfig` configuration option has been replaced with `auraConfigs` which is an attribute set of config options per each device. The config files may also be now specified as either source files or text strings; to account for this you will need to specify that `text` is used for your existing configs, e.g.: ```diff -services.asusd.asusdConfig = '''file contents''' @@ -323,18 +246,10 @@ After you run ALTER EXTENSION, you must run [this SQL script](https://github.com/timescale/timescaledb-extras/blob/master/utils/2.15.X-fix_hypertable_foreign_keys.sql). For more details, see the following pull requests [#6797](https://github.com/timescale/timescaledb/pull/6797). PostgreSQL 13 is no longer supported in TimescaleDB v2.16. -- Support for CUDA 10 has been dropped, as announced in the 24.11 release notes. - - `virtualisation/azure-common.nix`'s filesystem and grub configurations have been moved to `virtualisation/azure-image.nix`. This makes `azure-common.nix` more generic so it could be used for users who generate Azure image using other methods (e.g. nixos-generators and disko). For existing users depending on these configurations, please also import `azure-image.nix`. - `zammad` has had its support for MySQL removed, since it was never working correctly and is now deprecated upstream. Check the [migration guide](https://docs.zammad.org/en/latest/appendix/migrate-to-postgresql.html) for how to convert your database to PostgreSQL. -- `mepo` was updated to version 1.3.3. The manual page was removed, - a new JSON API was introduced to replace Mepolang for configuration, - and a few default key bindings were changed. - See the [1.3.0 changelog](https://git.sr.ht/~mil/mepo/refs/1.3.0) - for more details. - - `tauon` 7.9.0+ when launched for the first time, migrates its database to a new schema that is not backwards compatible. Older versions will refuse to start at all with that database afterwards. If you need to still use older tauon versions, make sure to back up `~/.local/share/TauonMusicBox`. - The `earlyoom` service is now using upstream systemd service, which enables @@ -346,126 +261,27 @@ word-breaking. So you want to write `extraArgs = [ "--prefer" "spaced pat" ]` rather than previous `extraArgs = [ "--prefer 'spaced pat'" ]`. -- `mkBinaryCache` now defaults to using `zstd` compression for the binary caches it creates. The previous `xz` compression method can be used by passing `compression = "xz";`. - -- `nodePackages."@commitlint/config-conventional"` has been removed, as it is a library, and projects should depend on it instead. - -- zigbee2mqtt is now available in version 2.x as `zigbee2mqtt_2`. In NixOS 25.11 we'll remove `zigbee2mqtt_1` and default to `zigbee2mqtt_2`. See the [breaking changes](https://github.com/Koenkk/zigbee2mqtt/discussions/24198) announcement for 2.0.0. - -- `nodePackages.vls` has been deprecated, as the upstream consumer of it, vetur, has been deprecated by upstream. Upstream suggests migrating to Volar for Vue LSP tooling instead. - -- `nodePackages.create-react-native-app` has been removed, as it is deprecated. Upstream suggests using a framework for React Native apps instead. - -- `nodePackages.insect` has been removed, as it's deprecated by upstream. The suggested replacement is `numbat`. - -- `nodePackages.webpack-dev-server` has been removed, as it should be installed in projects that use it instead. - -- `nodePackages.copy-webpack-plugin` has been removed, as it should be installed in projects that use it instead. - -- `himalaya` has been updated from `v1.0.0-beta.4` to `v1.1.0`, which introduces breaking changes. Check out the [release notes](https://github.com/pimalaya/himalaya/releases) for details. - -- `linuxPackages.nvidiaPackages.dc_520` has been removed since it is marked broken and there are better newer alternatives. - -- `pnpm` was updated to version 10. If your project is incompatible, you can install the previous version from the package attribute `pnpm_9`. - -- `zig_0_9` and `zig_0_10` have been removed, you should upgrade to `zig_0_13` (also available as just `zig`), `zig_0_12` or `zig_0_11` instead. - -- `webpack-cli` was updated to major version 6, which has breaking changes from the previous version 5.1.4. See the [upstream release notes](https://github.com/webpack/webpack-cli/releases/tag/webpack-cli%406.0.0) for details on these changes. - - `programs.less.lessopen` is now null by default. To restore the previous behaviour, set it to `''|${lib.getExe' pkgs.lesspipe "lesspipe.sh"} %s''`. - `hardware.pulseaudio` has been renamed to `services.pulseaudio`. The deprecated option names will continue to work, but causes a warning. - `services.nextcloud` now uses systemd's credential mechanism to read in secret files. The `nextcloud-occ` wrapper script implements this using `systemd-run`, as such it now also requires root privileges or `$CREDENTIALS_DIRECTORY` set where running it as user `nextcloud` was enough previously. -- `minetest` has been renamed to `luanti` to match the upstream name change but aliases have been added. The new name hasn't resulted in many changes as of yet but older references to minetest should be sunset. See the [new name announcement](https://blog.minetest.net/2024/10/13/Introducing-Our-New-Name/) for more details. - -- `poac` has been renamed to `cabinpkg` to match the upstream name change but an alias has been added. See the [new name announcement](https://github.com/orgs/cabinpkg/discussions/1052) for more details. - -- `serious-sans` has been removed because upstream changed its name to Serious Shanns, which is not currently packaged. - -- `racket_7_9` has been removed, as it is insecure. It is recommended to use Racket 8 instead. - - `services.mongodb.initialRootPassword` has been replaced with the more secure option [`services.mongodb.initialRootPasswordFile`](#opt-services.mongodb.initialRootPasswordFile) -- `rofi` has been updated from 1.7.5 to 1.7.6 which introduces some breaking changes to binary plugins, and also contains a lot of new features and bug fixes. This is highlighted because the patch version bump does not indicate the volume of changes by itself. See the [upstream release notes](https://github.com/davatorium/rofi/releases/tag/1.7.6) for the full list of changes. - -- `ente-auth` now uses the name `enteauth` for its binary. The previous name was `ente_auth`. - -- `foundationdb` was upgraded to 7.3. - -- `fluxus` has been removed, as it depends on `racket_7_9` and had no updates in 9 years. - -- `sm64ex-coop` has been removed as it was archived upstream. Consider migrating to `sm64coopdx`. - -- `tldr` now uses [`tldr-python-client`](https://github.com/tldr-pages/tldr-python-client) instead of [`tldr-c-client`](https://github.com/tldr-pages/tldr-c-client) which is unmaintained. - - `services.bird2` has been renamed to `services.bird` and the default bird package has been switched to `bird3`. `bird2` can still be chosen via the `services.bird.package` option. -- `renovate` was updated to v39. See the [upstream release notes](https://docs.renovatebot.com/release-notes-for-major-versions/#version-39) for breaking changes. - Like upstream's docker images, renovate now runs on NodeJS 22. - -- The behavior of the `networking.nat.externalIP` and `networking.nat.externalIPv6` options has been changed. `networking.nat.forwardPorts` now only forwards packets destined for the specified IP addresses. - -- `python3Packages.bpycv` has been removed due to being incompatible with Blender 4 and unmaintained. - -- `python3Packages.jaeger-client` was removed because it was deprecated upstream. [OpenTelemetry](https://opentelemetry.io) is the recommended replacement. - -- `nodePackages.meshcommander` has been removed, as the package was deprecated by Intel. - -- The default version of `z3` has been updated from 4.8 to 4.13. There are still a few packages that need specific older versions; those will continue to be maintained as long as other packages depend on them but may be removed in the future. - -- `prometheus` has been updated from 2.55.0 to 3.1.0. - Read the [release blog post](https://prometheus.io/blog/2024/11/14/prometheus-3-0/) and - [migration guide](https://prometheus.io/docs/prometheus/3.1/migration/). - -- `kanata` was updated to v1.8.0, which introduces several breaking changes. - See the release notes of - [v1.7.0](https://github.com/jtroo/kanata/releases/tag/v1.7.0) and - [v1.8.0](https://github.com/jtroo/kanata/releases/tag/v1.8.0) - for more information. - -- `authelia` version 4.39.0 has made changes on the default claims for ID Tokens, to mirror the standard claims from the specification. - This change may affect some clients in unexpected ways, so manual intervention may be required. - Read the [release notes](https://www.authelia.com/blog/4.39-release-notes/), along with [the guide](https://www.authelia.com/integration/openid-connect/openid-connect-1.0-claims/#restore-functionality-prior-to-claims-parameter) to work around issues that may be encountered. - -- `ags` was updated to v2, which is just a CLI for Astal now. Components are available as a different package set `astal.*`. - If you want to use v1, it is available as `ags_1` package. - - See the release notes of - [v2.0.0](https://github.com/Aylur/ags/releases/tag/v2.0.0) - for more information. - -- `nodePackages.expo-cli` has been removed, as it was deprecated by upstream. The suggested replacement is the `npx expo` command. - - DokuWiki with the Caddy webserver (`services.dokuwiki.webserver = "caddy"`) now sets up sites with Caddy's automatic HTTPS instead of HTTP-only. To keep the old behavior for a site `example.com`, set `services.caddy.virtualHosts."example.com".hostName = "http://example.com"`. If you set custom Caddy options for a DokuWiki site, migrate these options by removing `http://` from `services.caddy.virtualHosts."http://example.com"`. -- `open-policy-agent` has has been updated to 1.0.0+. - This major release makes the `rego.v1` syntax the default. - This is a breaking change for those using v0 Rego. - See the [upgrade documentation](https://www.openpolicyagent.org/docs/v1.0.1/v0-upgrade/) for more details. - For those unable to upgrade yet, there is a [v0 compatibility mode](https://www.openpolicyagent.org/docs/v1.0.1/v0-compatibility/) - available too. - - Wordpress with the Caddy webserver (`services.wordpress.webserver = "caddy"`) now sets up sites with Caddy's automatic HTTPS instead of HTTP-only. Given a site example.com, http://example.com now 301 redirects to https://example.com. To keep the old behavior for a site `example.com`, set `services.caddy.virtualHosts."example.com".hostName = "http://example.com"`. -- `vscode-utils.buildVscodeExtension` now requires pname as an argument - - The behavior of `services.hostapd.radios..networks..authentication.enableRecommendedPairwiseCiphers` was changed to not include `CCMP-256` anymore. Since all configured pairwise ciphers have to be supported by the radio, this caused startup failures on many devices which is hard to debug in hostapd. -- `nerdfonts` has been separated into individual font packages under the namespace `nerd-fonts`. The directories for font - files have changed from `$out/share/fonts/{opentype,truetype}/NerdFonts` to - `$out/share/fonts/{opentype,truetype}/NerdFonts/`, where `` can be found in the - [official website](https://www.nerdfonts.com/font-downloads) as the titles in preview images, with the "Nerd Font" - suffix and any whitespaces trimmed. Configuration changes are required, see build output. - -- `retroarch` has been refactored and the older `retroarch.override { cores = [ ... ]; }` to create a RetroArch derivation with custom cores doesn't work anymore, use `retroarch.withCores (cores: [ ... ])` instead. If you need more customization (e.g.: custom settings), use `wrapRetroArch` instead. - - `gkraken` software and `hardware.gkraken.enable` option have been removed, use `coolercontrol` via `programs.coolercontrol.enable` option instead. - To avoid delaying user logins unnecessarily the `multi-user.target` is no longer ordered after `network-online.target`. @@ -484,34 +300,14 @@ +extraCreateArgs+=("--exclude" "/some/path") ``` -- `borgmatic` has been updated from 1.8.14 to 1.9.5, please check the [upstream changelog](https://projects.torsion.org/borgmatic-collective/borgmatic/releases) for more details, especially for a few possibly breaking changes noted in the [1.9.0 changelog](https://projects.torsion.org/borgmatic-collective/borgmatic/releases/tag/1.9.0). - - `programs.xonsh.package` now gets overrided internally with `extraPackages` to support `programs.xonsh.extraPackages`. See `programs.xonsh.extraPackages` for more details. -- `nodePackages.ganache` has been removed, as the package has been deprecated by upstream. - - `services.nitter.guestAccounts` has been renamed to `services.nitter.sessionsFile`, for consistency with upstream. The file format is unchanged. - `virtualisation.azure.agent` option provided by `azure-agent.nix` is replaced by `services.waagent`, and will be removed in a future release. -- `matomo` now defaults to version 5 (previously available as `matomo_5`). Version 4 has been removed as it reached EOL on December 19, 2024. - -- `matomo-beta` has been removed as the version of the `matomo` package can now be easily overridden through `overrideAttrs` (see [PR #374022](https://github.com/NixOS/nixpkgs/pull/374022)) - -- `docker_24` has been removed, as it was EOL with vulnerabilities since June 08, 2024. - -- Emacs 28 and 29 have been removed. - -- `containerd` has been updated to v2, which contains breaking changes. See the [containerd - 2.0](https://github.com/containerd/containerd/blob/main/docs/containerd-2.0.md) documentation for more - details. - - The ZFS import service now respects `fileSystems.*.options = [ "noauto" ];` and does not add that pool's import service to `zfs-import.target`, meaning it will not be automatically imported at boot. -- `nodePackages.stackdriver-statsd-backend` has been removed, as the StackDriver service has been discontinued by Google, and therefore the package no longer works. - -- `python3Packages.opentracing` has been removed due to being unmaintained upstream. [OpenTelemetry](https://opentelemetry.io/) is the recommended replacement. - - Default file names of images generated by several builders in `system.build` have been changed as outlined in the table below. Names are now known at evaluation time and customizable via the new options `image.baseName`, `image.extension`, `image.fileName` and `image.filePath` with the latter returning a path relative to the derivations out path (e.g. `iso/${image.fileName` for iso images). @@ -543,40 +339,9 @@ - `services.graylog.package` now defaults to `graylog-6_0` as previous default `graylog-5_1` is EOL and therefore removed. Check the migration guides on [5.1→5.2](https://go2docs.graylog.org/5-2/upgrading_graylog/upgrading_to_graylog_5.2.x.htm) and [5.2→6.0](https://go2docs.graylog.org/6-0/upgrading_graylog/upgrading_to_graylog_6.0.x.html) for breaking changes. -- the notmuch vim plugin now lives in a separate output of the `notmuch` - package. Installing `notmuch` will not bring the notmuch vim package anymore, - add `vimPlugins.notmuch-vim` to your (Neo)vim configuration if you want the - vim plugin. - -- `prisma` and `prisma-engines` have been updated to version 6.3.0, which - introduces several breaking changes. See the - [Prisma ORM upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6) - for more information. - -- `depdendency-track` no longer bundes the UI inside the jar. This bundling - functionality is deprecated by upstream and causes UI assets not being served - after weeks of runtime. - -- `nq` was updated to 1.0, which renames the `fq` and `tq` utilities to `nqtail` and `nqterm` respectively. - -- `zf` was updated to 0.10.2, which includes breaking changes from the [0.10.0 release](https://github.com/natecraddock/zf/releases/tag/0.10.0). - `zf` no longer does Unicode normalization of the input and no longer supports terminal escape sequences in the `ZF_PROMPT` environment variable. - `programs.clash-verge.tunMode` was deprecated and removed because now service mode is necessary to start program. Without `programs.clash-verge.enable`, clash-verge-rev will refuse to start. -- `confluent-cli` was updated from 3.60.0 to 4.16.0, which includes several breaking changes as detailed in [Confluent's release notes](https://docs.confluent.io/confluent-cli/current/release-notes.html). - -- `siduck76-st` has been renamed to `st-snazzy`, like the project's [flake](https://github.com/siduck/st/blob/main/flake.nix). - -- `python3Packages.jax` now directly depends on `python3Packages.jaxlib`. - As a result, packages that depend on jax no longer need to include jaxlib to their dependencies. - There is also a breaking change in the handling of CUDA. Instead of using a CUDA compatible jaxlib - as before, you can use plugins like `python3Packages.jax-cuda12-plugin`. - -- `services.rippled` has been removed, as `rippled` was broken and had not been updated since 2022. - -- `services.rippleDataApi` has been removed, as `ripple-data-api` was broken and had not been updated since 2022. - - `services.netbird.tunnels` was renamed to [`services.netbird.clients`](#opt-services.netbird.clients), hardened (using dedicated less-privileged users) and significantly extended. @@ -604,7 +369,6 @@ - [`system.stateVersion`](#opt-system.stateVersion) is now validated and must be in the `"YY.MM"` format, ideally corresponding to a prior NixOS release. -- GOverlay has been updated to 1.2, please check the [upstream changelog](https://github.com/benjamimgois/goverlay/releases) for more details. - [`services.geoclue2`](#opt-services.geoclue2.enable) now has an `enableStatic` option, which allows the NixOS configuration to specify a fixed location for GeoClue to use. @@ -630,10 +394,6 @@ - The Home Assistant module has new options {option}`services.home-assistant.blueprints.automation`, `services.home-assistant.blueprints.script`, and {option}`services.home-assistant.blueprints.template` that allow for the declarative installation of [blueprints](https://www.home-assistant.io/docs/blueprint/) into the appropriate configuration directories. -- For matrix homeserver Synapse we are now following the upstream recommendation to enable jemalloc as the memory allocator by default. - -- In `dovecot` package removed hard coding path to module directory. - - `services.dovecot2.modules` have been removed, now need to use `environment.systemPackages` to load additional Dovecot modules. - `services.kmonad` now creates a determinate symlink (in `/dev/input/by-id/`) to each of KMonad virtual devices. @@ -692,12 +452,8 @@ - `programs.fzf.keybindings` now supports the fish shell. -- `gerbera` now has wavpack support. - - A toggle has been added under `users.users..enable` to allow toggling individual users conditionally. If set to false, the user account will not be created. -- `ddclient` was updated from 3.11.2 to 4.0.0 [Release notes](https://github.com/ddclient/ddclient/releases/tag/v4.0.0) - ```{=include=} sections From 607c9a05e5ae3d349d46748531b59cf1d905544c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 1 Apr 2025 07:24:42 +0000 Subject: [PATCH 36/46] nezha-theme-nazhua: 0.6.0 -> 0.6.3 --- pkgs/by-name/ne/nezha-theme-nazhua/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ne/nezha-theme-nazhua/package.nix b/pkgs/by-name/ne/nezha-theme-nazhua/package.nix index bef2b7d4f4cc..de3d0de67321 100644 --- a/pkgs/by-name/ne/nezha-theme-nazhua/package.nix +++ b/pkgs/by-name/ne/nezha-theme-nazhua/package.nix @@ -12,13 +12,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "nezha-theme-nazhua"; - version = "0.6.0"; + version = "0.6.3"; src = fetchFromGitHub { owner = "hi2shark"; repo = "nazhua"; tag = "v${finalAttrs.version}"; - hash = "sha256-LxQkqLA2FUtuOMF7aRqUKZgRazqFEr3JrykJubMEUd0="; + hash = "sha256-0tbCNj6kglI3/y4e1pp0J3Tw7rrNhaqIRHoM7mFPCow="; }; yarnOfflineCache = fetchYarnDeps { From 66bfee6a12f5ef72e4d57ce5c44426a48b26dfcf Mon Sep 17 00:00:00 2001 From: FliegendeWurst Date: Tue, 1 Apr 2025 09:42:25 +0200 Subject: [PATCH 37/46] aider-chat: fix definition --- .../python-modules/aider-chat/default.nix | 123 +++++++++++++++++- pkgs/top-level/all-packages.nix | 12 +- 2 files changed, 122 insertions(+), 13 deletions(-) diff --git a/pkgs/development/python-modules/aider-chat/default.nix b/pkgs/development/python-modules/aider-chat/default.nix index 9995b8526247..5cd871b868d3 100644 --- a/pkgs/development/python-modules/aider-chat/default.nix +++ b/pkgs/development/python-modules/aider-chat/default.nix @@ -1,13 +1,117 @@ { lib, stdenv, - python312, + buildPythonPackage, fetchFromGitHub, gitMinimal, portaudio, playwright-driver, symlinkJoin, nltk-data, + pythonOlder, + pythonAtLeast, + setuptools-scm, + aiohappyeyeballs, + aiohttp, + aiosignal, + annotated-types, + anyio, + attrs, + backoff, + beautifulsoup4, + certifi, + cffi, + charset-normalizer, + click, + configargparse, + diff-match-patch, + diskcache, + distro, + filelock, + flake8, + frozenlist, + fsspec, + gitdb, + gitpython, + grep-ast, + h11, + httpcore, + httpx, + huggingface-hub, + idna, + importlib-resources, + jinja2, + jiter, + json5, + jsonschema, + jsonschema-specifications, + litellm, + markdown-it-py, + markupsafe, + mccabe, + mdurl, + multidict, + networkx, + numpy, + openai, + packaging, + pathspec, + pexpect, + pillow, + prompt-toolkit, + psutil, + ptyprocess, + pycodestyle, + pycparser, + pydantic, + pydantic-core, + pydub, + pyflakes, + pygments, + pypandoc, + pyperclip, + python-dotenv, + pyyaml, + referencing, + regex, + requests, + rich, + rpds-py, + scipy, + smmap, + sniffio, + sounddevice, + socksio, + soundfile, + soupsieve, + tiktoken, + tokenizers, + tqdm, + tree-sitter, + tree-sitter-language-pack, + typing-extensions, + typing-inspection, + urllib3, + watchfiles, + wcwidth, + yarl, + zipp, + pip, + mixpanel, + monotonic, + posthog, + propcache, + python-dateutil, + pytestCheckHook, + greenlet, + playwright, + pyee, + streamlit, + llama-index-core, + llama-index-embeddings-huggingface, + torch, + nltk, + boto3, }: let @@ -19,13 +123,15 @@ let ]; }; - python3 = python312; version = "0.80.0"; - aider-chat = python3.pkgs.buildPythonPackage { + aider-chat = buildPythonPackage { pname = "aider-chat"; inherit version; pyproject = true; + # needs exactly Python 3.12 + disabled = pythonOlder "3.12" || pythonAtLeast "3.13"; + src = fetchFromGitHub { owner = "Aider-AI"; repo = "aider"; @@ -35,9 +141,9 @@ let pythonRelaxDeps = true; - build-system = with python3.pkgs; [ setuptools-scm ]; + build-system = [ setuptools-scm ]; - dependencies = with python3.pkgs; [ + dependencies = [ aiohappyeyeballs aiohttp aiosignal @@ -135,7 +241,10 @@ let buildInputs = [ portaudio ]; - nativeCheckInputs = (with python3.pkgs; [ pytestCheckHook ]) ++ [ gitMinimal ]; + nativeCheckInputs = [ + pytestCheckHook + gitMinimal + ]; disabledTestPaths = [ # Tests require network access @@ -182,7 +291,7 @@ let export AIDER_ANALYTICS="false" ''; - optional-dependencies = with python3.pkgs; { + optional-dependencies = { playwright = [ greenlet playwright diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7bef38df1bed..9d428a4cc1eb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -170,17 +170,17 @@ with pkgs; } ../build-support/setup-hooks/add-bin-to-path.sh ) { }; - aider-chat = with python3Packages; toPythonApplication aider-chat; + aider-chat = with python312Packages; toPythonApplication aider-chat; - aider-chat-with-playwright = with python3Packages; toPythonApplication (aider-chat.withOptional { withPlaywright = true; }); + aider-chat-with-playwright = with python312Packages; toPythonApplication (aider-chat.withOptional { withPlaywright = true; }); - aider-chat-with-browser = with python3Packages; toPythonApplication (aider-chat.withOptional { withBrowser = true; }); + aider-chat-with-browser = with python312Packages; toPythonApplication (aider-chat.withOptional { withBrowser = true; }); - aider-chat-with-help = with python3Packages; toPythonApplication (aider-chat.withOptional { withHelp = true; }); + aider-chat-with-help = with python312Packages; toPythonApplication (aider-chat.withOptional { withHelp = true; }); - aider-chat-with-bedrock = with python3Packages; toPythonApplication (aider-chat.withOptional { withBedrock = true; }); + aider-chat-with-bedrock = with python312Packages; toPythonApplication (aider-chat.withOptional { withBedrock = true; }); - aider-chat-full = with python3Packages; toPythonApplication (aider-chat.withOptional { withAll = true; }); + aider-chat-full = with python312Packages; toPythonApplication (aider-chat.withOptional { withAll = true; }); autoreconfHook = callPackage ( { makeSetupHook, autoconf, automake, gettext, libtool }: From 4b8d970047a705a59b735fdedc8cad38a089fd0b Mon Sep 17 00:00:00 2001 From: Jost Alemann Date: Tue, 1 Apr 2025 10:01:01 +0200 Subject: [PATCH 38/46] yt-dlp: 2025.3.27 -> 2025.3.31 Changelog: https://github.com/yt-dlp/yt-dlp/releases/tag/2025.03.31 Diff: https://github.com/yt-dlp/yt-dlp/compare/2025.03.27...2025.03.31 --- pkgs/by-name/yt/yt-dlp/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/yt/yt-dlp/package.nix b/pkgs/by-name/yt/yt-dlp/package.nix index 59b89a61cff1..00619fdb303c 100644 --- a/pkgs/by-name/yt/yt-dlp/package.nix +++ b/pkgs/by-name/yt/yt-dlp/package.nix @@ -17,13 +17,13 @@ python3Packages.buildPythonApplication rec { # The websites yt-dlp deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported # to the latest stable release. - version = "2025.3.27"; + version = "2025.3.31"; pyproject = true; src = fetchPypi { inherit version; pname = "yt_dlp"; - hash = "sha256-MMsHj4A7U5sqZlIcXshtMowH90rsqUQAaeWGGcKZzxU="; + hash = "sha256-G/4OZg0acKCeJ7LVj5LjCx4uNizEh4KfL4JDRq5J+5E="; }; build-system = with python3Packages; [ From d9196be0b62016caff762f47cbdc8fe30c04021a Mon Sep 17 00:00:00 2001 From: eljamm Date: Sun, 30 Mar 2025 22:08:13 +0200 Subject: [PATCH 39/46] linux_xanmod: 6.12.20 -> 6.12.21 --- pkgs/os-specific/linux/kernel/xanmod-kernels.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix index 2619198af4c6..59cc2b069028 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -14,8 +14,8 @@ let # kernel config in the xanmod version commit variants = { lts = { - version = "6.12.20"; - hash = "sha256-Fvm17GIaGnNfWShh9fX4XK2ovAS6XMx7cHb1u9bET8E="; + version = "6.12.21"; + hash = "sha256-Zb/n+hLho94+6u5BHAmRYfit/kv1xlh/Tp39kI3kfjA="; }; main = { version = "6.13.8"; From bcd47211445d025aa7f2a649e29d6c35b5d6d4f1 Mon Sep 17 00:00:00 2001 From: eljamm Date: Sun, 30 Mar 2025 22:08:32 +0200 Subject: [PATCH 40/46] linux_xanmod_latest: 6.13.8 -> 6.13.9 --- pkgs/os-specific/linux/kernel/xanmod-kernels.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix index 59cc2b069028..552e70a547b5 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -18,8 +18,8 @@ let hash = "sha256-Zb/n+hLho94+6u5BHAmRYfit/kv1xlh/Tp39kI3kfjA="; }; main = { - version = "6.13.8"; - hash = "sha256-2Q3Yl/dKmkRRU4PruFA5bZrHAiySApvaqpxlZ/qECg0="; + version = "6.13.9"; + hash = "sha256-JRmyvlvU8NOQ4aLdZ2BmQWUnl1RGjcjucaWN4zVxQpg="; }; }; From c966955db13ed1cdcfaa2b9fb9dfee878a9a97be Mon Sep 17 00:00:00 2001 From: Louis Thevenet Date: Tue, 1 Apr 2025 11:07:12 +0200 Subject: [PATCH 41/46] television: 0.11.14 -> 0.11.15 --- pkgs/by-name/te/television/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/te/television/package.nix b/pkgs/by-name/te/television/package.nix index a24ffefc146e..c2b2c251236d 100644 --- a/pkgs/by-name/te/television/package.nix +++ b/pkgs/by-name/te/television/package.nix @@ -8,17 +8,17 @@ }: rustPlatform.buildRustPackage rec { pname = "television"; - version = "0.11.4"; + version = "0.11.5"; src = fetchFromGitHub { owner = "alexpasmantier"; repo = "television"; tag = version; - hash = "sha256-We8e61gQu7xOdfxI8BVHMyEXVQ83/r/h/olT8193k98="; + hash = "sha256-2Yt98ZtoTHqCtyqGuPL583NBe2CHI+9PIyO0fnonM4E="; }; useFetchCargoVendor = true; - cargoHash = "sha256-5KLsHgPgbly9rAet259NA6k/Iuwa8SucIRUKU+gybiI="; + cargoHash = "sha256-+T/WC7jq6qra9qxQ+mR929LQavETHTtAGHKWm81cwNU="; passthru = { tests.version = testers.testVersion { From 51dc1633648e18eb4d094a6bcec7d00cfbff3ecd Mon Sep 17 00:00:00 2001 From: John Titor <50095635+JohnRTitor@users.noreply.github.com> Date: Sat, 29 Mar 2025 07:39:04 +0530 Subject: [PATCH 42/46] nixos/ananicy: re enable BPF on hardened kernels This was a workaround to begin with, as hardened kernel didn't support tracing. Back then kernel level tracing was only available through debugfs, and now that tracefs has been available on NixOS for a while now, enabled in Link: https://github.com/NixOS/nixpkgs/pull/388751 This workaround can be removed and bpf can be used with tracefs. Link: https://github.com/NixOS/nixpkgs/issues/360957 Signed-off-by: John Titor <50095635+JohnRTitor@users.noreply.github.com> --- nixos/modules/services/misc/ananicy.nix | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/nixos/modules/services/misc/ananicy.nix b/nixos/modules/services/misc/ananicy.nix index bb3e63e2134a..38f16d99bb4b 100644 --- a/nixos/modules/services/misc/ananicy.nix +++ b/nixos/modules/services/misc/ananicy.nix @@ -19,12 +19,6 @@ let ); servicename = if ((lib.getName cfg.package) == (lib.getName pkgs.ananicy-cpp)) then "ananicy-cpp" else "ananicy"; - # Ananicy-CPP with BPF is not supported on hardened kernels https://github.com/NixOS/nixpkgs/issues/327382 - finalPackage = - if (servicename == "ananicy-cpp" && config.boot.kernelPackages.isHardened) then - (cfg.package.override { withBpf = false; }) - else - cfg.package; in { options.services.ananicy = { @@ -113,7 +107,7 @@ in config = lib.mkIf cfg.enable { environment = { - systemPackages = [ finalPackage ]; + systemPackages = [ cfg.package ]; etc."ananicy.d".source = pkgs.runCommand "ananicyfiles" { @@ -170,7 +164,7 @@ in ); systemd = { - packages = [ finalPackage ]; + packages = [ cfg.package ]; services."${servicename}" = { wantedBy = [ "default.target" ]; }; From 209baee20b78ab3795c1b3f661563ba7976aa3cb Mon Sep 17 00:00:00 2001 From: Piotr Kwiecinski <2151333+piotrkwiecinski@users.noreply.github.com> Date: Mon, 31 Mar 2025 22:43:40 +0200 Subject: [PATCH 43/46] nixosTests.doas: migrate to runTest Part of #386873 --- nixos/tests/all-tests.nix | 2 +- nixos/tests/doas.nix | 264 +++++++++++++++++++------------------- 2 files changed, 132 insertions(+), 134 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 6fcb9eb7c518..553f1758f018 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -330,7 +330,7 @@ in { discourse = handleTest ./discourse.nix {}; dnscrypt-proxy2 = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy2.nix {}; dnsdist = import ./dnsdist.nix { inherit pkgs runTest; }; - doas = handleTest ./doas.nix {}; + doas = runTest ./doas.nix; docker = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker.nix {}; docker-rootless = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker-rootless.nix {}; docker-registry = handleTest ./docker-registry.nix {}; diff --git a/nixos/tests/doas.nix b/nixos/tests/doas.nix index 75c7f3467352..7ba4164d9b72 100644 --- a/nixos/tests/doas.nix +++ b/nixos/tests/doas.nix @@ -1,153 +1,151 @@ # Some tests to ensure doas is working properly. -import ./make-test-python.nix ( - { lib, ... }: - { - name = "doas"; - meta.maintainers = with lib.maintainers; [ cole-h ]; +{ lib, ... }: +{ + name = "doas"; + meta.maintainers = with lib.maintainers; [ cole-h ]; - nodes.machine = - { ... }: - { - users.groups = { - foobar = { }; - barfoo = { }; - baz = { - gid = 1337; - }; + nodes.machine = + { ... }: + { + users.groups = { + foobar = { }; + barfoo = { }; + baz = { + gid = 1337; }; - users.users = { - test0 = { - isNormalUser = true; - extraGroups = [ "wheel" ]; - }; - test1 = { - isNormalUser = true; - }; - test2 = { - isNormalUser = true; - extraGroups = [ "foobar" ]; - }; - test3 = { - isNormalUser = true; - extraGroups = [ "barfoo" ]; - }; - test4 = { - isNormalUser = true; - extraGroups = [ "baz" ]; - }; - test5 = { - isNormalUser = true; - }; - test6 = { - isNormalUser = true; - }; - test7 = { - isNormalUser = true; - }; + }; + users.users = { + test0 = { + isNormalUser = true; + extraGroups = [ "wheel" ]; }; - - security.doas = { - enable = true; - wheelNeedsPassword = false; - - extraRules = [ - { - users = [ "test1" ]; - groups = [ "foobar" ]; - } - { - users = [ "test2" ]; - noPass = true; - setEnv = [ - "CORRECT" - "HORSE=BATTERY" - ]; - } - { - groups = [ - "barfoo" - 1337 - ]; - noPass = true; - } - { - users = [ "test5" ]; - noPass = true; - keepEnv = true; - runAs = "test1"; - } - { - users = [ "test6" ]; - noPass = true; - keepEnv = true; - setEnv = [ "-STAPLE" ]; - } - { - users = [ "test7" ]; - noPass = true; - setEnv = [ "-SSH_AUTH_SOCK" ]; - } - ]; + test1 = { + isNormalUser = true; + }; + test2 = { + isNormalUser = true; + extraGroups = [ "foobar" ]; + }; + test3 = { + isNormalUser = true; + extraGroups = [ "barfoo" ]; + }; + test4 = { + isNormalUser = true; + extraGroups = [ "baz" ]; + }; + test5 = { + isNormalUser = true; + }; + test6 = { + isNormalUser = true; + }; + test7 = { + isNormalUser = true; }; }; - testScript = '' - with subtest("users in wheel group should have passwordless doas"): - machine.succeed('su - test0 -c "doas -u root true"') + security.doas = { + enable = true; + wheelNeedsPassword = false; - with subtest("test1 user should not be able to use doas without password"): - machine.fail('su - test1 -c "doas -n -u root true"') + extraRules = [ + { + users = [ "test1" ]; + groups = [ "foobar" ]; + } + { + users = [ "test2" ]; + noPass = true; + setEnv = [ + "CORRECT" + "HORSE=BATTERY" + ]; + } + { + groups = [ + "barfoo" + 1337 + ]; + noPass = true; + } + { + users = [ "test5" ]; + noPass = true; + keepEnv = true; + runAs = "test1"; + } + { + users = [ "test6" ]; + noPass = true; + keepEnv = true; + setEnv = [ "-STAPLE" ]; + } + { + users = [ "test7" ]; + noPass = true; + setEnv = [ "-SSH_AUTH_SOCK" ]; + } + ]; + }; + }; - with subtest("test2 user should be able to keep some env"): - if "CORRECT=1" not in machine.succeed('su - test2 -c "CORRECT=1 doas env"'): - raise Exception("failed to keep CORRECT") + testScript = '' + with subtest("users in wheel group should have passwordless doas"): + machine.succeed('su - test0 -c "doas -u root true"') - if "HORSE=BATTERY" not in machine.succeed('su - test2 -c "doas env"'): - raise Exception("failed to setenv HORSE=BATTERY") + with subtest("test1 user should not be able to use doas without password"): + machine.fail('su - test1 -c "doas -n -u root true"') - with subtest("users in group 'barfoo' shouldn't require password"): - machine.succeed("doas -u test3 doas -n -u root true") + with subtest("test2 user should be able to keep some env"): + if "CORRECT=1" not in machine.succeed('su - test2 -c "CORRECT=1 doas env"'): + raise Exception("failed to keep CORRECT") - with subtest("users in group 'baz' (GID 1337) shouldn't require password"): - machine.succeed("doas -u test4 doas -n -u root echo true") + if "HORSE=BATTERY" not in machine.succeed('su - test2 -c "doas env"'): + raise Exception("failed to setenv HORSE=BATTERY") - with subtest("test5 user should be able to run commands under test1"): - machine.succeed("doas -u test5 doas -n -u test1 true") + with subtest("users in group 'barfoo' shouldn't require password"): + machine.succeed("doas -u test3 doas -n -u root true") - with subtest("test5 user should not be able to run commands under root"): - machine.fail("doas -u test5 doas -n -u root true") + with subtest("users in group 'baz' (GID 1337) shouldn't require password"): + machine.succeed("doas -u test4 doas -n -u root echo true") - with subtest("test6 user should be able to keepenv"): - envs = ["BATTERY=HORSE", "CORRECT=false"] - out = machine.succeed( - 'su - test6 -c "BATTERY=HORSE CORRECT=false STAPLE=Tr0ub4dor doas env"' - ) + with subtest("test5 user should be able to run commands under test1"): + machine.succeed("doas -u test5 doas -n -u test1 true") - if not all(env in out for env in envs): - raise Exception("failed to keep BATTERY or CORRECT") - if "STAPLE=Tr0ub4dor" in out: - raise Exception("failed to exclude STAPLE") + with subtest("test5 user should not be able to run commands under root"): + machine.fail("doas -u test5 doas -n -u root true") - with subtest("test7 should not have access to SSH_AUTH_SOCK"): - if "SSH_AUTH_SOCK=HOLEY" in machine.succeed( - 'su - test7 -c "SSH_AUTH_SOCK=HOLEY doas env"' - ): - raise Exception("failed to exclude SSH_AUTH_SOCK") + with subtest("test6 user should be able to keepenv"): + envs = ["BATTERY=HORSE", "CORRECT=false"] + out = machine.succeed( + 'su - test6 -c "BATTERY=HORSE CORRECT=false STAPLE=Tr0ub4dor doas env"' + ) - # Test that the doas setuid wrapper precedes the unwrapped version in PATH after - # calling doas. - # The PATH set by doas is defined in - # ../../pkgs/tools/security/doas/0001-add-NixOS-specific-dirs-to-safe-PATH.patch - with subtest("recursive calls to doas from subprocesses should succeed"): - machine.succeed('doas -u test0 sh -c "doas -u test0 true"') + if not all(env in out for env in envs): + raise Exception("failed to keep BATTERY or CORRECT") + if "STAPLE=Tr0ub4dor" in out: + raise Exception("failed to exclude STAPLE") - with subtest("test0 should inherit TERMINFO_DIRS from the user environment"): - dirs = machine.succeed( - "su - test0 -c 'doas -u root $SHELL -c \"echo \$TERMINFO_DIRS\"'" - ) + with subtest("test7 should not have access to SSH_AUTH_SOCK"): + if "SSH_AUTH_SOCK=HOLEY" in machine.succeed( + 'su - test7 -c "SSH_AUTH_SOCK=HOLEY doas env"' + ): + raise Exception("failed to exclude SSH_AUTH_SOCK") - if not "test0" in dirs: - raise Exception(f"user profile TERMINFO_DIRS is not preserved: {dirs}") - ''; - } -) + # Test that the doas setuid wrapper precedes the unwrapped version in PATH after + # calling doas. + # The PATH set by doas is defined in + # ../../pkgs/tools/security/doas/0001-add-NixOS-specific-dirs-to-safe-PATH.patch + with subtest("recursive calls to doas from subprocesses should succeed"): + machine.succeed('doas -u test0 sh -c "doas -u test0 true"') + + with subtest("test0 should inherit TERMINFO_DIRS from the user environment"): + dirs = machine.succeed( + "su - test0 -c 'doas -u root $SHELL -c \"echo \$TERMINFO_DIRS\"'" + ) + + if not "test0" in dirs: + raise Exception(f"user profile TERMINFO_DIRS is not preserved: {dirs}") + ''; +} From 2113a521add267cdc1d40fb6d3fa47bb08a6fd8b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 31 Mar 2025 04:28:04 +0000 Subject: [PATCH 44/46] pyradio: 0.9.3.11.8 -> 0.9.3.11.9 --- pkgs/by-name/py/pyradio/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/py/pyradio/package.nix b/pkgs/by-name/py/pyradio/package.nix index 9f05400d60b1..7c17ff8fc57a 100644 --- a/pkgs/by-name/py/pyradio/package.nix +++ b/pkgs/by-name/py/pyradio/package.nix @@ -7,13 +7,13 @@ python3Packages.buildPythonApplication rec { pname = "pyradio"; - version = "0.9.3.11.8"; + version = "0.9.3.11.9"; src = fetchFromGitHub { owner = "coderholic"; repo = "pyradio"; tag = version; - hash = "sha256-A8H0Jo/iRSxmt+e8aLwZlXGNM+ozajFxFQVM8/zY/Yw="; + hash = "sha256-paDiD47ERcVNQ1iVEKY2xBItFhyedacAAElT0slBYWk="; }; nativeBuildInputs = [ From e34066f045ecb393b587caf821fbdb7a2dae90dd Mon Sep 17 00:00:00 2001 From: John Titor <50095635+JohnRTitor@users.noreply.github.com> Date: Tue, 1 Apr 2025 15:00:56 +0530 Subject: [PATCH 45/46] scilab-bin: fix build Nixpkgs for a while has been checking for broken symlinks, and the result of that is a lot of pacakges like this are broken. For now we disable this checking, it can be safely reverted when updated to version 2025.0.0. Signed-off-by: John Titor <50095635+JohnRTitor@users.noreply.github.com> --- pkgs/by-name/sc/scilab-bin/package.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/by-name/sc/scilab-bin/package.nix b/pkgs/by-name/sc/scilab-bin/package.nix index 9d9afc9e9fe9..d79508f08316 100644 --- a/pkgs/by-name/sc/scilab-bin/package.nix +++ b/pkgs/by-name/sc/scilab-bin/package.nix @@ -68,6 +68,8 @@ let runHook postInstall ''; + + dontCheckForBrokenSymlinks = true; }; linux = stdenv.mkDerivation { @@ -116,6 +118,8 @@ let runHook postInstall ''; + + dontCheckForBrokenSymlinks = true; }; in if stdenv.hostPlatform.isDarwin then darwin else linux From a4325209863278fc096401bfe9e0a9da34aa9e00 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Tue, 1 Apr 2025 21:22:06 +1000 Subject: [PATCH 46/46] home-assistant-custom-components.versatile_thermostat: 7.2.5 -> 7.2.9 (#395136) https://github.com/jmcollin78/versatile_thermostat/releases/tag/7.2.6 https://github.com/jmcollin78/versatile_thermostat/releases/tag/7.2.7 https://github.com/jmcollin78/versatile_thermostat/releases/tag/7.2.8 https://github.com/jmcollin78/versatile_thermostat/releases/tag/7.2.9 --- .../custom-components/versatile_thermostat/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/custom-components/versatile_thermostat/package.nix b/pkgs/servers/home-assistant/custom-components/versatile_thermostat/package.nix index eb3b321722a3..b6dad1d370bd 100644 --- a/pkgs/servers/home-assistant/custom-components/versatile_thermostat/package.nix +++ b/pkgs/servers/home-assistant/custom-components/versatile_thermostat/package.nix @@ -8,13 +8,13 @@ buildHomeAssistantComponent rec { owner = "jmcollin78"; domain = "versatile_thermostat"; - version = "7.2.5"; + version = "7.2.9"; src = fetchFromGitHub { inherit owner; repo = domain; rev = "refs/tags/${version}"; - hash = "sha256-my2jy9pab0b8ZPBu9ZD1WWhJQp0pJUXlC9G0Ow969Sc="; + hash = "sha256-dnCiB/IRk+FjZKTdXid6eheyml8eOUWMgYaS+JuJGV0="; }; passthru.updateScript = gitUpdater { ignoredVersions = "(Alpha|Beta|alpha|beta).*"; };