From 2dd69fd52ed4a904844d9b61f68d877caa3a3a93 Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Thu, 3 Jul 2025 08:17:07 -0300 Subject: [PATCH 01/44] cosmic-ext-applet-weather: init at 0-unstable-2025-08-23 --- .../co/cosmic-ext-applet-weather/package.nix | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 pkgs/by-name/co/cosmic-ext-applet-weather/package.nix diff --git a/pkgs/by-name/co/cosmic-ext-applet-weather/package.nix b/pkgs/by-name/co/cosmic-ext-applet-weather/package.nix new file mode 100644 index 000000000000..28a22afe9552 --- /dev/null +++ b/pkgs/by-name/co/cosmic-ext-applet-weather/package.nix @@ -0,0 +1,55 @@ +{ + lib, + stdenv, + rustPlatform, + fetchFromGitHub, + libcosmicAppHook, + just, + nix-update-script, +}: +rustPlatform.buildRustPackage { + pname = "cosmic-ext-applet-weather"; + version = "0-unstable-2025-08-23"; + + src = fetchFromGitHub { + owner = "cosmic-utils"; + repo = "cosmic-ext-applet-weather"; + rev = "f613c9dd156e84290765c34ca98ff8ede3b530fa"; + hash = "sha256-VHCgMw4nWTKAbanEnMS/xCUzEW3NeWGmVkBqU2bJP/c="; + }; + + cargoHash = "sha256-CS4P1DHzTmkZdANw6UQsB0kjKTeaf3cAQ/2EiPHSg7g="; + + nativeBuildInputs = [ + libcosmicAppHook + just + ]; + + dontUseJustBuild = true; + dontUseJustCheck = true; + + justFlags = [ + "--set" + "prefix" + (placeholder "out") + "--set" + "cargo-target-dir" + "target/${stdenv.hostPlatform.rust.cargoShortTarget}" + ]; + + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version" + "branch=HEAD" + ]; + }; + + meta = { + description = "Simple weather info applet for COSMIC"; + homepage = "https://github.com/cosmic-utils/cosmic-ext-applet-weather"; + license = lib.licenses.gpl3Only; + mainProgram = "cosmic-ext-applet-weather"; + maintainers = with lib.maintainers; [ HeitorAugustoLN ]; + platforms = lib.platforms.linux; + }; +} From d3b1861acd8a69b946a96208e5218e43f5389ddf Mon Sep 17 00:00:00 2001 From: Heitor Augusto Date: Thu, 3 Jul 2025 07:52:19 -0300 Subject: [PATCH 02/44] cosmic-ext-applet-sysinfo: init at 0-unstable-2025-07-05 --- .../co/cosmic-ext-applet-sysinfo/package.nix | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 pkgs/by-name/co/cosmic-ext-applet-sysinfo/package.nix diff --git a/pkgs/by-name/co/cosmic-ext-applet-sysinfo/package.nix b/pkgs/by-name/co/cosmic-ext-applet-sysinfo/package.nix new file mode 100644 index 000000000000..c8aa0972d783 --- /dev/null +++ b/pkgs/by-name/co/cosmic-ext-applet-sysinfo/package.nix @@ -0,0 +1,55 @@ +{ + lib, + stdenv, + rustPlatform, + fetchFromGitHub, + libcosmicAppHook, + just, + nix-update-script, +}: +rustPlatform.buildRustPackage { + pname = "cosmic-ext-applet-sysinfo"; + version = "0-unstable-2025-07-05"; + + src = fetchFromGitHub { + owner = "cosmic-utils"; + repo = "cosmic-ext-applet-sysinfo"; + rev = "8559ba6604bfa7bdaaa53f8ea9a01ce6e6174194"; + hash = "sha256-KF6j7OWz75BQtaa3z93Lq/msZpMt9ZYeKP4ThJKimDo="; + }; + + cargoHash = "sha256-oUw7oBOT1I/eBQuKuTQ4UWuksYWSyS6kd4fRGHC4ELY="; + + nativeBuildInputs = [ + libcosmicAppHook + just + ]; + + dontUseJustBuild = true; + dontUseJustCheck = true; + + justFlags = [ + "--set" + "prefix" + (placeholder "out") + "--set" + "cargo-target-dir" + "target/${stdenv.hostPlatform.rust.cargoShortTarget}" + ]; + + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version" + "branch=HEAD" + ]; + }; + + meta = { + description = "Simple system info applet for COSMIC"; + homepage = "https://github.com/cosmic-utils/cosmic-ext-applet-sysinfo"; + license = lib.licenses.gpl3Only; + mainProgram = "cosmic-ext-applet-sysinfo"; + maintainers = with lib.maintainers; [ HeitorAugustoLN ]; + platforms = lib.platforms.linux; + }; +} From 0b6d34a718e8ca39244ca3c87438b05820c730c9 Mon Sep 17 00:00:00 2001 From: Nicolas Benes Date: Mon, 14 Jul 2025 00:46:04 +0200 Subject: [PATCH 03/44] python313Packages.consul: 1.1.0 -> 1.6.0, use fork from criteo The original python-consul project from cablehead has not seen releases since 2018 and is archived since 2024: https://github.com/python-consul/python-consul/tags It suggests to use the better maintained fork of criteo/py-consul. --- .../python-modules/consul/default.nix | 120 +++++++++++++++--- 1 file changed, 104 insertions(+), 16 deletions(-) diff --git a/pkgs/development/python-modules/consul/default.nix b/pkgs/development/python-modules/consul/default.nix index 98f5b7f6b5dc..f4947ed4b438 100644 --- a/pkgs/development/python-modules/consul/default.nix +++ b/pkgs/development/python-modules/consul/default.nix @@ -1,34 +1,122 @@ { lib, buildPythonPackage, - fetchPypi, + fetchFromGitHub, + fetchpatch, + setuptools, requests, - six, - pytest, + pythonOlder, + pytestCheckHook, + aiohttp, + pytest-asyncio, + pytest-cov-stub, + python, + docker, }: buildPythonPackage rec { - pname = "python-consul"; - version = "1.1.0"; - format = "setuptools"; + pname = "py-consul"; + version = "1.6.0"; + pyproject = true; - src = fetchPypi { - inherit pname version; - sha256 = "168f1fa53948047effe4f14d53fc1dab50192e2a2cf7855703f126f469ea11f4"; + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "criteo"; + repo = "py-consul"; + tag = "v${version}"; + hash = "sha256-kNIFpY8rXdfGmaW2GAq7SvjK+4ahgaFnyXEqcUrXoEs="; }; - buildInputs = [ - requests - six - pytest + patches = [ + (fetchpatch { + url = "https://salsa.debian.org/python-team/packages/python-consul/-/raw/master/debian/patches/avoir-usr-requirements.txt.patch"; + hash = "sha256-lB9Irzuc2IpbQOIP/C3JQ4iYqugf1U6CVlAEXrrFUfI="; + }) ]; - # No tests distributed. https://github.com/cablehead/python-consul/issues/133 - doCheck = false; + build-system = [ + setuptools + ]; + + dependencies = [ + requests + aiohttp + ]; + + # Exclude sphinx config from installation + postInstall = '' + rm -r $out/${python.sitePackages}/docs + ''; + + nativeCheckInputs = [ + pytestCheckHook + pytest-asyncio + pytest-cov-stub + docker + ]; + + # Most tests want to run a consul docker container ("hashicorp/consul:{version}" in conftest.py) + # See also https://salsa.debian.org/python-team/packages/python-consul/-/blob/936c1d9ce3acaac3fa2b6e9384102e843adbbe0b/debian/rules + disabledTests = [ + "test_acl_token_permission_denied" + "test_acl_token_list" + "test_acl_token_read" + "test_acl_token_create" + "test_acl_token_clone" + "test_acl_token_update" + "test_acl_policy_list" + "test_acl_policy_read" + "test_agent_checks" + "test_service_multi_check" + "test_service_dereg_issue_156" + "test_agent_checks_service_id" + "test_agent_register_check_no_service_id" + "test_agent_register_enable_tag_override" + "test_agent_service_maintenance" + "test_agent_node_maintenance" + "test_agent_members" + "test_agent_self" + "test_agent_services" + "test_coordinate" + "test_event" + "test_event_targeted" + "test_health_service" + "test_health_state" + "test_health_service" + "test_health_state" + "test_health_node" + "test_health_checks" + "test_kv" + "test_kv_wait" + "test_kv_encoding" + "test_kv_put_cas" + "test_kv_put_flags" + "test_kv_recurse" + "test_kv_delete" + "test_kv_delete_cas" + "test_kv_acquire_release" + "test_kv_keys_only" + "test_kv_acquire_release" + "test_kv_keys_only" + "test_operator" + "test_session" + "test_session_delete_ttl_renew" + "test_status_leader" + "test_status_peers" + "test_transaction" + "test_consul_ctor" + "test_acl_token_delete" + ]; + + pythonImportsCheck = [ "consul" ]; meta = with lib; { description = "Python client for Consul (https://www.consul.io/)"; - homepage = "https://github.com/cablehead/python-consul"; + homepage = "https://github.com/criteo/py-consul"; license = licenses.mit; + maintainers = with maintainers; [ + panicgh + ]; }; } From c7a9f51e5f3fb271cecf055a9b2388832b1c9a30 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 29 Oct 2025 23:58:01 +0100 Subject: [PATCH 04/44] git-tools: init at 2025.08 --- pkgs/by-name/gi/git-tools/package.nix | 69 +++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 pkgs/by-name/gi/git-tools/package.nix diff --git a/pkgs/by-name/gi/git-tools/package.nix b/pkgs/by-name/gi/git-tools/package.nix new file mode 100644 index 000000000000..ca96ce256e8a --- /dev/null +++ b/pkgs/by-name/gi/git-tools/package.nix @@ -0,0 +1,69 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, + makeWrapper, + installShellFiles, + versionCheckHook, + nix-update-script, + bash, + git, + python3, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "git-tools"; + version = "2025.08"; + + src = fetchFromGitHub { + owner = "MestreLion"; + repo = "git-tools"; + tag = "v${finalAttrs.version}"; + hash = "sha256-DuhvepcDXk+UTFbvmv5V/EGP9ZEnHBYk7ARm/z0gTLY="; + }; + + nativeBuildInputs = [ + makeWrapper + installShellFiles + ]; + + buildInputs = [ + bash + git + python3 + ]; + + installPhase = '' + runHook preInstall + + install -Dm755 git-* -t "$out"/bin + + for exe in "$out"/bin/*; do + wrapProgram "$exe" \ + --prefix PATH : "$out"/bin:${lib.makeBinPath finalAttrs.buildInputs} + done + + runHook postInstall + ''; + postInstall = '' + installManPage \ + man1/*.1 + ''; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + doInstallCheck = true; + versionCheckProgram = "${placeholder "out"}/bin/git-restore-mtime"; + + passthru.updateScript = nix-update-script { }; + + meta = { + changelog = "https://github.com/MestreLion/git-tools/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + description = "Assorted git tools, including git-restore-mtime"; + homepage = "https://github.com/MestreLion/git-tools"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ aduh95 ]; + platforms = lib.platforms.all; + }; +}) From 31f78e5cecf6e20cbbeeac2caa360bb328fb362d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 5 Dec 2025 08:03:36 +0000 Subject: [PATCH 05/44] spec-kit: 0.0.86 -> 0.0.90 --- pkgs/by-name/sp/spec-kit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sp/spec-kit/package.nix b/pkgs/by-name/sp/spec-kit/package.nix index 320a61547ffc..2b03753cd3a5 100644 --- a/pkgs/by-name/sp/spec-kit/package.nix +++ b/pkgs/by-name/sp/spec-kit/package.nix @@ -7,13 +7,13 @@ python3Packages.buildPythonApplication rec { pname = "spec-kit"; - version = "0.0.86"; + version = "0.0.90"; src = fetchFromGitHub { owner = "github"; repo = "spec-kit"; tag = "v${version}"; - hash = "sha256-zgiJN7rzD5x/xpL6CMvxITy+/YTu1TKk26UhhQ/s5V8="; + hash = "sha256-ulAii6//DT9uqLxYk6qmX6dwWWjhuARbBmjH5u1YGGM="; }; pyproject = true; From 33d6b9fb51f1a3802b70d6d9b2dbd829b3e067db Mon Sep 17 00:00:00 2001 From: Justin Restivo Date: Sat, 6 Dec 2025 09:47:12 -0500 Subject: [PATCH 06/44] influxdb2: fix hardcoded source path --- pkgs/servers/nosql/influxdb2/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/nosql/influxdb2/default.nix b/pkgs/servers/nosql/influxdb2/default.nix index bf93888c7b01..42f19bbcf136 100644 --- a/pkgs/servers/nosql/influxdb2/default.nix +++ b/pkgs/servers/nosql/influxdb2/default.nix @@ -30,7 +30,7 @@ let hash = "sha256-aC+GYMaxYKkY9GMaeRx22hQ3xi3kfWpaTLC9ajqOaAA="; }; - flux = rustPlatform.buildRustPackage { + flux = rustPlatform.buildRustPackage (finalAttrs: { pname = "libflux"; version = libflux_version; src = fetchFromGitHub { @@ -50,7 +50,7 @@ let substituteInPlace flux-core/Cargo.toml \ --replace-fail 'default = ["strict"]' 'default = []' ''; - sourceRoot = "${src.name}/libflux"; + sourceRoot = "${finalAttrs.src.name}/libflux"; cargoHash = "sha256-A6j/lb47Ob+Po8r1yvqBXDVP0Hf7cNz8WFZqiVUJj+Y="; nativeBuildInputs = [ rustPlatform.bindgenHook ]; @@ -65,14 +65,14 @@ let passAsFile = [ "pkgcfg" ]; postInstall = '' mkdir -p $out/include $out/pkgconfig - cp -r $NIX_BUILD_TOP/source/libflux/include/influxdata $out/include + cp -r $NIX_BUILD_TOP/${finalAttrs.src.name}/libflux/include/influxdata $out/include substitute $pkgcfgPath $out/pkgconfig/flux.pc \ --replace-fail /out $out '' + lib.optionalString stdenv.hostPlatform.isDarwin '' install_name_tool -id $out/lib/libflux.dylib $out/lib/libflux.dylib ''; - }; + }); in buildGoModule { pname = "influxdb"; From d9ed05173c8e872cfb9e712ecbcad92a2f4c8222 Mon Sep 17 00:00:00 2001 From: Lemon Lam Date: Mon, 8 Dec 2025 01:44:46 +0800 Subject: [PATCH 07/44] warpgate: 0.17.0 -> 0.18.0 --- .../disable-rust-reproducible-build.patch | 14 -------------- pkgs/by-name/wa/warpgate/package.nix | 16 ++++++++++------ 2 files changed, 10 insertions(+), 20 deletions(-) delete mode 100644 pkgs/by-name/wa/warpgate/disable-rust-reproducible-build.patch diff --git a/pkgs/by-name/wa/warpgate/disable-rust-reproducible-build.patch b/pkgs/by-name/wa/warpgate/disable-rust-reproducible-build.patch deleted file mode 100644 index 8db9aba1c95a..000000000000 --- a/pkgs/by-name/wa/warpgate/disable-rust-reproducible-build.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/.cargo/config.toml b/.cargo/config.toml -index 8ab4225..8e0c812 100644 ---- a/.cargo/config.toml -+++ b/.cargo/config.toml -@@ -1,8 +1,5 @@ - # https://github.com/rust-lang/cargo/issues/5376#issuecomment-2163350032 - [target.'cfg(all())'] - rustflags = [ -- "--cfg", "tokio_unstable", -- "-Zremap-cwd-prefix=/reproducible-cwd", -- "--remap-path-prefix=$HOME=/reproducible-home", -- "--remap-path-prefix=$PWD=/reproducible-pwd", -+ "--cfg", "tokio_unstable" - ] diff --git a/pkgs/by-name/wa/warpgate/package.nix b/pkgs/by-name/wa/warpgate/package.nix index 440b3f762724..e3d5c44a3d5e 100644 --- a/pkgs/by-name/wa/warpgate/package.nix +++ b/pkgs/by-name/wa/warpgate/package.nix @@ -20,7 +20,7 @@ rustPlatform.buildRustPackage ( patches = [ ./web-ui-package-json.patch ]; - npmDepsHash = "sha256-1zCxKAH2IAKSFdL8Pyd8dJi0i8Y5mgYcWNKVpiQszc0="; + npmDepsHash = "sha256-jgsNF93DkEVgPGzdi192HKoSHPYhdrtog28jZvOLK6E="; nativeBuildInputs = [ openapi-generator-cli ]; @@ -35,29 +35,33 @@ rustPlatform.buildRustPackage ( in { pname = "warpgate"; - version = "0.17.0"; + version = "0.18.0"; src = fetchFromGitHub { owner = "warp-tech"; repo = "warpgate"; tag = "v${finalAttrs.version}"; - hash = "sha256-nr0z8c0o5u4Rqs9pFUaxnasRHUhwT3qQe5+JNV+LObg="; + hash = "sha256-GLY/VGEKB6gFNTbBlbhpmqQZ62pk2wd6JwWwy4Tz0FE="; }; - cargoHash = "sha256-pIr5Z7rp+dYOuKYnlsBdya6MqAdL0U2gUhwXvLfmM34="; + cargoHash = "sha256-hwAtj8tTDsYgzuDobMg97wepKKIpohSVClyRiaDd+8w="; patches = [ (replaceVars ./hardcode-version.patch { inherit (finalAttrs) version; }) - ./disable-rust-reproducible-build.patch ]; + RUSTFLAGS = "--cfg tokio_unstable"; + buildFeatures = [ "postgres" "mysql" "sqlite" ]; - preBuild = ''ln -rs "${warpgate-web}" warpgate-web/dist''; + preBuild = '' + rm -r .cargo/ + ln -rs "${warpgate-web}" warpgate-web/dist + ''; # skip check, project included tests require python stuff and docker doCheck = false; From 01136a4ba39441d122257a3ad00796acf96fef36 Mon Sep 17 00:00:00 2001 From: Gon Solo Date: Fri, 5 Dec 2025 08:55:33 +0100 Subject: [PATCH 08/44] maintainers: add gonsolo --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 42e971f91080..12b91d0d1c20 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -9668,6 +9668,12 @@ githubId = 58785758; name = "Tim Lanzinger"; }; + gonsolo = { + email = "gonsolo@gmail.com"; + github = "gonsolo"; + githubId = 2041764; + name = "Andreas Wendleder"; + }; Gonzih = { email = "gonzih@gmail.com"; github = "Gonzih"; From bd3500c8228ad2bf928337236e3ffd256eef00a7 Mon Sep 17 00:00:00 2001 From: eljamm Date: Fri, 5 Dec 2025 21:35:47 +0100 Subject: [PATCH 09/44] {libgdstk,python3Packages.gdstk}: init at 0.9.61 --- pkgs/by-name/li/libgdstk/package.nix | 51 ++++++++++ .../python-modules/gdstk/default.nix | 93 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 146 insertions(+) create mode 100644 pkgs/by-name/li/libgdstk/package.nix create mode 100644 pkgs/development/python-modules/gdstk/default.nix diff --git a/pkgs/by-name/li/libgdstk/package.nix b/pkgs/by-name/li/libgdstk/package.nix new file mode 100644 index 000000000000..7ec5c8d0920a --- /dev/null +++ b/pkgs/by-name/li/libgdstk/package.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenv, + fetchFromGitHub, + nix-update-script, + + # build-time deps + cmake, + ninja, + + # run-time deps + zlib, + qhull, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "libgdstk"; + version = "0.9.61"; + pyproject = true; + + src = fetchFromGitHub { + owner = "heitzmann"; + repo = "gdstk"; + tag = "v${finalAttrs.version}"; + hash = "sha256-soU+6EbyOkHGvVq230twiRzywOskhkkXFr5akBpvgBw="; + }; + + nativeBuildInputs = [ + cmake + ninja + ]; + + buildInputs = [ + zlib + qhull + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "C++/Python library for creation and manipulation of GDSII and OASIS files"; + homepage = "https://github.com/heitzmann/gdstk"; + changelog = "https://github.com/heitzmann/gdstk/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = lib.licenses.boost; + maintainers = with lib.maintainers; [ + eljamm + gonsolo + ]; + teams = with lib.teams; [ ngi ]; + }; +}) diff --git a/pkgs/development/python-modules/gdstk/default.nix b/pkgs/development/python-modules/gdstk/default.nix new file mode 100644 index 000000000000..47390eb908c4 --- /dev/null +++ b/pkgs/development/python-modules/gdstk/default.nix @@ -0,0 +1,93 @@ +{ + lib, + buildPythonPackage, + libgdstk, + + # build-system + build, + scikit-build-core, + + # deps + numpy, + typing-extensions, + + # deps (optional) + matplotlib, + sphinx, + sphinx-inline-tabs, + sphinx-rtd-theme, + + # build-time + cmake, + ninja, + + # run-time + zlib, + qhull, + + # tests + pytestCheckHook, +}: + +buildPythonPackage { + pname = "gdstk"; + inherit (libgdstk) src version; + + pyproject = true; + strictDeps = true; + + # scikit is supposed to handle the module build + dontUseCmakeConfigure = true; + + build-system = [ + build + cmake + ninja + numpy + scikit-build-core + ]; + + dependencies = [ + numpy + typing-extensions + ]; + + optional-dependencies = { + docs = [ + matplotlib + sphinx + sphinx-inline-tabs + sphinx-rtd-theme + ]; + }; + + buildInputs = [ + zlib + qhull + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + # remove the `gdstk` source directory, else pytest will attempt to import it + # instead of the actual module + preCheck = '' + rm -rf gdstk + ''; + + pythonImportsCheck = [ + "gdstk" + ]; + + meta = { + inherit (libgdstk.meta) + description + homepage + changelog + license + maintainers + teams + ; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2261142b1fca..191a54185e11 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5881,6 +5881,8 @@ self: super: with self; { gdsfactory = callPackage ../development/python-modules/gdsfactory { }; + gdstk = callPackage ../development/python-modules/gdstk { }; + ge25519 = callPackage ../development/python-modules/ge25519 { }; geant4 = toPythonModule ( From af82810f77bd4ff065310262127519b036d9a3a0 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Mon, 8 Dec 2025 14:50:37 +0100 Subject: [PATCH 10/44] strace: 6.17 -> 6.18 ChangeLog: https://github.com/strace/strace/releases/tag/v6.18 --- pkgs/by-name/st/strace/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/st/strace/package.nix b/pkgs/by-name/st/strace/package.nix index 23b9b4b359e8..2bb0ca714f6e 100644 --- a/pkgs/by-name/st/strace/package.nix +++ b/pkgs/by-name/st/strace/package.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "strace"; - version = "6.17"; + version = "6.18"; src = fetchurl { url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz"; - hash = "sha256-Cnx77cfvwHbzJCoDEK8q5jwpKjbdQjbweeiKk+mMucA="; + hash = "sha256-CtXcupc6aed5ZQ7xyzNbEu5gcW/HMmYJiVvTPm0qcyU="; }; separateDebugInfo = true; From 0288c5c90f65bb731c19b24f16fc2c572eb05dd0 Mon Sep 17 00:00:00 2001 From: eljamm Date: Mon, 8 Dec 2025 15:51:13 +0100 Subject: [PATCH 11/44] kaidan: enable unit tests; sort dependencies --- pkgs/by-name/ka/kaidan/package.nix | 43 +++++++++++++++++++----------- 1 file changed, 27 insertions(+), 16 deletions(-) diff --git a/pkgs/by-name/ka/kaidan/package.nix b/pkgs/by-name/ka/kaidan/package.nix index db66a12f88a8..b5fd38ab73d0 100644 --- a/pkgs/by-name/ka/kaidan/package.nix +++ b/pkgs/by-name/ka/kaidan/package.nix @@ -1,16 +1,21 @@ { - stdenv, lib, + stdenv, fetchFromGitLab, + nix-update-script, + + # build cmake, extra-cmake-modules, - pkg-config, kdePackages, - kdsingleapplication, - zxing-cpp, - qxmpp, + pkg-config, + writableTmpDirAsHomeHook, + + # runtime gst_all_1, - nix-update-script, + kdsingleapplication, + qxmpp, + zxing-cpp, }: stdenv.mkDerivation (finalAttrs: { @@ -32,32 +37,38 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ cmake extra-cmake-modules - pkg-config kdePackages.wrapQtAppsHook + pkg-config + writableTmpDirAsHomeHook ]; buildInputs = [ + (gst_all_1.gst-plugins-good.override { qt6Support = true; }) + gst_all_1.gst-plugins-bad + gst_all_1.gst-plugins-base + gst_all_1.gstreamer kdePackages.kio kdePackages.kirigami kdePackages.kirigami-addons kdePackages.knotifications - kdePackages.kquickimageedit + kdePackages.kquickimageeditor kdePackages.prison + kdePackages.qqc2-desktop-style kdePackages.qtbase kdePackages.qtkeychain - kdePackages.qttools - kdePackages.qtmultimedia kdePackages.qtlocation - kdePackages.qqc2-desktop-style + kdePackages.qtmultimedia + kdePackages.qttools kdePackages.sonnet kdsingleapplication - zxing-cpp qxmpp - gst_all_1.gstreamer - gst_all_1.gst-plugins-bad - gst_all_1.gst-plugins-base - (gst_all_1.gst-plugins-good.override { qt6Support = true; }) + zxing-cpp ]; + + cmakeFlags = [ + "-DBUILD_TESTING=ON" + ]; + postInstall = '' qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0") ''; From 8e25458130c2b78b83a2643c3be2dfc0aff99d96 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 9 Dec 2025 10:54:08 +0000 Subject: [PATCH 12/44] kaidan: 0.13.0-unstable-2025-12-03 -> 0.13.0-unstable-2025-12-09 --- pkgs/by-name/ka/kaidan/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ka/kaidan/package.nix b/pkgs/by-name/ka/kaidan/package.nix index db66a12f88a8..c00b4a851efb 100644 --- a/pkgs/by-name/ka/kaidan/package.nix +++ b/pkgs/by-name/ka/kaidan/package.nix @@ -15,14 +15,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "kaidan"; - version = "0.13.0-unstable-2025-12-03"; + version = "0.13.0-unstable-2025-12-09"; src = fetchFromGitLab { domain = "invent.kde.org"; owner = "network"; repo = "kaidan"; - rev = "f9d9d236aa0fc584771524c1078ab899a9cd5822"; - hash = "sha256-O3L3VEB7HsPYF0FyJtma98SlxgFIADZd/uhfJyEucGQ="; + rev = "d160f34ce1fecb39f4c71530cf2d4ba57bfbd6f4"; + hash = "sha256-/Nt6XjauaVKdLSZglk3qfd0wxW/VpwzMnVwuF/jGP0s="; }; patches = [ From 5d4c91745129e7e7f4df7b9085d0e14725081a2b Mon Sep 17 00:00:00 2001 From: Vincent Demeester Date: Tue, 9 Dec 2025 11:56:39 +0100 Subject: [PATCH 13/44] tektoncd-cli: fix updateScript behavior This tries prevents the automatic update script from selecting older versions based solely on release dates. This tries suggestion from https://github.com/NixOS/nixpkgs/pull/461118#issuecomment-3527142105 --- pkgs/by-name/te/tektoncd-cli-pac/package.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/te/tektoncd-cli-pac/package.nix b/pkgs/by-name/te/tektoncd-cli-pac/package.nix index 2a0f7ce92d47..2f9d033efe48 100644 --- a/pkgs/by-name/te/tektoncd-cli-pac/package.nix +++ b/pkgs/by-name/te/tektoncd-cli-pac/package.nix @@ -42,7 +42,12 @@ buildGoModule (finalAttrs: { versionCheckProgramArg = "version"; doInstallCheck = true; - passthru.updateScript = nix-update-script { }; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "v([0-9.]+)" + ]; + }; meta = { homepage = "https://pipelinesascode.com"; From f798eeb7f1a23119c8dffd703e412a7793401937 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Tue, 9 Dec 2025 11:12:00 +0000 Subject: [PATCH 14/44] osu-lazer-bin: 2025.1205.0 -> 2025.1209.0 --- pkgs/by-name/os/osu-lazer-bin/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/os/osu-lazer-bin/package.nix b/pkgs/by-name/os/osu-lazer-bin/package.nix index 67b1da6df202..f9728d698c9b 100644 --- a/pkgs/by-name/os/osu-lazer-bin/package.nix +++ b/pkgs/by-name/os/osu-lazer-bin/package.nix @@ -10,23 +10,23 @@ let pname = "osu-lazer-bin"; - version = "2025.1205.0"; + version = "2025.1209.0"; src = { aarch64-darwin = fetchzip { url = "https://github.com/ppy/osu/releases/download/${version}-lazer/osu.app.Apple.Silicon.zip"; - hash = "sha256-2QVFr7OxpjMmfSdIGOe93tTOtC/SHpJURDIFuSkO55Y="; + hash = "sha256-qzmW9STCoIoz2+UGkybvB9AE536r3VghMahPFT020to="; stripRoot = false; }; x86_64-darwin = fetchzip { url = "https://github.com/ppy/osu/releases/download/${version}-lazer/osu.app.Intel.zip"; - hash = "sha256-CSV4D9HA62PGbwI7Y5/O5FgoXb14vaX9KVeQovNlAJU="; + hash = "sha256-421KNsV4Nb3JSjJb0OMkdAEsb/YnI/st7Vio29WAtZs="; stripRoot = false; }; x86_64-linux = fetchurl { url = "https://github.com/ppy/osu/releases/download/${version}-lazer/osu.AppImage"; - hash = "sha256-TlOfkffImBL4Bnnq6g+X8h75BX/wzm/y4fRxg7+7nCs="; + hash = "sha256-42Fx3CxLcW97cxRXXCqPJ8NzRBnpi62IjxGLnSRkO4g="; }; } .${stdenvNoCC.system} or (throw "osu-lazer-bin: ${stdenvNoCC.system} is unsupported."); From 72d5117580bd856c6cf447ee771c2058848cb14a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Tue, 9 Dec 2025 11:14:53 +0000 Subject: [PATCH 15/44] osu-lazer: 2025.1205.0 -> 2025.1209.0 --- pkgs/by-name/os/osu-lazer/deps.json | 4 ++-- pkgs/by-name/os/osu-lazer/package.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/os/osu-lazer/deps.json b/pkgs/by-name/os/osu-lazer/deps.json index 3a5a075997cb..6c34baef122c 100644 --- a/pkgs/by-name/os/osu-lazer/deps.json +++ b/pkgs/by-name/os/osu-lazer/deps.json @@ -626,8 +626,8 @@ }, { "pname": "ppy.osu.Framework", - "version": "2025.1205.1", - "hash": "sha256-TDu/mXylhCJ0kgU4rZutVzHDjJ+t6okGuxMqcsTc1ck=" + "version": "2025.1209.0", + "hash": "sha256-Eb0v6kdXelZnuZ+aW7lGz/lUKiL88kaX/M2/UYhJnYo=" }, { "pname": "ppy.osu.Framework.NativeLibs", diff --git a/pkgs/by-name/os/osu-lazer/package.nix b/pkgs/by-name/os/osu-lazer/package.nix index 1b4e9a3cc35d..41f6e053df4d 100644 --- a/pkgs/by-name/os/osu-lazer/package.nix +++ b/pkgs/by-name/os/osu-lazer/package.nix @@ -22,13 +22,13 @@ buildDotnetModule rec { pname = "osu-lazer"; - version = "2025.1205.0"; + version = "2025.1209.0"; src = fetchFromGitHub { owner = "ppy"; repo = "osu"; tag = "${version}-lazer"; - hash = "sha256-pdAQAjfh667PxqtU3VXl9wkSqpteEDpykUQbr9SfVQk="; + hash = "sha256-uxC+3M2KMnG292Ab1Sa/QnkxQXNogSqE7Tij/moDzkE="; }; projectFile = "osu.Desktop/osu.Desktop.csproj"; From 7f02956ea677fdadfcfa1ba77ff6c4e8e1a8a531 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 9 Dec 2025 15:30:46 +0000 Subject: [PATCH 16/44] cni-plugins: 1.8.0 -> 1.9.0 --- pkgs/applications/networking/cluster/cni/plugins.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/cni/plugins.nix b/pkgs/applications/networking/cluster/cni/plugins.nix index c24ffd52ddf8..d5ae1a805672 100644 --- a/pkgs/applications/networking/cluster/cni/plugins.nix +++ b/pkgs/applications/networking/cluster/cni/plugins.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "cni-plugins"; - version = "1.8.0"; + version = "1.9.0"; src = fetchFromGitHub { owner = "containernetworking"; repo = "plugins"; rev = "v${version}"; - hash = "sha256-/I2fEVVQ89y8l95Ri0V5qxVj/SzXVqP0IT2vSdz8jC8="; + hash = "sha256-0ZonR8pV20bBbC2AkNCJhoseDVxNwwMa7coD/ON6clA="; }; vendorHash = null; From 806f16839c7af810b48c0055c1de3daa059c9ac1 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 9 Dec 2025 15:42:45 +0000 Subject: [PATCH 17/44] helio-workstation: 3.16 -> 3.17 --- pkgs/by-name/he/helio-workstation/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/he/helio-workstation/package.nix b/pkgs/by-name/he/helio-workstation/package.nix index f1e6556686ce..5a9dd02687e2 100644 --- a/pkgs/by-name/he/helio-workstation/package.nix +++ b/pkgs/by-name/he/helio-workstation/package.nix @@ -15,14 +15,14 @@ stdenv.mkDerivation rec { pname = "helio-workstation"; - version = "3.16"; + version = "3.17"; src = fetchFromGitHub { owner = "helio-fm"; repo = "helio-workstation"; tag = version; fetchSubmodules = true; - hash = "sha256-JzJA9Y710upgzvsgPEV9QzpRUTYI0i2yi6thnUAcrL0="; + hash = "sha256-uEo4dxwc1HksYGU5ssYp3rLugszSir2kKo4XxgqvSno="; }; buildInputs = [ From e9d6223ec5dba5c651daee589af29cdf133bbcd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 9 Dec 2025 08:31:04 -0800 Subject: [PATCH 18/44] libnet: move library to $out --- pkgs/by-name/li/libnet/package.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/li/libnet/package.nix b/pkgs/by-name/li/libnet/package.nix index c6d9ba2a8929..a152d0823744 100644 --- a/pkgs/by-name/li/libnet/package.nix +++ b/pkgs/by-name/li/libnet/package.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { outputs = [ "out" - "lib" + "dev" ]; nativeBuildInputs = [ @@ -39,6 +39,10 @@ stdenv.mkDerivation rec { preConfigure = "./autogen.sh"; + preFixup = '' + moveToOutput bin/libnet-config "$dev" + ''; + meta = with lib; { homepage = "https://github.com/sam-github/libnet"; description = "Portable framework for low-level network packet construction"; From 3d6f8e280110a2dd166991135827991c9f97a3d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 9 Dec 2025 09:57:04 -0800 Subject: [PATCH 19/44] sslsplit: make LIB*_BASE point to dev output --- pkgs/by-name/ss/sslsplit/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ss/sslsplit/package.nix b/pkgs/by-name/ss/sslsplit/package.nix index 73ba386ae1cb..96101e75313e 100644 --- a/pkgs/by-name/ss/sslsplit/package.nix +++ b/pkgs/by-name/ss/sslsplit/package.nix @@ -39,10 +39,10 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=$(out)" - "OPENSSL_BASE=${openssl.dev}" - "LIBEVENT_BASE=${libevent.dev}" - "LIBPCAP_BASE=${libpcap}" - "LIBNET_BASE=${libnet}" + "OPENSSL_BASE=${lib.getDev openssl}" + "LIBEVENT_BASE=${lib.getDev libevent}" + "LIBPCAP_BASE=${lib.getDev libpcap}" + "LIBNET_BASE=${lib.getDev libnet}" ]; meta = with lib; { From c5574ef623671109c45320ded800d72498620e5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 9 Dec 2025 10:00:03 -0800 Subject: [PATCH 20/44] yersinia: get include dirs from dev outputs --- pkgs/by-name/ye/yersinia/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ye/yersinia/package.nix b/pkgs/by-name/ye/yersinia/package.nix index e2717c3c6fcc..f808289008c9 100644 --- a/pkgs/by-name/ye/yersinia/package.nix +++ b/pkgs/by-name/ye/yersinia/package.nix @@ -39,8 +39,8 @@ stdenv.mkDerivation { autoreconfPhase = "./autogen.sh"; configureFlags = [ - "--with-pcap-includes=${libpcap}/include" - "--with-libnet-includes=${libnet}/include" + "--with-pcap-includes=${lib.getDev libpcap}/include" + "--with-libnet-includes=${lib.getDev libnet}/include" ] ++ lib.optional (!enableAdmin) "--disable-admin" ++ lib.optional (!withGtk) "--disable-gtk"; From 94180959fa0807fafbfc656502404b5d7d4ca155 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 9 Dec 2025 19:45:29 +0000 Subject: [PATCH 21/44] netavark: 1.17.0 -> 1.17.1 --- pkgs/by-name/ne/netavark/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ne/netavark/package.nix b/pkgs/by-name/ne/netavark/package.nix index f679b97dabf8..25a120042222 100644 --- a/pkgs/by-name/ne/netavark/package.nix +++ b/pkgs/by-name/ne/netavark/package.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "netavark"; - version = "1.17.0"; + version = "1.17.1"; src = fetchFromGitHub { owner = "containers"; repo = "netavark"; rev = "v${version}"; - hash = "sha256-Co7Wt6eUwbDVd+MljXh+kJ1Op8ekGzYxWA4j8EWa0jk="; + hash = "sha256-KLN1Y2C43dTZlm1VNZq49/zQY55iAPf5V7KK5zjC2dw="; }; - cargoHash = "sha256-FBvD7EY+NryetZmJSAMZdikDi5N5kLWHL8gzd0rGnj8="; + cargoHash = "sha256-Ac8/0MgvDZ3djUlKOv3yT3aCPkxbNPnFM8ZId6yN354="; nativeBuildInputs = [ installShellFiles From 67d9b4b947f8b87eefbf6a182ee48db2dba08f27 Mon Sep 17 00:00:00 2001 From: DCsunset Date: Sun, 2 Mar 2025 15:40:45 +0000 Subject: [PATCH 22/44] nixos/frp: support multiple instances --- .../manual/release-notes/rl-2311.section.md | 2 +- .../manual/release-notes/rl-2605.section.md | 2 + nixos/modules/services/networking/frp.nix | 176 ++++++++++-------- 3 files changed, 104 insertions(+), 76 deletions(-) diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index 2ff367f20ebd..d7fe84cbf70e 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -922,7 +922,7 @@ Make sure to also check the many updates in the [Nixpkgs library](#sec-release-2 - [frp](https://github.com/fatedier/frp), a fast reverse proxy to help you expose a local server behind a NAT or firewall to the Internet. Available as - [services.frp](#opt-services.frp.enable). + `services.frp`. - [river](https://github.com/riverwm/river), A dynamic tiling wayland compositor. Available as `programs.river`. diff --git a/nixos/doc/manual/release-notes/rl-2605.section.md b/nixos/doc/manual/release-notes/rl-2605.section.md index 4fee9fb92e5e..706b4839a640 100644 --- a/nixos/doc/manual/release-notes/rl-2605.section.md +++ b/nixos/doc/manual/release-notes/rl-2605.section.md @@ -26,4 +26,6 @@ +- `services.frp` now supports multiple instances through `services.frp.instances` to make it possible to run multiple frp clients or servers at the same time. + - `services.openssh` now supports generating host SSH keys by setting `services.openssh.generateHostKeys = true` while leaving `services.openssh.enable` disabled. This is particularly useful for systems that have no need of an SSH daemon but want SSH host keys for other purposes such as using agenix or sops-nix. diff --git a/nixos/modules/services/networking/frp.nix b/nixos/modules/services/networking/frp.nix index f59074688b6c..d592e89b7201 100644 --- a/nixos/modules/services/networking/frp.nix +++ b/nixos/modules/services/networking/frp.nix @@ -7,95 +7,121 @@ let cfg = config.services.frp; settingsFormat = pkgs.formats.toml { }; - configFile = settingsFormat.generate "frp.toml" cfg.settings; - isClient = (cfg.role == "client"); - isServer = (cfg.role == "server"); + enabledInstances = lib.filterAttrs (name: conf: conf.enable) cfg.instances; in { + imports = [ + (lib.mkRenamedOptionModule + [ "services" "frp" "enable" ] + [ "services" "frp" "instances" "" "enable" ] + ) + (lib.mkRenamedOptionModule [ "services" "frp" "role" ] [ "services" "frp" "instances" "" "role" ]) + (lib.mkRenamedOptionModule + [ "services" "frp" "settings" ] + [ "services" "frp" "instances" "" "settings" ] + ) + ]; + options = { services.frp = { - enable = lib.mkEnableOption "frp"; + instances = lib.mkOption { + type = lib.types.attrsOf ( + lib.types.submodule { + options = { + enable = lib.mkEnableOption "frp"; - package = lib.mkPackageOption pkgs "frp" { }; + role = lib.mkOption { + type = lib.types.enum [ + "server" + "client" + ]; + description = '' + The frp consists of `client` and `server`. The server is usually + deployed on the machine with a public IP address, and + the client is usually deployed on the machine + where the Intranet service to be penetrated resides. + ''; + }; - role = lib.mkOption { - type = lib.types.enum [ - "server" - "client" - ]; - description = '' - The frp consists of `client` and `server`. The server is usually - deployed on the machine with a public IP address, and - the client is usually deployed on the machine - where the Intranet service to be penetrated resides. - ''; - }; - - settings = lib.mkOption { - type = settingsFormat.type; + settings = lib.mkOption { + type = settingsFormat.type; + default = { }; + description = '' + Frp configuration, for configuration options + see the example of [client](https://github.com/fatedier/frp/blob/dev/conf/frpc_full_example.toml) + or [server](https://github.com/fatedier/frp/blob/dev/conf/frps_full_example.toml) on github. + ''; + example = { + serverAddr = "x.x.x.x"; + serverPort = 7000; + }; + }; + }; + } + ); default = { }; description = '' - Frp configuration, for configuration options - see the example of [client](https://github.com/fatedier/frp/blob/dev/conf/frpc_full_example.toml) - or [server](https://github.com/fatedier/frp/blob/dev/conf/frps_full_example.toml) on github. + Frp instances. ''; - example = { - serverAddr = "x.x.x.x"; - serverPort = 7000; - }; }; + + package = lib.mkPackageOption pkgs "frp" { }; }; }; - config = - let - serviceCapability = lib.optionals isServer [ "CAP_NET_BIND_SERVICE" ]; - executableFile = if isClient then "frpc" else "frps"; - in - lib.mkIf cfg.enable { - systemd.services = { - frp = { - wants = lib.optionals isClient [ "network-online.target" ]; - after = if isClient then [ "network-online.target" ] else [ "network.target" ]; - wantedBy = [ "multi-user.target" ]; - description = "A fast reverse proxy frp ${cfg.role}"; - serviceConfig = { - Type = "simple"; - Restart = "on-failure"; - RestartSec = 15; - ExecStart = "${cfg.package}/bin/${executableFile} --strict_config -c ${configFile}"; - DynamicUser = true; - # Hardening - CapabilityBoundingSet = serviceCapability; - AmbientCapabilities = serviceCapability; - PrivateDevices = true; - ProtectHostname = true; - ProtectClock = true; - ProtectKernelTunables = true; - ProtectKernelModules = true; - ProtectKernelLogs = true; - ProtectControlGroups = true; - RestrictAddressFamilies = [ - "AF_INET" - "AF_INET6" - ] - ++ lib.optionals isClient [ "AF_UNIX" ]; - LockPersonality = true; - MemoryDenyWriteExecute = true; - RestrictRealtime = true; - RestrictSUIDSGID = true; - PrivateMounts = true; - SystemCallArchitectures = "native"; - SystemCallFilter = [ "@system-service" ]; - } - // lib.optionalAttrs isServer { - StateDirectory = "frp"; - StateDirectoryMode = "0700"; - UMask = "0007"; - }; + config = lib.mkIf (enabledInstances != { }) { + systemd.services = lib.mapAttrs' ( + instance: options: + let + serviceName = "frp" + lib.optionalString (instance != "") ("-" + instance); + configFile = settingsFormat.generate "${serviceName}.toml" options.settings; + isClient = (options.role == "client"); + isServer = (options.role == "server"); + serviceCapability = lib.optionals isServer [ "CAP_NET_BIND_SERVICE" ]; + executableFile = if isClient then "frpc" else "frps"; + in + lib.nameValuePair serviceName { + wants = lib.optionals isClient [ "network-online.target" ]; + after = if isClient then [ "network-online.target" ] else [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + description = "A fast reverse proxy frp ${options.role} for instance ${instance}"; + serviceConfig = { + Type = "simple"; + Restart = "on-failure"; + RestartSec = 15; + ExecStart = "${cfg.package}/bin/${executableFile} --strict_config -c ${configFile}"; + DynamicUser = true; + # Hardening + CapabilityBoundingSet = serviceCapability; + AmbientCapabilities = serviceCapability; + PrivateDevices = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + RestrictAddressFamilies = [ + "AF_INET" + "AF_INET6" + ] + ++ lib.optionals isClient [ "AF_UNIX" ]; + LockPersonality = true; + MemoryDenyWriteExecute = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + PrivateMounts = true; + SystemCallArchitectures = "native"; + SystemCallFilter = [ "@system-service" ]; + } + // lib.optionalAttrs isServer { + StateDirectory = "frp"; + StateDirectoryMode = "0700"; + UMask = "0007"; }; - }; - }; + } + ) enabledInstances; + }; meta.maintainers = with lib.maintainers; [ zaldnoay ]; } From 725d75d64288073eaf446de7bce70abaa250fe2a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 9 Dec 2025 21:18:11 +0000 Subject: [PATCH 23/44] runme: 3.16.1 -> 3.16.4 --- pkgs/by-name/ru/runme/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ru/runme/package.nix b/pkgs/by-name/ru/runme/package.nix index c4db2753e748..0b58f28124cd 100644 --- a/pkgs/by-name/ru/runme/package.nix +++ b/pkgs/by-name/ru/runme/package.nix @@ -13,16 +13,16 @@ buildGoModule rec { pname = "runme"; - version = "3.16.1"; + version = "3.16.4"; src = fetchFromGitHub { owner = "runmedev"; repo = "runme"; rev = "v${version}"; - hash = "sha256-cIlX2RvZ5jIdh7+EvjIb8KC4b/3rhkinUsomkJIBYMw="; + hash = "sha256-2uJl7lfYS3b4SgiXLYmf6UcNnYDQMaVkfkhlLDqCukE="; }; - vendorHash = "sha256-cGoeRjUB5py8yMvWrw2NaRaVb0kcYxXC1eD4cJNsqz8="; + vendorHash = "sha256-msRPjX3oYRLRwK4j7WDtERYh+6b67QQEw/EDS3+bY8k="; nativeBuildInputs = [ installShellFiles From cdd93b154c20ee09eff2914d77be3464458aa730 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 9 Dec 2025 22:20:38 +0000 Subject: [PATCH 24/44] quiet: 6.3.0 -> 6.4.1 --- pkgs/by-name/qu/quiet/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/qu/quiet/package.nix b/pkgs/by-name/qu/quiet/package.nix index ecf3371104b7..4de8be29a192 100644 --- a/pkgs/by-name/qu/quiet/package.nix +++ b/pkgs/by-name/qu/quiet/package.nix @@ -13,7 +13,7 @@ let pname = "quiet"; - version = "6.3.0"; + version = "6.4.1"; meta = { description = "Private, p2p alternative to Slack and Discord built on Tor & IPFS"; @@ -39,7 +39,7 @@ let src = fetchurl { url = "https://github.com/TryQuiet/quiet/releases/download/@quiet/desktop@${version}/Quiet-${version}.AppImage"; - hash = "sha256-LRUm2QMYg2oD6USOUYRyNUDf1VHu2txsaCUhbi1Ar5o="; + hash = "sha256-CAJgd7d0Fq6pEKLNAojE7krKJCpBBjhyOTsgYEPz0DY="; }; meta = meta // { @@ -52,7 +52,7 @@ let src = fetchurl { url = "https://github.com/TryQuiet/quiet/releases/download/@quiet/desktop@${version}/Quiet-${version}.dmg"; - hash = "sha256-T3EDgQ2DhYttbRjAklhw/C4paUzkdEx6i6Gi+Jx1N+w="; + hash = "sha256-wg2WyQ6y/wBcRuhhY8EyacKy4Xwfo1SKdeTJw/OIjMc="; }; nativeBuildInputs = [ From 505668cd38dda83193cf506c04d7aa8b123c62db Mon Sep 17 00:00:00 2001 From: kyehn <228304369+kyehn@users.noreply.github.com> Date: Tue, 9 Dec 2025 22:51:41 +0000 Subject: [PATCH 25/44] navicat-premium: 17.3.3 -> 17.3.5 --- pkgs/by-name/na/navicat-premium/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/na/navicat-premium/package.nix b/pkgs/by-name/na/navicat-premium/package.nix index 22a419a60da1..07a790b86c95 100644 --- a/pkgs/by-name/na/navicat-premium/package.nix +++ b/pkgs/by-name/na/navicat-premium/package.nix @@ -28,19 +28,19 @@ stdenv.mkDerivation (finalAttrs: { pname = "navicat-premium"; - version = "17.3.3"; + version = "17.3.5"; src = appimageTools.extractType2 { inherit (finalAttrs) pname version; src = { x86_64-linux = fetchurl { - url = "https://web.archive.org/web/20251008050849/https://dn.navicat.com/download/navicat17-premium-en-x86_64.AppImage"; - hash = "sha256-gXXj2FXOw2OHUTaX5XYtd0/nL/E/hNmcmvc0TDaOCUQ="; + url = "https://web.archive.org/web/20251209223816/https://dn.navicat.com/download/navicat17-premium-en-x86_64.AppImage"; + hash = "sha256-T2NsaUv/S2dWEP1QUBA+tHrM1UeP4Mh8jamg1obeEFs="; }; aarch64-linux = fetchurl { - url = "https://web.archive.org/web/20251008051000/https://dn.navicat.com/download/navicat17-premium-en-aarch64.AppImage"; - hash = "sha256-18JbUJV8jAXRiVVerfYZLsjy+5K2DjwqAY+Hqjtlnfg="; + url = "https://web.archive.org/web/20251209224531/https://dn.navicat.com/download/navicat17-premium-en-aarch64.AppImage"; + hash = "sha256-GMyIaDUFlcSfN0RydJjxOi3S5WexhyaJLXKtx9Kwvzs="; }; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); From 4efbf5545968d629f125be806182ef415db7ad7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20H=C3=BCrlimann?= Date: Fri, 5 Dec 2025 11:56:09 +0100 Subject: [PATCH 26/44] prometheus: fix cross-build --- pkgs/by-name/pr/prometheus/package.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/pr/prometheus/package.nix b/pkgs/by-name/pr/prometheus/package.nix index 2ad59a39c355..7b75b0b7bff7 100644 --- a/pkgs/by-name/pr/prometheus/package.nix +++ b/pkgs/by-name/pr/prometheus/package.nix @@ -1,5 +1,6 @@ { stdenv, + buildPackages, lib, go, buildGoModule, @@ -48,6 +49,8 @@ buildGoModule (finalAttrs: { hash = "sha256-hRuZxwPPDLxQvy5MPKEyfmanNabcSjLRO+XbNKugPtk="; }; + depsBuildBuild = [ buildPackages.stdenv.cc ]; + vendorHash = "sha256-5wDaG01vcTtGzrS/S33U5XWXoSWM+N9z3dzXZlILxD8="; webUiStatic = fetchurl { @@ -96,7 +99,9 @@ buildGoModule (finalAttrs: { ''; preBuild = '' - if [[ -d vendor ]]; then GOARCH= make -o assets assets-compress plugins; fi + if [[ -d vendor ]]; then + GOARCH= CC="$CC_FOR_BUILD" LD="$LD_FOR_BUILD" make -o assets assets-compress plugins + fi ''; tags = [ "builtinassets" ]; From 7ee4c2b932411b64da7374075a0bcf12598374db Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 00:02:58 +0000 Subject: [PATCH 27/44] roslyn-ls: 5.3.0-2.25568.9 -> 5.3.0-2.25603.1 --- pkgs/by-name/ro/roslyn-ls/deps.json | 18 +++++++++--------- pkgs/by-name/ro/roslyn-ls/package.nix | 6 +++--- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/ro/roslyn-ls/deps.json b/pkgs/by-name/ro/roslyn-ls/deps.json index d81ce3a4e4b8..3075c857130b 100644 --- a/pkgs/by-name/ro/roslyn-ls/deps.json +++ b/pkgs/by-name/ro/roslyn-ls/deps.json @@ -127,9 +127,9 @@ }, { "pname": "Microsoft.DotNet.Arcade.Sdk", - "version": "11.0.0-beta.25562.6", - "hash": "sha256-p1NIUxIbB5vzSv0TMVdnyaTe2/N8wHsr9tmEZk+CCyA=", - "url": "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/1a5f89f6-d8da-4080-b15f-242650c914a8/nuget/v3/flat2/microsoft.dotnet.arcade.sdk/11.0.0-beta.25562.6/microsoft.dotnet.arcade.sdk.11.0.0-beta.25562.6.nupkg" + "version": "11.0.0-beta.25578.1", + "hash": "sha256-c8IWX17rJM4aOxvPEbMUDzeLR6kEwWWTstm4waw3d80=", + "url": "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/1a5f89f6-d8da-4080-b15f-242650c914a8/nuget/v3/flat2/microsoft.dotnet.arcade.sdk/11.0.0-beta.25578.1/microsoft.dotnet.arcade.sdk.11.0.0-beta.25578.1.nupkg" }, { "pname": "Microsoft.DotNet.FileBasedPrograms", @@ -139,9 +139,9 @@ }, { "pname": "Microsoft.DotNet.XliffTasks", - "version": "11.0.0-beta.25562.6", - "hash": "sha256-v02uUdmnGpD2otyXpFQwIzMDPB2bueONAxggM8Nrzvg=", - "url": "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/1a5f89f6-d8da-4080-b15f-242650c914a8/nuget/v3/flat2/microsoft.dotnet.xlifftasks/11.0.0-beta.25562.6/microsoft.dotnet.xlifftasks.11.0.0-beta.25562.6.nupkg" + "version": "11.0.0-beta.25578.1", + "hash": "sha256-EPo2bgR7oW/a8htIps64UrAPuoyyuIYYG54cZRoknUY=", + "url": "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/1a5f89f6-d8da-4080-b15f-242650c914a8/nuget/v3/flat2/microsoft.dotnet.xlifftasks/11.0.0-beta.25578.1/microsoft.dotnet.xlifftasks.11.0.0-beta.25578.1.nupkg" }, { "pname": "Microsoft.Extensions.Configuration", @@ -511,9 +511,9 @@ }, { "pname": "System.CommandLine", - "version": "3.0.0-alpha.1.25567.106", - "hash": "sha256-bmvDruld0VKW09VjHy0ibkg6+gAt8Sb7fF00E7yJoI4=", - "url": "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/516521bf-6417-457e-9a9c-0a4bdfde03e7/nuget/v3/flat2/system.commandline/3.0.0-alpha.1.25567.106/system.commandline.3.0.0-alpha.1.25567.106.nupkg" + "version": "3.0.0-alpha.1.25570.101", + "hash": "sha256-j7PBGIeUwbV/jodHa0CNu4i/+D8mQqFMY2E7k3ALJAY=", + "url": "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/516521bf-6417-457e-9a9c-0a4bdfde03e7/nuget/v3/flat2/system.commandline/3.0.0-alpha.1.25570.101/system.commandline.3.0.0-alpha.1.25570.101.nupkg" }, { "pname": "System.ComponentModel.Composition", diff --git a/pkgs/by-name/ro/roslyn-ls/package.nix b/pkgs/by-name/ro/roslyn-ls/package.nix index e5cf7611dae0..8bc5446a5354 100644 --- a/pkgs/by-name/ro/roslyn-ls/package.nix +++ b/pkgs/by-name/ro/roslyn-ls/package.nix @@ -52,18 +52,18 @@ in buildDotnetModule (finalAttrs: rec { inherit pname dotnet-sdk dotnet-runtime; - vsVersion = "2.102.30-prerelease"; + vsVersion = "2.103.33-prerelease"; src = fetchFromGitHub { owner = "dotnet"; repo = "roslyn"; rev = "VSCode-CSharp-${vsVersion}"; - hash = "sha256-C61Zew0W1r1klw3zGZfv3YNhZ7SrCd0UbGlXhqkfrbI="; + hash = "sha256-uz0V4vTwfmeY5qPv9K30eB0MZTCpPee3PgIdlrXL/qs="; }; # versioned independently from vscode-csharp # "roslyn" in here: # https://github.com/dotnet/vscode-csharp/blob/main/package.json - version = "5.3.0-2.25568.9"; + version = "5.3.0-2.25603.1"; projectFile = "src/LanguageServer/${project}/${project}.csproj"; useDotnetFromEnv = true; nugetDeps = ./deps.json; From 5dec6203075d4131c542cb49bae2cabc441d14eb Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 00:50:44 +0000 Subject: [PATCH 28/44] cosign: 3.0.2 -> 3.0.3 --- pkgs/by-name/co/cosign/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/co/cosign/package.nix b/pkgs/by-name/co/cosign/package.nix index 6961fed1c765..cf0ac99c6ec5 100644 --- a/pkgs/by-name/co/cosign/package.nix +++ b/pkgs/by-name/co/cosign/package.nix @@ -13,13 +13,13 @@ buildGoModule (finalAttrs: { pname = "cosign"; - version = "3.0.2"; + version = "3.0.3"; src = fetchFromGitHub { owner = "sigstore"; repo = "cosign"; rev = "v${finalAttrs.version}"; - hash = "sha256-5jCO2LW7nzbzo+de0fpxBcVASDmINB6yFerkQZlo2o8="; + hash = "sha256-2cCeSG3ELkSWL1ZJ/bMGm4Nj7OZgewyUwu8lblRjCh4="; }; buildInputs = lib.optional (stdenv.hostPlatform.isLinux && pivKeySupport) (lib.getDev pcsclite); @@ -29,7 +29,7 @@ buildGoModule (finalAttrs: { installShellFiles ]; - vendorHash = "sha256-hedkslhyAsictu9Cbw7CgreoWa1StLpTt8oTPNLr5fc="; + vendorHash = "sha256-LTJoEEOGrmgQi+8T++wNMfs+jdWI+R+Xo1vBXuoLBMM="; subPackages = [ "cmd/cosign" From 569a7ce80b34a553808b61234a055d350690bde7 Mon Sep 17 00:00:00 2001 From: botnk Date: Wed, 10 Dec 2025 01:43:45 +0000 Subject: [PATCH 29/44] shader-slang: 2025.23.2 -> 2025.24 Changelog: https://github.com/shader-slang/slang/releases/tag/v2025.24 --- pkgs/by-name/sh/shader-slang/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sh/shader-slang/package.nix b/pkgs/by-name/sh/shader-slang/package.nix index ccec4829c59e..541a45c7d424 100644 --- a/pkgs/by-name/sh/shader-slang/package.nix +++ b/pkgs/by-name/sh/shader-slang/package.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "shader-slang"; - version = "2025.23.2"; + version = "2025.24"; src = fetchFromGitHub { owner = "shader-slang"; repo = "slang"; tag = "v${finalAttrs.version}"; - hash = "sha256-0ObeF738eBPBR1ezY2yOHSXHyz1l6JRr7RSXc65ahEw="; + hash = "sha256-lOvPEUsweyBIf/ryoCDnwBTkvz4J9xatkNSWDvM8zWc="; fetchSubmodules = true; }; From 88a9907848c91819a7ae7a6e8c9f6de0bae76416 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 01:45:57 +0000 Subject: [PATCH 30/44] myks: 5.3.0 -> 5.4.0 --- pkgs/by-name/my/myks/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/my/myks/package.nix b/pkgs/by-name/my/myks/package.nix index 25e5da899c68..4e1ad54ad9ef 100644 --- a/pkgs/by-name/my/myks/package.nix +++ b/pkgs/by-name/my/myks/package.nix @@ -10,16 +10,16 @@ buildGoModule rec { pname = "myks"; - version = "5.3.0"; + version = "5.4.0"; src = fetchFromGitHub { owner = "mykso"; repo = "myks"; tag = "v${version}"; - hash = "sha256-oPes5a7szsiYe4B7kYC8io2G7SBVmON+p2sDF21PNxM="; + hash = "sha256-Q8Qtxb+eUaw0eX3F/jkgKKHmjApZ/UsTE+LeJ1FKoCg="; }; - vendorHash = "sha256-EZnmEYIGvE3BN7S70TsiE1Dkup73bORFx1rYx0cB8Qk="; + vendorHash = "sha256-wHP/l8Evu6F9Kzm88EQv9JMONI3OlWB3jB+88RgzKmo="; subPackages = "."; From e7da01783e7adf03cd8a1859d0b2fdd84102bd35 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 01:54:23 +0000 Subject: [PATCH 31/44] openapi-python-client: 0.27.1 -> 0.28.0 --- pkgs/by-name/op/openapi-python-client/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/op/openapi-python-client/package.nix b/pkgs/by-name/op/openapi-python-client/package.nix index b7a23b4a0a88..23b3f36f454d 100644 --- a/pkgs/by-name/op/openapi-python-client/package.nix +++ b/pkgs/by-name/op/openapi-python-client/package.nix @@ -11,7 +11,7 @@ python3Packages.buildPythonApplication rec { pname = "openapi-python-client"; - version = "0.27.1"; + version = "0.28.0"; pyproject = true; src = fetchFromGitHub { @@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec { owner = "openapi-generators"; repo = "openapi-python-client"; tag = "v${version}"; - hash = "sha256-T8EC9wpkHVps7rNgwLx7VdIt1O7v021gUZHbVY6QT/Q="; + hash = "sha256-CxFadu6HaGw78GNAQegjC0ZVtpqaZtUOKLVWoMKkPl8="; }; nativeBuildInputs = [ From 4161e05495c3d3b8a4fdc8728d96c7827e747cc2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 05:22:37 +0000 Subject: [PATCH 32/44] fabric-ai: 1.4.336 -> 1.4.340 --- pkgs/by-name/fa/fabric-ai/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/fa/fabric-ai/package.nix b/pkgs/by-name/fa/fabric-ai/package.nix index d4f5e8cf688f..21b6adf4c32d 100644 --- a/pkgs/by-name/fa/fabric-ai/package.nix +++ b/pkgs/by-name/fa/fabric-ai/package.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "fabric-ai"; - version = "1.4.336"; + version = "1.4.340"; src = fetchFromGitHub { owner = "danielmiessler"; repo = "fabric"; tag = "v${version}"; - hash = "sha256-E+EryezHZU81KKv/jr/rKDLEYL7yNRHMouAebDMmkTM="; + hash = "sha256-tXT5Xc/izx8tBqj0plvjVLMhpZlGzEIGx2qEPO3xmVM="; }; vendorHash = "sha256-qWaMBhjt20WAIhDcjY4oOFBT+neJiXg0N2WsPasuHSU="; From 087d9c5de7d8043186f708228bb5cde4907ad824 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 05:37:33 +0000 Subject: [PATCH 33/44] gamescope: 3.16.17 -> 3.16.18 --- pkgs/by-name/ga/gamescope/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ga/gamescope/package.nix b/pkgs/by-name/ga/gamescope/package.nix index 3171d0d56e19..d9584ad0d204 100644 --- a/pkgs/by-name/ga/gamescope/package.nix +++ b/pkgs/by-name/ga/gamescope/package.nix @@ -49,14 +49,14 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "gamescope"; - version = "3.16.17"; + version = "3.16.18"; src = fetchFromGitHub { owner = "ValveSoftware"; repo = "gamescope"; tag = finalAttrs.version; fetchSubmodules = true; - hash = "sha256-eKAOlmU0wc1DViZkUSrPFVjypa/kGfe+1+0lkXbaVJI="; + hash = "sha256-/5n1ZpZYg2KzlON7cgde96sTCO/jvvmr0AkWYF8IBGU="; }; patches = [ From c37b9e8965a151d50ecf093a02787b3f93277867 Mon Sep 17 00:00:00 2001 From: Michael Hoang Date: Wed, 10 Dec 2025 06:59:23 +0100 Subject: [PATCH 34/44] joplin-desktop: fix Backup plugin failing to creating archive redux --- pkgs/by-name/jo/joplin-desktop/package.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/by-name/jo/joplin-desktop/package.nix b/pkgs/by-name/jo/joplin-desktop/package.nix index 683875115f42..6d101a268506 100644 --- a/pkgs/by-name/jo/joplin-desktop/package.nix +++ b/pkgs/by-name/jo/joplin-desktop/package.nix @@ -211,6 +211,15 @@ stdenv.mkDerivation (finalAttrs: { runHook postInstall ''; + # Necessary for builtin Backup plugin + postFixup = + lib.optionalString stdenv.hostPlatform.isLinux '' + chmod a+x $out/share/joplin-desktop/resources/build/7zip/7za + '' + + lib.optionalString stdenv.hostPlatform.isDarwin '' + chmod a+x $out/Applications/Joplin.app/Contents/Resources/build/7zip/7za + ''; + desktopItems = [ (makeDesktopItem { name = "joplin"; From 7daddb86fa1b4ed332321e9993ab3da37392bac9 Mon Sep 17 00:00:00 2001 From: Geoffry Song Date: Tue, 9 Dec 2025 22:34:31 -0800 Subject: [PATCH 35/44] difftastic: add rust-jemalloc-sys to buildInputs Fixes jemalloc page size on aarch64. --- pkgs/by-name/di/difftastic/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/di/difftastic/package.nix b/pkgs/by-name/di/difftastic/package.nix index 9d40a1637f34..bfbfdd8c2207 100644 --- a/pkgs/by-name/di/difftastic/package.nix +++ b/pkgs/by-name/di/difftastic/package.nix @@ -5,6 +5,7 @@ stdenv, versionCheckHook, nix-update-script, + rust-jemalloc-sys, }: rustPlatform.buildRustPackage (finalAttrs: { @@ -20,6 +21,8 @@ rustPlatform.buildRustPackage (finalAttrs: { cargoHash = "sha256-TTg5Cky1exlvJokIw1IFGbPq4eJe2xSAPsGgI7BU+Jw="; + buildInputs = [ rust-jemalloc-sys ]; + env = lib.optionalAttrs stdenv.hostPlatform.isStatic { RUSTFLAGS = "-C relocation-model=static"; }; # skip flaky tests From 85d825f730c29dce79f3293577c2983f84707e97 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 07:47:58 +0000 Subject: [PATCH 36/44] kubergrunt: 0.18.4 -> 0.18.5 --- pkgs/by-name/ku/kubergrunt/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ku/kubergrunt/package.nix b/pkgs/by-name/ku/kubergrunt/package.nix index b57c1a822ad9..afd0417a1a1c 100644 --- a/pkgs/by-name/ku/kubergrunt/package.nix +++ b/pkgs/by-name/ku/kubergrunt/package.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "kubergrunt"; - version = "0.18.4"; + version = "0.18.5"; src = fetchFromGitHub { owner = "gruntwork-io"; repo = "kubergrunt"; rev = "v${version}"; - sha256 = "sha256-yrAFm4dvujwxRVjMDlTAOjBpftxdv6kuQIIcbiVnFgU="; + sha256 = "sha256-aze/Cq5hFTRRGE1F3LLcZpWPTjpBlc2RHVkoBiP4RaU="; }; - vendorHash = "sha256-zpYc8DurFG6Hqmf8YDSapFbHIvE1HGs5yajrLWtewO4="; + vendorHash = "sha256-CNvYn/d26V0fqmPh2BbkzMgv3jWwWpGtOqowrND+igk="; # Disable tests since it requires network access and relies on the # presence of certain AWS infrastructure From 3d17c40ba772ccd5369ebee2c4ac183f81956a2f Mon Sep 17 00:00:00 2001 From: Ameer Taweel Date: Wed, 10 Dec 2025 08:23:35 +0000 Subject: [PATCH 37/44] miniflux: 2.2.14 -> 2.2.15 --- pkgs/by-name/mi/miniflux/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/mi/miniflux/package.nix b/pkgs/by-name/mi/miniflux/package.nix index 1b44b1b6e6b5..4e6870638aac 100644 --- a/pkgs/by-name/mi/miniflux/package.nix +++ b/pkgs/by-name/mi/miniflux/package.nix @@ -9,16 +9,16 @@ buildGoModule (finalAttrs: { pname = "miniflux"; - version = "2.2.14"; + version = "2.2.15"; src = fetchFromGitHub { owner = "miniflux"; repo = "v2"; tag = finalAttrs.version; - hash = "sha256-x6I5PMlQtsjvFtEyoaKKE6if3I0IBIyps4kPQL4c8aw="; + hash = "sha256-19i+TeBcPnI1Gfpf81gHE9sLvytsS4x1A5XU8oD7YIU="; }; - vendorHash = "sha256-X/6YvAhIHSOS3qaoR6/pa2b7EziZzx8B+CbYrJ9/mcM="; + vendorHash = "sha256-XrTmXAUABlTQaA3Z0vU0HQW5Q1e/Yg6yq690oZH8M+A="; nativeBuildInputs = [ installShellFiles ]; From 51c8b29875c3e3bf5d2ce4533bedf59e92c59ded Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 09:03:17 +0000 Subject: [PATCH 38/44] tbls: 1.91.4 -> 1.92.0 --- pkgs/by-name/tb/tbls/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/tb/tbls/package.nix b/pkgs/by-name/tb/tbls/package.nix index e8184a477f8e..935a58475032 100644 --- a/pkgs/by-name/tb/tbls/package.nix +++ b/pkgs/by-name/tb/tbls/package.nix @@ -9,13 +9,13 @@ buildGoModule rec { pname = "tbls"; - version = "1.91.4"; + version = "1.92.0"; src = fetchFromGitHub { owner = "k1LoW"; repo = "tbls"; tag = "v${version}"; - hash = "sha256-h1FDCC6+KYkrtJoGuBnoVnLgumb3kk720XXm+Pd0koE="; + hash = "sha256-Z+X7OUT38OB7559s+bOlraL9F2qSnhpzpQTYt07DYD0="; }; vendorHash = "sha256-3Y3GsVMImo0oCigAyQ2SPOucllrfkD9oj9o3ESk47eA="; From d9853b56d2e80f5e8180dafd9661f07336cd9cf4 Mon Sep 17 00:00:00 2001 From: Yureka Date: Wed, 10 Dec 2025 10:31:00 +0100 Subject: [PATCH 39/44] irrd: 4.5.0b1 -> 4.5.0b2 Diff: https://github.com/irrdnet/irrd/compare/v4.5.0b1...v4.5.0b2 --- pkgs/by-name/ir/irrd/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ir/irrd/package.nix b/pkgs/by-name/ir/irrd/package.nix index b9d5343b0031..a7378039daf6 100644 --- a/pkgs/by-name/ir/irrd/package.nix +++ b/pkgs/by-name/ir/irrd/package.nix @@ -41,14 +41,14 @@ in py.pkgs.buildPythonPackage rec { pname = "irrd"; - version = "4.5.0b1"; + version = "4.5.0b2"; pyproject = true; src = fetchFromGitHub { owner = "irrdnet"; repo = "irrd"; rev = "v${version}"; - hash = "sha256-Hr/PbC4N/yrYeQ7bTfqIchDFmaL3c4afxV1XS7FR1F8="; + hash = "sha256-MMacxjF0LLSdInSwXwpHJUTdUQJ6sl4yu83vWR/A4Jc="; }; postPatch = '' From 1e9bda750454191047434879c111c2edb2094370 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 09:46:52 +0000 Subject: [PATCH 40/44] undertime: 4.3.0 -> 4.3.1 --- pkgs/by-name/un/undertime/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/un/undertime/package.nix b/pkgs/by-name/un/undertime/package.nix index 89b1c7819bcf..f600bd118676 100644 --- a/pkgs/by-name/un/undertime/package.nix +++ b/pkgs/by-name/un/undertime/package.nix @@ -6,14 +6,14 @@ python3Packages.buildPythonApplication rec { pname = "undertime"; - version = "4.3.0"; + version = "4.3.1"; pyproject = true; src = fetchFromGitLab { owner = "anarcat"; repo = "undertime"; tag = version; - hash = "sha256-sQI+fpg5PFGCsS9xikMTi4Ad76TayP13UgZag6CRBxE="; + hash = "sha256-TOrsQIi+ZcUQUGhb+iX8seuwNfKrrBL2DIcLK9wyjn0="; }; nativeBuildInputs = with python3Packages; [ From d81147f1f1f508c6a62b7182b991aa1500e48cbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Wed, 10 Dec 2025 09:41:58 +0000 Subject: [PATCH 41/44] claude-code: 2.0.62 -> 2.0.64 --- pkgs/by-name/cl/claude-code/package-lock.json | 4 ++-- pkgs/by-name/cl/claude-code/package.nix | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/package-lock.json b/pkgs/by-name/cl/claude-code/package-lock.json index 52b7d69e4a56..7d52ba3283fb 100644 --- a/pkgs/by-name/cl/claude-code/package-lock.json +++ b/pkgs/by-name/cl/claude-code/package-lock.json @@ -1,12 +1,12 @@ { "name": "@anthropic-ai/claude-code", - "version": "2.0.62", + "version": "2.0.64", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@anthropic-ai/claude-code", - "version": "2.0.62", + "version": "2.0.64", "license": "SEE LICENSE IN README.md", "bin": { "claude": "cli.js" diff --git a/pkgs/by-name/cl/claude-code/package.nix b/pkgs/by-name/cl/claude-code/package.nix index d1462c2979d0..b58872fb6cc6 100644 --- a/pkgs/by-name/cl/claude-code/package.nix +++ b/pkgs/by-name/cl/claude-code/package.nix @@ -11,14 +11,14 @@ }: buildNpmPackage (finalAttrs: { pname = "claude-code"; - version = "2.0.62"; + version = "2.0.64"; src = fetchzip { url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${finalAttrs.version}.tgz"; - hash = "sha256-fsYTcbn1wvysECAZfiBCAM9tnNx5bIC7QTKaGw5rfjQ="; + hash = "sha256-YkdJHr63b9ExU3rOFWt7GTiVRxeAJHmRRoozWEqlFEY="; }; - npmDepsHash = "sha256-q1jBjwVxc0mP+rbW3VHYp85Q14cjilzIWq3kNpjsxLY="; + npmDepsHash = "sha256-x1YerDQP1+kNS+mdIqSAE1e81fsd855KdJM+VBxaUBQ="; postPatch = '' cp ${./package-lock.json} package-lock.json From 7b60b88fd50e62677bd4fbc73646d6ad45c2a479 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 10:23:04 +0000 Subject: [PATCH 42/44] terraform-providers.hashicorp_azurerm: 4.54.0 -> 4.55.0 --- .../networking/cluster/terraform-providers/providers.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 9d9e0a4487d2..1e3b092975de 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -516,11 +516,11 @@ "vendorHash": null }, "hashicorp_azurerm": { - "hash": "sha256-t74oNkRchvTn3eletKAFlriOn/BOFUwNLK6NxILawpg=", + "hash": "sha256-/q33S2+m7C/ZYSnTqb3NDVdPPufSWTNs/3JlcGc9JCs=", "homepage": "https://registry.terraform.io/providers/hashicorp/azurerm", "owner": "hashicorp", "repo": "terraform-provider-azurerm", - "rev": "v4.54.0", + "rev": "v4.55.0", "spdx": "MPL-2.0", "vendorHash": null }, From 69c7504aa61226529fc4bc095be11e9f201e488c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Schr=C3=B6der?= Date: Sun, 5 Oct 2025 16:53:02 +0200 Subject: [PATCH 43/44] doc: align formatting in dependency type tables --- doc/stdenv/cross-compilation.chapter.md | 26 ++++++++++++------------- doc/stdenv/stdenv.chapter.md | 16 +++++++-------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/doc/stdenv/cross-compilation.chapter.md b/doc/stdenv/cross-compilation.chapter.md index ca56d8816c3a..26630b78fd73 100644 --- a/doc/stdenv/cross-compilation.chapter.md +++ b/doc/stdenv/cross-compilation.chapter.md @@ -86,7 +86,7 @@ If both the dependency and depending packages aren't compilers or other machine- Finally, if the depending package is a compiler or other machine-code-producing tool, it might need dependencies that run at "emit time". This is for compilers that (regrettably) insist on being built together with their source languages' standard libraries. Assuming build != host != target, a run-time dependency of the standard library cannot be run at the compiler's build time or run time, but only at the run time of code emitted by the compiler. -Putting this all together, that means that we have dependency types of the form "X→ E", which means that the dependency executes on X and emits code for E; each of X and E can be `build`, `host`, or `target`, and E can be `*` to indicate that the dependency is not a compiler-like package. +Putting this all together, that means that we have dependency types of the form `X → E`, which means that the dependency executes on `X` and emits code for `E`; each of `X` and `E` can be `build`, `host`, or `target`, and `E` can be `*` to indicate that the dependency is not a compiler-like package. Dependency types describe the relationships that a package has with each of its transitive dependencies. You could think of attaching one or more dependency types to each of the formal parameters at the top of a package's `.nix` file, as well as to all of *their* formal parameters, and so on. Triples like `(foo, bar, baz)`, on the other hand, are a property of an instantiated derivation -- you could would attach a triple `(mips-linux, mips-linux, sparc-solaris)` to a `.drv` file in `/nix/store`. @@ -94,17 +94,17 @@ Only nine dependency types matter in practice: #### Possible dependency types {#possible-dependency-types} -| Dependency type | Dependency’s host platform | Dependency’s target platform | -|-----------------|----------------------------|------------------------------| -| build → * | build | (none) | -| build → build | build | build | -| build → host | build | host | -| build → target | build | target | -| host → * | host | (none) | -| host → host | host | host | -| host → target | host | target | -| target → * | target | (none) | -| target → target | target | target | +| Dependency type | Dependency’s host platform | Dependency’s target platform | +|-------------------|----------------------------|------------------------------| +| `build → *` | `build` | (none) | +| `build → build` | `build` | `build` | +| `build → host` | `build` | `host` | +| `build → target` | `build` | `target` | +| `host → *` | `host` | (none) | +| `host → host` | `host` | `host` | +| `host → target` | `host` | `target` | +| `target → *` | `target` | (none) | +| `target → target` | `target` | `target` | Let's use `g++` as an example to make this table clearer. `g++` is a C++ compiler written in C. Suppose we are building `g++` with a `(build, host, target)` platform triple of `(foo, bar, baz)`. This means we are using a `foo`-machine to build a copy of `g++` which will run on a `bar`-machine and emit binaries for the `baz`-machine. @@ -235,7 +235,7 @@ One would think that `localSystem` and `crossSystem` overlap horribly with the t ### Implementation of dependencies {#ssec-cross-dependency-implementation} -The categories of dependencies developed in [](#ssec-cross-dependency-categorization) are specified as lists of derivations given to `mkDerivation`, as documented in [](#ssec-stdenv-dependencies). In short, each list of dependencies for "host → target" is called `deps` (where `host`, and `target` values are either `build`, `host`, or `target`), with exceptions for backwards compatibility that `depsBuildHost` is instead called `nativeBuildInputs` and `depsHostTarget` is instead called `buildInputs`. Nixpkgs is now structured so that each `deps` is automatically taken from `pkgs`. (These `pkgs`s are quite new, so there is no special case for `nativeBuildInputs` and `buildInputs`.) For example, `pkgsBuildHost.gcc` should be used at build-time, while `pkgsHostTarget.gcc` should be used at run-time. +The categories of dependencies developed in [](#ssec-cross-dependency-categorization) are specified as lists of derivations given to `mkDerivation`, as documented in [](#ssec-stdenv-dependencies). In short, each list of dependencies for `host → target` is called `deps` (where `host`, and `target` values are either `build`, `host`, or `target`), with exceptions for backwards compatibility that `depsBuildHost` is instead called `nativeBuildInputs` and `depsHostTarget` is instead called `buildInputs`. Nixpkgs is now structured so that each `deps` is automatically taken from `pkgs`. (These `pkgs`s are quite new, so there is no special case for `nativeBuildInputs` and `buildInputs`.) For example, `pkgsBuildHost.gcc` should be used at build-time, while `pkgsHostTarget.gcc` should be used at run-time. Now, for most of Nixpkgs's history, there were no `pkgs` attributes, and most packages have not been refactored to use it explicitly. Prior to those, there were just `buildPackages`, `pkgs`, and `targetPackages`. Those are now redefined as aliases to `pkgsBuildHost`, `pkgsHostTarget`, and `pkgsTargetTarget`. It is acceptable, even recommended, to use them for libraries to show that the host platform is irrelevant. diff --git a/doc/stdenv/stdenv.chapter.md b/doc/stdenv/stdenv.chapter.md index 2a0b239740c0..6013436f2b8a 100644 --- a/doc/stdenv/stdenv.chapter.md +++ b/doc/stdenv/stdenv.chapter.md @@ -327,14 +327,14 @@ Dependency propagation takes cross compilation into account, meaning that depend To determine the exact rules for dependency propagation, we start by assigning to each dependency a couple of ternary numbers (`-1` for `build`, `0` for `host`, and `1` for `target`) representing its [dependency type](#possible-dependency-types), which captures how its host and target platforms are each "offset" from the depending derivation’s host and target platforms. The following table summarize the different combinations that can be obtained: -| `host → target` | attribute name | offset | typical purpose | -| ------------------- | ------------------- | -------- | --------------------------------------------- | -| `build --> build` | `depsBuildBuild` | `-1, -1` | compilers for build helpers | -| `build --> host` | `nativeBuildInputs` | `-1, 0` | build tools, compilers, setup hooks | -| `build --> target` | `depsBuildTarget` | `-1, 1` | compilers to build stdlibs to run on target | -| `host --> host` | `depsHostHost` | `0, 0` | compilers to build C code at runtime (rare) | -| `host --> target` | `buildInputs` | `0, 1` | libraries | -| `target --> target` | `depsTargetTarget` | `1, 1` | stdlibs to run on target | +| Dependency type | attribute name | offset | typical purpose | +| ----------------- | ------------------- | -------- | --------------------------------------------- | +| `build → build` | `depsBuildBuild` | `-1, -1` | compilers for build helpers | +| `build → host` | `nativeBuildInputs` | `-1, 0` | build tools, compilers, setup hooks | +| `build → target` | `depsBuildTarget` | `-1, 1` | compilers to build stdlibs to run on target | +| `host → host` | `depsHostHost` | `0, 0` | compilers to build C code at runtime (rare) | +| `host → target` | `buildInputs` | `0, 1` | libraries | +| `target → target` | `depsTargetTarget` | `1, 1` | stdlibs to run on target | Algorithmically, we traverse propagated inputs, accumulating every propagated dependency’s propagated dependencies and adjusting them to account for the “shift in perspective” described by the current dependency’s platform offsets. This results in a sort of transitive closure of the dependency relation, with the offsets being approximately summed when two dependency links are combined. We also prune transitive dependencies whose combined offsets go out-of-bounds, which can be viewed as a filter over that transitive closure removing dependencies that are blatantly absurd. From 834d451cf5d2f5a505326f9ea270ff6eea699146 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 10 Dec 2025 11:33:45 +0000 Subject: [PATCH 44/44] terraform-providers.splunk-terraform_signalfx: 9.22.3 -> 9.23.0 --- .../networking/cluster/terraform-providers/providers.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 9d9e0a4487d2..17a895214f76 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1237,13 +1237,13 @@ "vendorHash": "sha256-cX5K221Jnq701Nb+2bC1LmXVL7YvkZ8dkc2wYjDNOSw=" }, "splunk-terraform_signalfx": { - "hash": "sha256-nhep3042bOUSQKCsS8gOIYLImgXnHmBNsDlXWOCixwI=", + "hash": "sha256-4szC65B96XkinJlGq2tTJBwnIYvjILnbSQtiA5Ujl64=", "homepage": "https://registry.terraform.io/providers/splunk-terraform/signalfx", "owner": "splunk-terraform", "repo": "terraform-provider-signalfx", - "rev": "v9.22.3", + "rev": "v9.23.0", "spdx": "MPL-2.0", - "vendorHash": "sha256-epwHFW1lGk/HUtv5bS0Dyi59POjICsoJln2xgmH5320=" + "vendorHash": "sha256-HWAUI0mowVP8FPw44xYaFOTh6jjkfXa7fuPk2zoSZJ8=" }, "spotinst_spotinst": { "hash": "sha256-AkuuUyMrc4GInuK+NNhTDQgW3vM/EupV4lkCV5Bn+n8=",