From 6cf5372676dff4f71a4120541d2cd5ee04fdfa7d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 2 Jun 2026 07:15:33 +0000 Subject: [PATCH 01/50] rust-analyzer-unwrapped: 2026-04-27 -> 2026-06-01 (cherry picked from commit a1bbbb0053b9f58f7586d444c24dc9254c3a1dbb) --- pkgs/by-name/ru/rust-analyzer-unwrapped/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ru/rust-analyzer-unwrapped/package.nix b/pkgs/by-name/ru/rust-analyzer-unwrapped/package.nix index dbf0e89c1f3e..730d42925677 100644 --- a/pkgs/by-name/ru/rust-analyzer-unwrapped/package.nix +++ b/pkgs/by-name/ru/rust-analyzer-unwrapped/package.nix @@ -13,15 +13,15 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "rust-analyzer-unwrapped"; - version = "2026-04-27"; + version = "2026-06-01"; - cargoHash = "sha256-QXEJhBzKof1UONW2FwQUeO6UAo1Xfm2nPpOo1uNiRM8="; + cargoHash = "sha256-5njpo8AKVOSgCFwuqTL9sVODyjgsEfg5kHI3qM0DK9k="; src = fetchFromGitHub { owner = "rust-lang"; repo = "rust-analyzer"; rev = finalAttrs.version; - hash = "sha256-f8YJfwAOsLFpIoqZuX3yF69UvMLrkx7iVzMH1pJU7cM="; + hash = "sha256-yJIyzYb6LhvbVMmj2EH62Mt0JHU3pQefr+oPEgaoaI8="; }; cargoBuildFlags = [ From 058667664542f5be944102ba41c7bd4785b9d3a2 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 9 Jun 2026 01:42:19 +0200 Subject: [PATCH 02/50] moonfire-nvr: 0.7.20 -> 0.7.31 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.21 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.22 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.23 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.24 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.25 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.26 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.27 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.28 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.29 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.30 https://github.com/scottlamb/moonfire-nvr/releases/tag/v0.7.31 (cherry picked from commit 596c89a917db556bc50b06fc088a36d3dd197343) --- pkgs/by-name/mo/moonfire-nvr/package.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/mo/moonfire-nvr/package.nix b/pkgs/by-name/mo/moonfire-nvr/package.nix index 42a9e5e1db0e..2cbfc8bcb29e 100644 --- a/pkgs/by-name/mo/moonfire-nvr/package.nix +++ b/pkgs/by-name/mo/moonfire-nvr/package.nix @@ -9,19 +9,19 @@ testers, moonfire-nvr, nodejs, - pnpm_9, + pnpm_10, fetchPnpmDeps, pnpmConfigHook, }: let pname = "moonfire-nvr"; - version = "0.7.20"; + version = "0.7.31"; src = fetchFromGitHub { owner = "scottlamb"; repo = "moonfire-nvr"; tag = "v${version}"; - hash = "sha256-0EaGqZUmYGxLHcJAhlbG2wZMDiVv8U1bcTQqMx0aTo0="; + hash = "sha256-QgsaiWcXeU4y7z9mcqUAl4mQ/M4p38yRjOB/4MKlpVA="; }; ui = stdenv.mkDerivation (finalAttrs: { inherit version src; @@ -30,14 +30,14 @@ let nativeBuildInputs = [ nodejs pnpmConfigHook - pnpm_9 + pnpm_10 ]; pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) pname version src; - pnpm = pnpm_9; + pnpm = pnpm_10; sourceRoot = "${finalAttrs.src.name}/ui"; - fetcherVersion = 3; - hash = "sha256-1bkuou8jfWqdev4ZlpqvC4BRrFj//LK6ImVvSeMUEuM="; + fetcherVersion = 4; + hash = "sha256-U/SHOVlx0kj1hfl09KcPg3CQZX9HZE5SghVEThWL1RA="; }; installPhase = '' runHook preInstall @@ -53,7 +53,7 @@ rustPlatform.buildRustPackage { sourceRoot = "${src.name}/server"; - cargoHash = "sha256-+L4XofUFvhJDPGv4fAGYXFNpuNd01k/P63LH2tXXHE0="; + cargoHash = "sha256-TDFe5pD+8eSwvw0h9GLM+JfODlSBU1CO8fw4FVjy8xk="; env.VERSION = "v${version}"; From b1977b1cd8e4bd82f7160c81b4ecf93c4d1833b4 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 9 Jun 2026 02:13:06 +0200 Subject: [PATCH 03/50] moonfire-nvr: add update script (cherry picked from commit 1591fcddab710d94ba41d81f7eb2b968df342b6d) --- pkgs/by-name/mo/moonfire-nvr/package.nix | 68 ++++++++++-------------- pkgs/by-name/mo/moonfire-nvr/ui.nix | 41 ++++++++++++++ 2 files changed, 68 insertions(+), 41 deletions(-) create mode 100644 pkgs/by-name/mo/moonfire-nvr/ui.nix diff --git a/pkgs/by-name/mo/moonfire-nvr/package.nix b/pkgs/by-name/mo/moonfire-nvr/package.nix index 2cbfc8bcb29e..7c8bbc2cbf8d 100644 --- a/pkgs/by-name/mo/moonfire-nvr/package.nix +++ b/pkgs/by-name/mo/moonfire-nvr/package.nix @@ -1,6 +1,6 @@ { lib, - stdenv, + callPackage, rustPlatform, fetchFromGitHub, pkg-config, @@ -8,54 +8,26 @@ sqlite, testers, moonfire-nvr, - nodejs, - pnpm_10, - fetchPnpmDeps, - pnpmConfigHook, + nix-update, + writeShellApplication, }: -let +rustPlatform.buildRustPackage (finalAttrs: { pname = "moonfire-nvr"; version = "0.7.31"; + src = fetchFromGitHub { owner = "scottlamb"; repo = "moonfire-nvr"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-QgsaiWcXeU4y7z9mcqUAl4mQ/M4p38yRjOB/4MKlpVA="; }; - ui = stdenv.mkDerivation (finalAttrs: { - inherit version src; - pname = "${pname}-ui"; - sourceRoot = "${src.name}/ui"; - nativeBuildInputs = [ - nodejs - pnpmConfigHook - pnpm_10 - ]; - pnpmDeps = fetchPnpmDeps { - inherit (finalAttrs) pname version src; - pnpm = pnpm_10; - sourceRoot = "${finalAttrs.src.name}/ui"; - fetcherVersion = 4; - hash = "sha256-U/SHOVlx0kj1hfl09KcPg3CQZX9HZE5SghVEThWL1RA="; - }; - installPhase = '' - runHook preInstall - cp -r public $out - - runHook postInstall - ''; - }); -in -rustPlatform.buildRustPackage { - inherit pname version src; - - sourceRoot = "${src.name}/server"; + sourceRoot = "${finalAttrs.src.name}/server"; cargoHash = "sha256-TDFe5pD+8eSwvw0h9GLM+JfODlSBU1CO8fw4FVjy8xk="; - env.VERSION = "v${version}"; + env.VERSION = "v${finalAttrs.version}"; nativeBuildInputs = [ pkg-config @@ -68,26 +40,40 @@ rustPlatform.buildRustPackage { postInstall = '' mkdir -p $out/lib - ln -s ${ui} $out/lib/ui + ln -s ${moonfire-nvr.ui} $out/lib/ui ''; doCheck = false; passthru = { - inherit ui; + ui = callPackage ./ui.nix { }; tests.version = testers.testVersion { package = moonfire-nvr; command = "moonfire-nvr --version"; - version = "Version: v${version}"; + version = "Version: v${finalAttrs.version}"; }; + updateScript = lib.getExe (writeShellApplication { + name = "update-moonfire-nvr"; + + runtimeInputs = [ + nix-update + ]; + + text = '' + set -euo pipefail + + nix-update moonfire-nvr + nix-update moonfire-nvr.ui --version=skip + ''; + }); }; meta = { description = "Moonfire NVR, a security camera network video recorder"; homepage = "https://github.com/scottlamb/moonfire-nvr"; - changelog = "https://github.com/scottlamb/moonfire-nvr/releases/tag/v${version}"; + changelog = "https://github.com/scottlamb/moonfire-nvr/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.gpl3Only; maintainers = [ ]; mainProgram = "moonfire-nvr"; }; -} +}) diff --git a/pkgs/by-name/mo/moonfire-nvr/ui.nix b/pkgs/by-name/mo/moonfire-nvr/ui.nix new file mode 100644 index 000000000000..b66bbf87a45a --- /dev/null +++ b/pkgs/by-name/mo/moonfire-nvr/ui.nix @@ -0,0 +1,41 @@ +{ + stdenv, + moonfire-nvr, + nodejs, + pnpmConfigHook, + pnpm_10, + fetchPnpmDeps, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "moonfire-nvr-ui"; + inherit (moonfire-nvr) version src; + + sourceRoot = "${finalAttrs.src.name}/ui"; + + nativeBuildInputs = [ + nodejs + pnpmConfigHook + pnpm_10 + ]; + + pnpmDeps = fetchPnpmDeps { + inherit (finalAttrs) pname version src; + pnpm = pnpm_10; + sourceRoot = "${finalAttrs.src.name}/ui"; + fetcherVersion = 4; + hash = "sha256-U/SHOVlx0kj1hfl09KcPg3CQZX9HZE5SghVEThWL1RA="; + }; + + installPhase = '' + runHook preInstall + + cp -r public $out + + runHook postInstall + ''; + + meta = moonfire-nvr.meta // { + description = "Moonfire UI"; + }; +}) From c67849b1acfba0d305bd15b21fd16de0ac59927f Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Thu, 18 Jun 2026 22:23:52 +0100 Subject: [PATCH 04/50] bind: 9.20.23 -> 9.20.24 Changes: https://bind9.readthedocs.io/en/bind-9.20/notes.html#notes-for-bind-9-20-24 (cherry picked from commit bc7d3e5dda98e8bb1a813b817f327372cb26f5a1) --- pkgs/by-name/bi/bind/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/bi/bind/package.nix b/pkgs/by-name/bi/bind/package.nix index 2f12ebf30ea0..c47a0cb1433e 100644 --- a/pkgs/by-name/bi/bind/package.nix +++ b/pkgs/by-name/bi/bind/package.nix @@ -29,11 +29,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "bind"; - version = "9.20.23"; + version = "9.20.24"; src = fetchurl { url = "https://downloads.isc.org/isc/bind9/${finalAttrs.version}/bind-${finalAttrs.version}.tar.xz"; - hash = "sha256-XUR1rtP55QDvVUsrFNlyvbg9M94hSps76SkY6kaQg3E="; + hash = "sha256-mJ/vH8iOpZ0EzYb4VNylpGFqIKmWi83ePBo2aKs2vgg="; }; outputs = [ From 0a361c0c6a65b8a2f5beef71c1cd84d7972fe7e0 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sat, 27 Jun 2026 14:37:05 +0200 Subject: [PATCH 05/50] bind: enable tests, always disable time_test partially (cherry picked from commit a5f4424afe571e1644b9d299cf46bbd7a1288a21) --- pkgs/by-name/bi/bind/package.nix | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/pkgs/by-name/bi/bind/package.nix b/pkgs/by-name/bi/bind/package.nix index c47a0cb1433e..84d905730c01 100644 --- a/pkgs/by-name/bi/bind/package.nix +++ b/pkgs/by-name/bi/bind/package.nix @@ -110,30 +110,15 @@ stdenv.mkDerivation (finalAttrs: { enableParallelBuilding = true; strictDeps = true; - doCheck = false; - # TODO: investigate failures; see this and linked discussions: - # https://github.com/NixOS/nixpkgs/pull/192962 - /* - doCheck = with stdenv.hostPlatform; !isStatic && !(isAarch64 && isLinux) - # https://gitlab.isc.org/isc-projects/bind9/-/issues/4269 - && !is32bit; - */ + doCheck = with stdenv.hostPlatform; !isStatic && isLinux; checkTarget = "unit"; checkInputs = [ cmocka - ] - ++ lib.optionals (!stdenv.hostPlatform.isMusl) [ - tzdata ]; - preCheck = - lib.optionalString stdenv.hostPlatform.isMusl '' - # musl doesn't respect TZDIR, skip timezone-related tests - sed -i '/^ISC_TEST_ENTRY(isc_time_formatISO8601L/d' tests/isc/time_test.c - '' - + lib.optionalString stdenv.hostPlatform.isDarwin '' - # Test timeouts on Darwin - sed -i '/^ISC_TEST_ENTRY(tcpdns_recv_one/d' tests/isc/netmgr_test.c - ''; + preCheck = '' + # skip timezone-related tests, they are flaky inside the nix sandbox + sed -i '/^ISC_TEST_ENTRY(isc_time_formatISO8601L/d' tests/isc/time_test.c + ''; postFixup = '' remove-references-to -t "$out" "$dnsutils/bin/delv" From 0a69d76548af9c7efc4068c8ee1219acb6842cc9 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sat, 27 Jun 2026 14:37:28 +0200 Subject: [PATCH 06/50] bind: enable structuredAttrs (cherry picked from commit 3af077a023c39694c0c72d75f3c4e1922873c149) --- pkgs/by-name/bi/bind/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/bi/bind/package.nix b/pkgs/by-name/bi/bind/package.nix index 84d905730c01..383a26bfcd6e 100644 --- a/pkgs/by-name/bi/bind/package.nix +++ b/pkgs/by-name/bi/bind/package.nix @@ -109,6 +109,7 @@ stdenv.mkDerivation (finalAttrs: { enableParallelBuilding = true; strictDeps = true; + __structuredAttrs = true; doCheck = with stdenv.hostPlatform; !isStatic && isLinux; checkTarget = "unit"; From e145b60c017819e1170c37939d9c5e93766dad05 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sat, 27 Jun 2026 14:37:49 +0200 Subject: [PATCH 07/50] bind: add bartoostveen as a maintainer (cherry picked from commit dc51fd7311aa5c07ebb050111a3e659d9ccc7287) --- pkgs/by-name/bi/bind/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/bi/bind/package.nix b/pkgs/by-name/bi/bind/package.nix index 383a26bfcd6e..5b6be7703dfd 100644 --- a/pkgs/by-name/bi/bind/package.nix +++ b/pkgs/by-name/bi/bind/package.nix @@ -152,7 +152,7 @@ stdenv.mkDerivation (finalAttrs: { changelog = "https://downloads.isc.org/isc/bind9/cur/${lib.versions.majorMinor finalAttrs.version}/doc/arm/html/notes.html#notes-for-bind-${ lib.replaceStrings [ "." ] [ "-" ] finalAttrs.version }"; - maintainers = [ ]; + maintainers = with lib.maintainers; [ bartoostveen ]; platforms = lib.platforms.unix; outputsToInstall = [ From 5f404f6dd47e405513f32b5a9d56a76eba530931 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Wed, 22 Jul 2026 13:48:27 +0200 Subject: [PATCH 08/50] bind: 9.20.24 -> 9.20.26 Changelog: https://downloads.isc.org/isc/bind9/cur/9.20/doc/arm/html/notes.html#notes-for-bind-9-20-26 (cherry picked from commit d4b42fbc4106dd472f6f028b4aa38c1b0f28350b) --- pkgs/by-name/bi/bind/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/bi/bind/package.nix b/pkgs/by-name/bi/bind/package.nix index 5b6be7703dfd..a58597fbd394 100644 --- a/pkgs/by-name/bi/bind/package.nix +++ b/pkgs/by-name/bi/bind/package.nix @@ -29,11 +29,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "bind"; - version = "9.20.24"; + version = "9.20.26"; src = fetchurl { url = "https://downloads.isc.org/isc/bind9/${finalAttrs.version}/bind-${finalAttrs.version}.tar.xz"; - hash = "sha256-mJ/vH8iOpZ0EzYb4VNylpGFqIKmWi83ePBo2aKs2vgg="; + hash = "sha256-VSSN7w+HDExGs95yl46pcmFRMVFmYxiKRWTcodIL81A="; }; outputs = [ From 6648bdd302093015e1c29d043b7a5240a4b1ebaa Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Fri, 31 Jul 2026 21:13:24 +0200 Subject: [PATCH 09/50] bind: disable tests on loongarch (cherry picked from commit 30e4c6ce1ad7bd8f6630edcc88fc325133927aa0) --- pkgs/by-name/bi/bind/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/bi/bind/package.nix b/pkgs/by-name/bi/bind/package.nix index a58597fbd394..9fa7ba683f44 100644 --- a/pkgs/by-name/bi/bind/package.nix +++ b/pkgs/by-name/bi/bind/package.nix @@ -111,7 +111,7 @@ stdenv.mkDerivation (finalAttrs: { strictDeps = true; __structuredAttrs = true; - doCheck = with stdenv.hostPlatform; !isStatic && isLinux; + doCheck = with stdenv.hostPlatform; !isStatic && isLinux && !isLoongArch64; checkTarget = "unit"; checkInputs = [ cmocka From 7e20c9ec2ee8f8f40d94e7b36c1925ae3590cbfd Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Sat, 1 Aug 2026 22:09:17 +1000 Subject: [PATCH 10/50] nano: 9.1 -> 9.2 Changelog: - Nano refuses to start when standard output is not a terminal. - Options --newbuffer and 'set newbuffer' were added as better synonyms of --multibuffer and 'set multibuffer'. - Legacy keystroke pairs ^W^T and ^/^T are recognized again. Signed-off-by: Fernando Rodrigues (cherry picked from commit 23a0a2fc2d6d35882422f9d5b5236e32434ab192) --- pkgs/by-name/na/nano/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/na/nano/package.nix b/pkgs/by-name/na/nano/package.nix index 2e68584027ee..69c06cece607 100644 --- a/pkgs/by-name/na/nano/package.nix +++ b/pkgs/by-name/na/nano/package.nix @@ -31,11 +31,11 @@ let in stdenv.mkDerivation rec { pname = "nano"; - version = "9.1"; + version = "9.2"; src = fetchurl { url = "mirror://gnu/nano/nano-${version}.tar.xz"; - hash = "sha256-X0d2QnTLdTI0nOCqIOwQ8ejoUabp+j62aBLEPRltsEI="; + hash = "sha256-Bey5kke3guils6Je1BAd0DSwI2kC90SbyXlbcXZC9+k="; }; nativeBuildInputs = [ texinfo ] ++ lib.optional enableNls gettext; From 2c6aaa351527afd0b52de6d289e4b68b164f05ce Mon Sep 17 00:00:00 2001 From: Tim Dortmann Date: Wed, 22 Jul 2026 12:06:17 +0200 Subject: [PATCH 11/50] vencord: 1.14.15 -> 1.15.0 Diff: https://github.com/Vendicated/Vencord/compare/v1.14.15...v1.15.0 (cherry picked from commit 11bedb6f9648b4b2076614c84c8318bbf823e504) --- pkgs/by-name/ve/vencord/fix-deps.patch | 12 ++++++------ pkgs/by-name/ve/vencord/package.nix | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/ve/vencord/fix-deps.patch b/pkgs/by-name/ve/vencord/fix-deps.patch index 52f8f59e56aa..468b00e4097c 100644 --- a/pkgs/by-name/ve/vencord/fix-deps.patch +++ b/pkgs/by-name/ve/vencord/fix-deps.patch @@ -1,15 +1,15 @@ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml -index 92c50e4e..67a306eb 100644 +index ddf8750c..655c9a7d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml -@@ -162,8 +162,8 @@ importers: - specifier: ^22.13.4 - version: 22.13.13 +@@ -160,8 +160,8 @@ importers: + specifier: ^26.0.1 + version: 26.0.1 '@types/react': - specifier: 18.3.1 - version: 18.3.1 -+ specifier: 19.0.12 -+ version: 19.0.12 ++ specifier: 19.1.0 ++ version: 19.1.0 '@types/react-dom': specifier: 18.3.1 version: 18.3.1 diff --git a/pkgs/by-name/ve/vencord/package.nix b/pkgs/by-name/ve/vencord/package.nix index bb443fed5f0e..491797b1f3aa 100644 --- a/pkgs/by-name/ve/vencord/package.nix +++ b/pkgs/by-name/ve/vencord/package.nix @@ -6,7 +6,7 @@ lib, nix-update, nodejs, - pnpm_10, + pnpm_11, fetchPnpmDeps, pnpmConfigHook, stdenv, @@ -18,24 +18,24 @@ buildWebExtension ? false, }: let - pnpm = pnpm_10; + pnpm = pnpm_11; in stdenv.mkDerivation (finalAttrs: { pname = "vencord"; - version = "1.14.15"; + version = "1.15.0"; src = fetchFromGitHub { owner = "Vendicated"; repo = "Vencord"; tag = "v${finalAttrs.version}"; - hash = "sha256-jQeLZa1rpKDkzWSpAqOa8snGRKLpv9xf9cwJ6hUwMzA="; + hash = "sha256-z3EY/nc9pHPjuMteY8ubYM3sqgjASznEG6B1U4mNCU4="; }; patches = [ ./fix-deps.patch ]; postPatch = '' substituteInPlace packages/vencord-types/package.json \ - --replace-fail '"@types/react": "18.3.1"' '"@types/react": "19.0.12"' + --replace-fail '"@types/react": "18.3.1"' '"@types/react": "19.1.0"' ''; pnpmDeps = fetchPnpmDeps { @@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: { ; inherit pnpm; fetcherVersion = 4; - hash = "sha256-pm5f6bGm07pzNCqpDHRyKFnuX2ZTE5w9BtJu5xXPHiI="; + hash = "sha256-JmTSfUVHsMG0TcOwXkZWinRxpONZagtwKzESd8Q4LlQ="; }; nativeBuildInputs = [ From 05fd3b44bd3312c750b0185f6c07c94021e1d9a4 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sun, 2 Aug 2026 10:43:29 +0200 Subject: [PATCH 12/50] matrix-continuwuity: backport SEC10 This is a partial backport of https://github.com/NixOS/nixpkgs/pull/547486, backporting the security fix in release v26.7.2 of Continuwuity to v0.5.10. Original patch: https://forgejo.ellis.link/continuwuation/continuwuity/commit/71016a0d7f79289f3bf8d7816c1fec3c85c43153 See also: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.7.2 --- .../0001-fix-backport-SEC10.patch | 250 ++++++++++++++++++ .../ma/matrix-continuwuity/package.nix | 4 + 2 files changed, 254 insertions(+) create mode 100644 pkgs/by-name/ma/matrix-continuwuity/0001-fix-backport-SEC10.patch diff --git a/pkgs/by-name/ma/matrix-continuwuity/0001-fix-backport-SEC10.patch b/pkgs/by-name/ma/matrix-continuwuity/0001-fix-backport-SEC10.patch new file mode 100644 index 000000000000..042b4b12aaf2 --- /dev/null +++ b/pkgs/by-name/ma/matrix-continuwuity/0001-fix-backport-SEC10.patch @@ -0,0 +1,250 @@ +From d25c12c343b53ea90025c11808700ad6267f4e59 Mon Sep 17 00:00:00 2001 +From: timedout +Date: Wed, 29 Jul 2026 16:38:05 +0100 +Subject: [PATCH] fix(backport): SEC10 + +Reviewed-By: Ginger +Co-Authored-By: Erwan Leboucher + +(cherry picked from commit 71016a0d7f79289f3bf8d7816c1fec3c85c43153) +--- + src/api/client/sync/v5.rs | 133 +++++++++++++++++++++++++++++++------- + 1 file changed, 111 insertions(+), 22 deletions(-) + +diff --git a/src/api/client/sync/v5.rs b/src/api/client/sync/v5.rs +index 183f3aaac..03a4c1972 100644 +--- a/src/api/client/sync/v5.rs ++++ b/src/api/client/sync/v5.rs +@@ -1,6 +1,6 @@ + use std::{ + cmp::{self, Ordering}, +- collections::{BTreeMap, BTreeSet, HashMap, HashSet, VecDeque}, ++ collections::{BTreeMap, BTreeSet, HashMap, HashSet}, + ops::Deref, + time::Duration, + }; +@@ -28,6 +28,7 @@ + use ruma::{ + DeviceId, OwnedEventId, OwnedRoomId, RoomId, UInt, UserId, + api::client::sync::sync_events::{self, DeviceLists, UnreadNotificationsCount}, ++ assign, + directory::RoomTypeFilter, + events::{ + AnyRawAccountDataEvent, AnySyncEphemeralRoomEvent, AnySyncStateEvent, StateEventType, +@@ -139,6 +140,13 @@ pub(crate) async fn sync_events_v5_route( + let (all_joined_rooms, all_invited_rooms, all_knocked_rooms) = + join3(all_joined_rooms, all_invited_rooms, all_knocked_rooms).await; + ++ let allowed_rooms: BTreeSet = all_joined_rooms ++ .iter() ++ .chain(all_invited_rooms.iter()) ++ .chain(all_knocked_rooms.iter()) ++ .cloned() ++ .collect(); ++ + let all_joined_rooms = all_joined_rooms.iter().map(AsRef::as_ref); + let all_invited_rooms = all_invited_rooms.iter().map(AsRef::as_ref); + let all_knocked_rooms = all_knocked_rooms.iter().map(AsRef::as_ref); +@@ -192,13 +200,14 @@ pub(crate) async fn sync_events_v5_route( + ) + .await; + +- fetch_subscriptions(services, sync_info, &known_rooms, &mut todo_rooms).await; ++ fetch_subscriptions(services, sync_info, &known_rooms, &allowed_rooms, &mut todo_rooms).await; + + response.rooms = process_rooms( + services, + sender_user, + next_batch, + all_invited_rooms.clone(), ++ all_knocked_rooms.clone(), + &todo_rooms, + &mut response, + &body, +@@ -208,6 +217,7 @@ pub(crate) async fn sync_events_v5_route( + if response.rooms.iter().all(|(id, r)| { + r.timeline.is_empty() + && r.required_state.is_empty() ++ && r.invite_state.is_none() + && !response.extensions.receipts.rooms.contains_key(id) + }) && response + .extensions +@@ -238,10 +248,17 @@ async fn fetch_subscriptions( + services: &Services, + (sender_user, sender_device, globalsince, body): SyncInfo<'_>, + known_rooms: &KnownRooms, ++ allowed_rooms: &BTreeSet, + todo_rooms: &mut TodoRooms, + ) { + let mut known_subscription_rooms = BTreeSet::new(); + for (room_id, room) in &body.room_subscriptions { ++ // Silently ignore subscriptions to rooms the user is not a member of ++ // (joined or invited). ++ if !allowed_rooms.contains(room_id) { ++ continue; ++ } ++ + let not_exists = services.rooms.metadata.exists(room_id).eq(&false); + + let is_disabled = services.rooms.metadata.is_disabled(room_id); +@@ -399,11 +416,13 @@ async fn handle_lists<'a, Rooms, AllRooms>( + BTreeMap::default() + } + ++#[allow(clippy::too_many_arguments)] + async fn process_rooms<'a, Rooms>( + services: &Services, + sender_user: &UserId, + next_batch: u64, + all_invited_rooms: Rooms, ++ all_knocked_rooms: Rooms, + todo_rooms: &TodoRooms, + response: &mut sync_events::v5::Response, + body: &sync_events::v5::Request, +@@ -416,38 +435,99 @@ async fn process_rooms<'a, Rooms>( + let roomsincecount = PduCount::Normal(*roomsince); + + let mut timestamp: Option<_> = None; +- let mut invite_state = None; + let (timeline_pdus, limited); + let new_room_id: &RoomId = (*room_id).as_ref(); + if all_invited_rooms.clone().any(is_equal_to!(new_room_id)) { ++ let Ok(invite_count) = services ++ .rooms ++ .state_cache ++ .get_invite_count(room_id, sender_user) ++ .await ++ else { ++ continue; ++ }; ++ ++ if *roomsince >= invite_count { ++ continue; ++ } ++ + // TODO: figure out a timestamp we can use for remote invites +- invite_state = services ++ let invite_state = services + .rooms + .state_cache + .invite_state(sender_user, room_id) + .await + .ok(); + +- (timeline_pdus, limited) = (VecDeque::new(), true); +- } else { +- TimelinePdus { pdus: timeline_pdus, limited } = match load_timeline( +- services, +- sender_user, +- room_id, +- Some(roomsincecount), +- Some(PduCount::from(next_batch)), +- *timeline_limit, +- ) +- .await +- { +- | Ok(value) => value, +- | Err(err) => { +- warn!("Encountered missing timeline in {}, error {}", room_id, err); +- continue; +- }, ++ rooms.insert(room_id.clone(), sync_events::v5::response::Room { ++ initial: Some(roomsince == &0), ++ invite_state, ++ limited: true, ++ ..Default::default() ++ }); ++ continue; ++ } ++ ++ if all_knocked_rooms.clone().any(is_equal_to!(new_room_id)) { ++ let Ok(knock_count) = services ++ .rooms ++ .state_cache ++ .get_knock_count(room_id, sender_user) ++ .await ++ else { ++ continue; + }; ++ ++ if *roomsince >= knock_count { ++ continue; ++ } ++ ++ let Ok(knock_state) = services ++ .rooms ++ .state_cache ++ .knock_state(sender_user, room_id) ++ .await ++ else { ++ continue; ++ }; ++ ++ rooms.insert( ++ room_id.clone(), ++ assign!(sync_events::v5::response::Room::new(), { ++ initial: Some(roomsince == &0), ++ invite_state: Some(knock_state), ++ limited: true, ++ }), ++ ); ++ continue; ++ } ++ ++ if !services ++ .rooms ++ .state_cache ++ .is_joined(sender_user, room_id) ++ .await ++ { ++ continue; + } + ++ TimelinePdus { pdus: timeline_pdus, limited } = match load_timeline( ++ services, ++ sender_user, ++ room_id, ++ Some(roomsincecount), ++ Some(PduCount::from(next_batch)), ++ *timeline_limit, ++ ) ++ .await ++ { ++ | Ok(value) => value, ++ | Err(err) => { ++ warn!("Encountered missing timeline in {}, error {}", room_id, err); ++ continue; ++ }, ++ }; ++ + if body.extensions.account_data.enabled == Some(true) { + response.extensions.account_data.rooms.insert( + room_id.to_owned(), +@@ -627,7 +707,7 @@ async fn process_rooms<'a, Rooms>( + }, + initial: Some(roomsince == &0), + is_dm: None, +- invite_state, ++ invite_state: None, + unread_notifications: UnreadNotificationsCount { + highlight_count: Some( + services +@@ -753,6 +833,15 @@ async fn collect_typing_events( + + let mut typing_response = sync_events::v5::response::Typing::default(); + for (room_id, (_, _, roomsince)) in todo_rooms { ++ if !services ++ .rooms ++ .state_cache ++ .is_joined(sender_user, room_id) ++ .await ++ { ++ continue; ++ } ++ + if services.rooms.typing.last_typing_update(room_id).await? <= *roomsince { + continue; + } +-- +2.55.0 + diff --git a/pkgs/by-name/ma/matrix-continuwuity/package.nix b/pkgs/by-name/ma/matrix-continuwuity/package.nix index 57ee2cd74ca2..3ba5195b6a6d 100644 --- a/pkgs/by-name/ma/matrix-continuwuity/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity/package.nix @@ -50,6 +50,10 @@ rustPlatform.buildRustPackage (finalAttrs: { cargoHash = "sha256-uvMiFURXxkLbbbwq4pG5hevsLZHQ1wVfTNvzQRTQWxE="; + patches = [ + ./0001-fix-backport-SEC10.patch + ]; + nativeBuildInputs = [ pkg-config rustPlatform.bindgenHook From c40566c21c48257048103f26ba5429f634d4cc6b Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 13 Jul 2026 23:04:39 +0200 Subject: [PATCH 13/50] python3Packages.huggingface-hub: 1.10.2 -> 1.23.0 https://github.com/huggingface/huggingface_hub/releases/tag/v1.23.0 (cherry picked from commit 18a55b8b13448feb8610adbb83157af673d4b686) --- .../huggingface-hub/default.nix | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/pkgs/development/python-modules/huggingface-hub/default.nix b/pkgs/development/python-modules/huggingface-hub/default.nix index 0d9992fe679c..57948a00daf2 100644 --- a/pkgs/development/python-modules/huggingface-hub/default.nix +++ b/pkgs/development/python-modules/huggingface-hub/default.nix @@ -7,6 +7,7 @@ setuptools, # dependencies + click, filelock, fsspec, hf-xet, @@ -14,7 +15,6 @@ packaging, pyyaml, tqdm, - typer, typing-extensions, # optional-dependencies @@ -28,6 +28,10 @@ # gradio gradio, requests, + # oauth + authlib, + fastapi, + itsdangerous, # mcp mcp, @@ -37,19 +41,20 @@ buildPythonPackage (finalAttrs: { pname = "huggingface-hub"; - version = "1.10.2"; + version = "1.23.0"; pyproject = true; src = fetchFromGitHub { owner = "huggingface"; repo = "huggingface_hub"; tag = "v${finalAttrs.version}"; - hash = "sha256-Q9N0QnxV8oJcxUsJzv4wX8Z6FkNdEfUH5BEVoZolsRY="; + hash = "sha256-Xl9girALcJw7aeLjFd4d/xITS8bTz9xlmziEQwrOdQ0="; }; build-system = [ setuptools ]; dependencies = [ + click filelock fsspec hf-xet @@ -57,7 +62,6 @@ buildPythonPackage (finalAttrs: { packaging pyyaml tqdm - typer typing-extensions ]; @@ -65,11 +69,6 @@ buildPythonPackage (finalAttrs: { all = [ ]; - torch = [ - torch - safetensors - ] - ++ safetensors.optional-dependencies.torch; fastai = [ toml fastai @@ -85,6 +84,17 @@ buildPythonPackage (finalAttrs: { mcp = [ mcp ]; + oauth = [ + authlib + fastapi + httpx + itsdangerous + ]; + torch = [ + torch + safetensors + ] + ++ safetensors.optional-dependencies.torch; }; nativeCheckInputs = [ From 53256856fa538e2592894958a99be3d19d2ae348 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 16 Jul 2026 16:14:16 +0200 Subject: [PATCH 14/50] python3Packages.huggingface-hub: 1.23.0 -> 1.16.0 https://github.com/huggingface/huggingface_hub/releases/tag/v1.16.0 Required downgrade, becaus we rolled back the Click 8.4 update. (cherry picked from commit 1b19e5e19615fcc2fab31c038c0a345c29b8aff9) --- .../python-modules/huggingface-hub/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/huggingface-hub/default.nix b/pkgs/development/python-modules/huggingface-hub/default.nix index 57948a00daf2..9edd32ac8c5d 100644 --- a/pkgs/development/python-modules/huggingface-hub/default.nix +++ b/pkgs/development/python-modules/huggingface-hub/default.nix @@ -7,7 +7,6 @@ setuptools, # dependencies - click, filelock, fsspec, hf-xet, @@ -15,6 +14,7 @@ packaging, pyyaml, tqdm, + typer, typing-extensions, # optional-dependencies @@ -41,20 +41,19 @@ buildPythonPackage (finalAttrs: { pname = "huggingface-hub"; - version = "1.23.0"; + version = "1.16.0"; pyproject = true; src = fetchFromGitHub { owner = "huggingface"; repo = "huggingface_hub"; tag = "v${finalAttrs.version}"; - hash = "sha256-Xl9girALcJw7aeLjFd4d/xITS8bTz9xlmziEQwrOdQ0="; + hash = "sha256-GuTsoz7ow3A/PJyU3L/xLp56r3RVx5O1YH3nr3T4u7U="; }; build-system = [ setuptools ]; dependencies = [ - click filelock fsspec hf-xet @@ -62,6 +61,7 @@ buildPythonPackage (finalAttrs: { packaging pyyaml tqdm + typer typing-extensions ]; From 3a24360784b27fe3a14e14868c5f29feb0f6afe9 Mon Sep 17 00:00:00 2001 From: Ihar Hrachyshka Date: Sun, 2 Aug 2026 00:54:13 -0400 Subject: [PATCH 15/50] audiobookshelf: call {pre,post}Install in installPhase (cherry picked from commit 1af43b97cf162e5382cc622cad592651e9a17c17) --- pkgs/by-name/au/audiobookshelf/package.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/by-name/au/audiobookshelf/package.nix b/pkgs/by-name/au/audiobookshelf/package.nix index d3ca939b161a..0999eb5d8094 100644 --- a/pkgs/by-name/au/audiobookshelf/package.nix +++ b/pkgs/by-name/au/audiobookshelf/package.nix @@ -70,6 +70,8 @@ buildNpmPackage { npmInstallFlags = [ "--only-production" ]; installPhase = '' + runHook preInstall + mkdir -p $out/opt/client cp -r index.js server package* node_modules $out/opt/ cp -r ${client}/lib/node_modules/audiobookshelf-client/dist $out/opt/client/dist @@ -79,6 +81,8 @@ buildNpmPackage { echo " exec ${nodejs_22}/bin/node $out/opt/index.js" >> $out/bin/audiobookshelf chmod +x $out/bin/audiobookshelf + + runHook postInstall ''; passthru = { From e7b08621bcb3b4ff5920e951649112f9a32b9478 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 31 Jul 2026 11:26:20 +0000 Subject: [PATCH 16/50] gelly: 1.9.4 -> 1.9.5 (cherry picked from commit 2e3ca7205329cdd0e0cbe5cc1b522bbd24e6d628) --- pkgs/by-name/ge/gelly/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ge/gelly/package.nix b/pkgs/by-name/ge/gelly/package.nix index 67a920bbc921..18206ca31d3b 100644 --- a/pkgs/by-name/ge/gelly/package.nix +++ b/pkgs/by-name/ge/gelly/package.nix @@ -19,16 +19,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "gelly"; - version = "1.9.4"; + version = "1.9.5"; src = fetchFromGitHub { owner = "Fingel"; repo = "gelly"; tag = "v${finalAttrs.version}"; - hash = "sha256-GYMLV4hffaIbqUp1b5ERo2QQqiKRlHe9oXfq+wNH/hM="; + hash = "sha256-k6LgXEK5xoVrjiXCkYnFgC7Hs7oz+v3Kz47CELPqN9Q="; }; - cargoHash = "sha256-CsmcXlkOec/KJ59Ng7MyGsfjWQ80YyV6MztRFULmvDA="; + cargoHash = "sha256-RbOs5CEj3KRe6F1RJSGx97wBoQKSynx+iza929ipfjA="; nativeBuildInputs = [ pkg-config From f0310d7bdb334a2bdf1a5886f9f17229b67935b7 Mon Sep 17 00:00:00 2001 From: Peder Bergebakken Sundt Date: Mon, 27 Jul 2026 16:35:50 +0200 Subject: [PATCH 17/50] python3Packages.gradio{,-client}: unbreak fixes https://hydra.nixos.org/build/339136111 (cherry picked from commit 4fa87fa204aaaf6dd2208aa1095f3c4b4e28b95f) --- pkgs/development/python-modules/gradio/client.nix | 1 + pkgs/development/python-modules/gradio/default.nix | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/pkgs/development/python-modules/gradio/client.nix b/pkgs/development/python-modules/gradio/client.nix index ce360b14f476..d45ab10c0567 100644 --- a/pkgs/development/python-modules/gradio/client.nix +++ b/pkgs/development/python-modules/gradio/client.nix @@ -134,6 +134,7 @@ buildPythonPackage (finalAttrs: { disabledTests = [ ]; pythonImportsCheck = null; dontCheckRuntimeDeps = true; + dontCheckPythonMetadata = true; # broken due to changed pname }); inherit (gradio) updateScript; diff --git a/pkgs/development/python-modules/gradio/default.nix b/pkgs/development/python-modules/gradio/default.nix index 7e11791b068b..cf31fdfbc9d9 100644 --- a/pkgs/development/python-modules/gradio/default.nix +++ b/pkgs/development/python-modules/gradio/default.nix @@ -49,6 +49,7 @@ typer, typing-extensions, uvicorn, + urllib3, # oauth authlib, @@ -157,6 +158,7 @@ buildPythonPackage (finalAttrs: { typer typing-extensions uvicorn + urllib3 ] ++ lib.optionals (pythonAtLeast "3.13") [ audioop-lts @@ -196,6 +198,10 @@ buildPythonPackage (finalAttrs: { ++ finalAttrs.passthru.optional-dependencies.oauth ++ pydantic.optional-dependencies.email; + pythonRelaxDeps = [ + "tomlkit" # pre-emptive upper bound + ]; + preBuild = '' pnpm build pnpm package @@ -440,6 +446,7 @@ buildPythonPackage (finalAttrs: { ''; pythonImportsCheck = null; dontCheckRuntimeDeps = true; + dontCheckPythonMetadata = true; # broken due to changed pname }); # We can't use gitUpdater, because we need to update the pnpm hash. From 0599c7605ea9fda1d05cd3328970cdb47ef35ac9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 2 Aug 2026 00:17:36 +0000 Subject: [PATCH 18/50] python3Packages.gradio-client: 2.5.0 -> 2.6.0 (cherry picked from commit 5e900f31fe3c5f96d9dd17de0c81a2a1d7a7e8a4) --- pkgs/development/python-modules/gradio/client.nix | 2 +- pkgs/development/python-modules/gradio/default.nix | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/gradio/client.nix b/pkgs/development/python-modules/gradio/client.nix index d45ab10c0567..e965ae5094b3 100644 --- a/pkgs/development/python-modules/gradio/client.nix +++ b/pkgs/development/python-modules/gradio/client.nix @@ -31,7 +31,7 @@ buildPythonPackage (finalAttrs: { pname = "gradio-client"; - version = "2.5.0"; + version = "2.6.0"; pyproject = true; # no tests on pypi diff --git a/pkgs/development/python-modules/gradio/default.nix b/pkgs/development/python-modules/gradio/default.nix index cf31fdfbc9d9..f80dc78be301 100644 --- a/pkgs/development/python-modules/gradio/default.nix +++ b/pkgs/development/python-modules/gradio/default.nix @@ -82,7 +82,7 @@ let in buildPythonPackage (finalAttrs: { pname = "gradio"; - version = "6.20.0"; # please always backport gradio changes + version = "6.22.0"; # please always backport gradio changes pyproject = true; __structuredAttrs = true; @@ -90,7 +90,7 @@ buildPythonPackage (finalAttrs: { owner = "gradio-app"; repo = "gradio"; tag = "gradio@${finalAttrs.version}"; - hash = "sha256-q5OoMguG/f0A3c6X+zotafc3kRRuebxMBPUIlrlcNFI="; + hash = "sha256-9FcGnZ/yktKM8sTGpgTv3QLIe2IoGbSw10rLWgj1zSU="; }; patches = [ @@ -107,7 +107,7 @@ buildPythonPackage (finalAttrs: { inherit (finalAttrs) version src; inherit pnpm; fetcherVersion = 4; - hash = "sha256-xCxr/jnp9emeB6THGt4cumvApw6fSZQwG2NGOcvR0yQ="; + hash = "sha256-TX4sLAfka/j002OsUKqxqi5B6Fb+DXSGdeL+w6V9XuM="; }; env = { From 5b704eba19bd6cccf4d164048d52722b4acc6863 Mon Sep 17 00:00:00 2001 From: Ashish SHUKLA Date: Sun, 26 Jul 2026 21:18:50 +0000 Subject: [PATCH 19/50] weechat: 4.9.4 -> 4.9.5 (cherry picked from commit bfe94c7c84f2b6abf4395009fc83cfd03444e3d9) --- pkgs/applications/networking/irc/weechat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix index 4c9bf0bd6b2b..aacea71aedf9 100644 --- a/pkgs/applications/networking/irc/weechat/default.nix +++ b/pkgs/applications/networking/irc/weechat/default.nix @@ -105,11 +105,11 @@ assert lib.all (p: p.enabled -> !(builtins.elem null p.buildInputs)) plugins; stdenv.mkDerivation rec { pname = "weechat"; - version = "4.9.4"; + version = "4.9.5"; src = fetchurl { url = "https://weechat.org/files/src/weechat-${version}.tar.xz"; - hash = "sha256-P8UDWfOjsljJ8DFIsC87nFkZRTXRtGXEgfuFp2wu0AU="; + hash = "sha256-OzlGEE5kU20GAjcKMOVd1aMBzI/0IBhP8KEBkm2tHRY="; }; # Why is this needed? https://github.com/weechat/weechat/issues/2031 From 16442bbe1dd75509911024a3db1ee9b79b4d89fe Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Aug 2026 19:55:56 +0000 Subject: [PATCH 20/50] ani-cli: 4.14 -> 5.0 (cherry picked from commit 8401cfc7a166bf6ff79f321bceccea2b61162f53) --- pkgs/by-name/an/ani-cli/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/an/ani-cli/package.nix b/pkgs/by-name/an/ani-cli/package.nix index 79b1d8bdab15..82b86873746e 100644 --- a/pkgs/by-name/an/ani-cli/package.nix +++ b/pkgs/by-name/an/ani-cli/package.nix @@ -28,13 +28,13 @@ in stdenvNoCC.mkDerivation (finalAttrs: { pname = "ani-cli"; - version = "4.14"; + version = "5.0"; src = fetchFromGitHub { owner = "pystardust"; repo = "ani-cli"; tag = "v${finalAttrs.version}"; - hash = "sha256-OyCKDN89sBz59+3JncMDyNOq8UMqqjara+A0Owo3oko="; + hash = "sha256-rRQESi0Skoyf1jy/dRRK6ooKRPQhkak107kk5ulwZYI="; }; nativeBuildInputs = [ makeWrapper ]; From c6d0d37f0b7de5dd46f55e1916d35aed7028ac3d Mon Sep 17 00:00:00 2001 From: Fazzi Date: Sun, 17 May 2026 19:54:50 +0100 Subject: [PATCH 21/50] discord: add nvenc library path (cherry picked from commit 1cf2bbdc5f84cc5e635697bf60f841f2514d09a5) --- .../networking/instant-messengers/discord/linux.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/instant-messengers/discord/linux.nix b/pkgs/applications/networking/instant-messengers/discord/linux.nix index 52a3214577e4..826c3a8619c8 100644 --- a/pkgs/applications/networking/instant-messengers/discord/linux.nix +++ b/pkgs/applications/networking/instant-messengers/discord/linux.nix @@ -6,6 +6,7 @@ desktopName, self, autoPatchelfHook, + addDriverRunpath, fetchurl, makeDesktopItem, lib, @@ -258,7 +259,7 @@ stdenv.mkDerivation (finalAttrs: { ''} \ ${lib.strings.optionalString enableAutoscroll "--add-flags \"--enable-blink-features=MiddleClickAutoscroll\""} \ --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \ - --prefix LD_LIBRARY_PATH : ${finalAttrs.libPath}:$out/opt/${binaryName} \ + --prefix LD_LIBRARY_PATH : ${finalAttrs.libPath}:$out/opt/${binaryName}:${addDriverRunpath.driverLink}/lib \ ${lib.strings.optionalString disableUpdates "--run ${lib.getExe disableBreakingUpdates}"} \ --run "${finalAttrs.stageModules} $out/opt/${binaryName}/modules" \ --add-flags ${lib.escapeShellArg commandLineArgs} From b7658fa48ab24d057dabaca1eeead449013bf036 Mon Sep 17 00:00:00 2001 From: LuckShiba Date: Thu, 11 Jun 2026 15:27:15 -0300 Subject: [PATCH 22/50] discord: add Vulkan driver files in wrapper (cherry picked from commit 36e2217e8c30e59f1708e44df9bf00c31565e476) --- .../applications/networking/instant-messengers/discord/linux.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/networking/instant-messengers/discord/linux.nix b/pkgs/applications/networking/instant-messengers/discord/linux.nix index 826c3a8619c8..cd61cd501e48 100644 --- a/pkgs/applications/networking/instant-messengers/discord/linux.nix +++ b/pkgs/applications/networking/instant-messengers/discord/linux.nix @@ -260,6 +260,7 @@ stdenv.mkDerivation (finalAttrs: { ${lib.strings.optionalString enableAutoscroll "--add-flags \"--enable-blink-features=MiddleClickAutoscroll\""} \ --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \ --prefix LD_LIBRARY_PATH : ${finalAttrs.libPath}:$out/opt/${binaryName}:${addDriverRunpath.driverLink}/lib \ + --suffix VK_ADD_DRIVER_FILES : "${addDriverRunpath.driverLink}/share/vulkan/icd.d" \ ${lib.strings.optionalString disableUpdates "--run ${lib.getExe disableBreakingUpdates}"} \ --run "${finalAttrs.stageModules} $out/opt/${binaryName}/modules" \ --add-flags ${lib.escapeShellArg commandLineArgs} From c8cb3e13fa85f823b42035944321b78b08c09554 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Aug 2026 18:47:15 +0000 Subject: [PATCH 23/50] uptime-kuma: 2.4.0 -> 2.5.0 (cherry picked from commit 696368503fbd2d314e478f696f9fccf0dae33585) --- pkgs/by-name/up/uptime-kuma/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/up/uptime-kuma/package.nix b/pkgs/by-name/up/uptime-kuma/package.nix index f4317ee785f6..b13caedcc4dc 100644 --- a/pkgs/by-name/up/uptime-kuma/package.nix +++ b/pkgs/by-name/up/uptime-kuma/package.nix @@ -9,16 +9,16 @@ buildNpmPackage (finalAttrs: { pname = "uptime-kuma"; - version = "2.4.0"; + version = "2.5.0"; src = fetchFromGitHub { owner = "louislam"; repo = "uptime-kuma"; tag = finalAttrs.version; - hash = "sha256-iqkf9/UAQOnSA+nncK/fmjbqZpIQeUmigI/78m5qKrM="; + hash = "sha256-C9XBPhCQNU5y2C9svsieiC0FTMdW9sJQI2OeiCjqte8="; }; - npmDepsHash = "sha256-chvykBfnARLto+Il9gumm6UTRSTPPBjg5pj4yGFiOcg="; + npmDepsHash = "sha256-qe8qK0bWYFyzClrMNAXdxuqrBIn14Xf3oN40ch1cqnY="; patches = [ # Fixes the permissions of the database being not set correctly From 201542597fe31268e1f367482f2897ae6eca82ea Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 26 Jul 2026 16:32:13 +0000 Subject: [PATCH 24/50] zsh-patina: 1.7.0 -> 1.9.0 (cherry picked from commit 793acbe3298dd2f07d357c4da6d7e50d764f0920) --- pkgs/by-name/zs/zsh-patina/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/zs/zsh-patina/package.nix b/pkgs/by-name/zs/zsh-patina/package.nix index 21c42b1b3950..adf853372dda 100644 --- a/pkgs/by-name/zs/zsh-patina/package.nix +++ b/pkgs/by-name/zs/zsh-patina/package.nix @@ -10,17 +10,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "zsh-patina"; - version = "1.7.0"; + version = "1.9.0"; __structuredAttrs = true; src = fetchFromGitHub { owner = "michel-kraemer"; repo = "zsh-patina"; tag = finalAttrs.version; - hash = "sha256-sPlIT3UHtq+5+bpfrSPPfVXTdmqjEq+6k9tPShhG7h0="; + hash = "sha256-WVlv+bYFTQ3RG3m2NnG13kMoslXzcPr8CpFWwAOcNBA="; }; - cargoHash = "sha256-j2MwEwQhSCUCwANAxr0aZjJ9iS0cGzRRttfK8LONEpg="; + cargoHash = "sha256-A946sab9GDBdoNAWH7AN10lEhHNnHnCnNzQgnEcQ8QI="; nativeBuildInputs = [ installShellFiles ]; postInstall = '' From df43982d05f92c8caa278cb144444867530c31ef Mon Sep 17 00:00:00 2001 From: kuflierl <41301536+kuflierl@users.noreply.github.com> Date: Fri, 24 Jul 2026 18:25:00 +0200 Subject: [PATCH 25/50] ani-cli: remove openssl, add curl-impersonate, __structuredAttrs, strictDeps (cherry picked from commit e6dee3775d38c616413f09c36ba5683509165cdf) --- pkgs/by-name/an/ani-cli/package.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/an/ani-cli/package.nix b/pkgs/by-name/an/ani-cli/package.nix index 79b1d8bdab15..bf6a9ea38db3 100644 --- a/pkgs/by-name/an/ani-cli/package.nix +++ b/pkgs/by-name/an/ani-cli/package.nix @@ -5,13 +5,12 @@ lib, gnugrep, gnused, - curl, + curl-impersonate, catt, syncplay, - openssl, ffmpeg, fzf, - aria2, + yt-dlp, mpv, vlc, iina, @@ -39,17 +38,19 @@ stdenvNoCC.mkDerivation (finalAttrs: { nativeBuildInputs = [ makeWrapper ]; runtimeInputs = [ - openssl gnugrep gnused - curl + curl-impersonate fzf ffmpeg - aria2 + yt-dlp ] ++ lib.optional chromecastSupport catt ++ lib.optional syncSupport syncplay; + strictDeps = true; + __structuredAttrs = true; + installPhase = '' runHook preInstall From 8afb558f1fd350f9092764364cdaa33f8bdc7e5a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 16 Jul 2026 15:11:37 +0000 Subject: [PATCH 26/50] python3Packages.general-sam: 1.0.3 -> 1.0.4.post0 (cherry picked from commit aea32a03a4928172b803256a694bd7a059894726) --- pkgs/development/python-modules/general-sam/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/general-sam/default.nix b/pkgs/development/python-modules/general-sam/default.nix index 9611dfaf988d..955c9df7a6cb 100644 --- a/pkgs/development/python-modules/general-sam/default.nix +++ b/pkgs/development/python-modules/general-sam/default.nix @@ -10,19 +10,19 @@ buildPythonPackage rec { pname = "general-sam"; - version = "1.0.3"; + version = "1.0.4.post0"; pyproject = true; src = fetchFromGitHub { owner = "ModelTC"; repo = "general-sam-py"; rev = "v${version}"; - hash = "sha256-++6Z9Ocee4QFN1u0nK/g9uGdmB1UYnfHhhJj74zboCE="; + hash = "sha256-bpJL6kpcpMWNNUOSLUnRLsAi7yp3fl0WKzvfXiGwYeE="; }; cargoDeps = rustPlatform.fetchCargoVendor { inherit pname version src; - hash = "sha256-8HHIM1Abz5KxnVphFFNJp6L3D6iPeoB7qVmxy11CUZs="; + hash = "sha256-kmc1sGlSTQHdLaW7fDk0AmkEDmttEEljVEsc6inLRuw="; }; build-system = [ From b4446c3630e79916327fe92efa729d59eaa5e302 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 25 Jul 2026 17:42:37 +0000 Subject: [PATCH 27/50] python3Packages.general-sam: 1.0.4.post0 -> 1.0.5 (cherry picked from commit 09a0c4f7e6ad69d6ff38981b93dee7c8ce481ac4) --- pkgs/development/python-modules/general-sam/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/general-sam/default.nix b/pkgs/development/python-modules/general-sam/default.nix index 955c9df7a6cb..d92bc3943beb 100644 --- a/pkgs/development/python-modules/general-sam/default.nix +++ b/pkgs/development/python-modules/general-sam/default.nix @@ -10,19 +10,19 @@ buildPythonPackage rec { pname = "general-sam"; - version = "1.0.4.post0"; + version = "1.0.5"; pyproject = true; src = fetchFromGitHub { owner = "ModelTC"; repo = "general-sam-py"; rev = "v${version}"; - hash = "sha256-bpJL6kpcpMWNNUOSLUnRLsAi7yp3fl0WKzvfXiGwYeE="; + hash = "sha256-/hfq14oFNPhPrhjlIDCyjMfdCuhMdKZ5DBc/nlEQKno="; }; cargoDeps = rustPlatform.fetchCargoVendor { inherit pname version src; - hash = "sha256-kmc1sGlSTQHdLaW7fDk0AmkEDmttEEljVEsc6inLRuw="; + hash = "sha256-8uUCe/isN1qos8cBml16NOzUYHfr94G/GzllQt/5vWg="; }; build-system = [ From 6fc012547b1535a03100d80699ebe17890ec61db Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 15 Jul 2026 14:02:43 +0000 Subject: [PATCH 28/50] mpvScripts.videoclip: 0.2-unstable-2026-05-31 -> 0.2-unstable-2026-07-07 (cherry picked from commit b3fe0b9500dcdf49d577f42f58257f9a639e4a41) --- pkgs/by-name/mp/mpv/scripts/videoclip.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/mp/mpv/scripts/videoclip.nix b/pkgs/by-name/mp/mpv/scripts/videoclip.nix index 762bc7400eca..ee75757f57e8 100644 --- a/pkgs/by-name/mp/mpv/scripts/videoclip.nix +++ b/pkgs/by-name/mp/mpv/scripts/videoclip.nix @@ -10,13 +10,13 @@ }: buildLua { pname = "videoclip"; - version = "0.2-unstable-2026-05-31"; + version = "0.2-unstable-2026-07-07"; src = fetchFromGitHub { owner = "Ajatt-Tools"; repo = "videoclip"; - rev = "d9a3e0966b238b824b86767956eb44a11ac367c6"; - hash = "sha256-NZaflGehxoIf9eY3/p9WrKXXQj3x6GDZ6iMLeu5BhPc="; + rev = "979bae398da7ccd70cb2fb305c371b7af9259b10"; + hash = "sha256-k3fxSeAjRZg4J5x5IQhKGYtUqfBE4heR1KNurGTElGs="; }; patchPhase = '' From dd75ae55ca8400272a1fbb892a4d11934b8f6135 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 3 Aug 2026 06:26:10 +0000 Subject: [PATCH 29/50] opengist: 1.14.0 -> 1.15.0 (cherry picked from commit 64137ce9786df5784befc8d34f3a3970c42bf512) --- pkgs/by-name/op/opengist/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/op/opengist/package.nix b/pkgs/by-name/op/opengist/package.nix index fe22f29e9708..b7a90e7cccdd 100644 --- a/pkgs/by-name/op/opengist/package.nix +++ b/pkgs/by-name/op/opengist/package.nix @@ -13,13 +13,13 @@ buildGoModule (finalAttrs: { pname = "opengist"; - version = "1.14.0"; + version = "1.15.0"; src = fetchFromGitHub { owner = "thomiceli"; repo = "opengist"; tag = "v${finalAttrs.version}"; - hash = "sha256-glKhgETje+TRmwnSWJ+fVla0hsyljZLnRKcM4xi+zQ8="; + hash = "sha256-yE9HvRFEQzv3Fhhbs9hXeLc4vudCMi+NMA2T8YUlREw="; }; frontend = buildNpmPackage { @@ -36,10 +36,10 @@ buildGoModule (finalAttrs: { cp -R public $out ''; - npmDepsHash = "sha256-Zz6qoqTV/O73OrBL7ry1VXK9nF6Eb6QeqcefLpyMN1c="; + npmDepsHash = "sha256-hAG0vGjG+ejumjoslYs/UnYBImZDNsTQUDtssT0X/HI="; }; - vendorHash = "sha256-J4JMOCj7S8N0kX7VBZmrAiPuXjWur+MIkS8pMVmkLbs="; + vendorHash = "sha256-YU1OdYM9GzUGHypgIhWvJCvYEzlKsaKGN0NZRBfT8FY="; tags = [ "fs_embed" ]; From df5a79912225ecfd2cf2b149123ab61ce20d69a1 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Aug 2026 10:52:11 +0200 Subject: [PATCH 30/50] linux_testing: 7.2-rc5 -> 7.2-rc6 (cherry picked from commit 685adc7c821a10a4873193829b33e376eb9ffde0) --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 39ae3efec3ce..ba88d5ee7179 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -1,7 +1,7 @@ { "testing": { - "version": "7.2-rc5", - "hash": "sha256:05vi7q57qj4nybk3m38araknj6yxaaqjdd0cnw07c07qrjcd2lm7", + "version": "7.2-rc6", + "hash": "sha256:03q060s94c8p55p29npm62f7rcp9pc0hacq60w4spgwp26j8w2sm", "lts": false }, "6.1": { From 7e01d0f57d7ae3030d3db5d19e40f6582703f8a8 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Aug 2026 13:34:54 +0200 Subject: [PATCH 31/50] linux_7_1: 7.1.5 -> 7.1.6 (cherry picked from commit 589b9aeb0fa4fe711b05a2ae32e45441d809c1fd) --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index ba88d5ee7179..b6605f25cfbb 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -35,8 +35,8 @@ "lts": true }, "7.1": { - "version": "7.1.5", - "hash": "sha256:1rs162gcf6hsafrrmp3y8k9myn20s3s62xdp4zf39pxw7imik812", + "version": "7.1.6", + "hash": "sha256:1hamv3kp3iz2mlyv72sv1rcnfwjqhfvnzza89fwn4iljilcdfpcr", "lts": false } } From 33565191d37a96d943b22ff678ca7b923405bffa Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Aug 2026 13:35:09 +0200 Subject: [PATCH 32/50] linux_6_18: 6.18.41 -> 6.18.42 (cherry picked from commit b658e06342e898343394fb62bb5c89d4fc8fb189) --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index b6605f25cfbb..16fe79590861 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -30,8 +30,8 @@ "lts": true }, "6.18": { - "version": "6.18.41", - "hash": "sha256:1skk2aimvhhymsvs15p83v2mwnlwbmghh82x79isia6lz3q75z0p", + "version": "6.18.42", + "hash": "sha256:1rv3xn5hw8w5y8wdgy2zx78n22n1qhihrd22dbjnfi5lixgfza1m", "lts": true }, "7.1": { From 5caf7d017ddff9b547229d7db0e29dc21fda6302 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Aug 2026 13:35:34 +0200 Subject: [PATCH 33/50] linux_6_12: 6.12.100 -> 6.12.101 (cherry picked from commit 0200aa61f1e4516f654bb1e8a652d5da3b03c097) --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 16fe79590861..d72be2154099 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -25,8 +25,8 @@ "lts": true }, "6.12": { - "version": "6.12.100", - "hash": "sha256:147fvkpsa9n5gv207xyb6if0vmahmvpvrb2bfy32wj866i9p7yb7", + "version": "6.12.101", + "hash": "sha256:0xlaq8gz9v7ya2w38r2hps58rp7xqf6bp7bw3cazfj9zjc8ws88d", "lts": true }, "6.18": { From e701b132f0d242c44c76ba08ae88b3fd94ce988c Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 3 Aug 2026 13:35:56 +0200 Subject: [PATCH 34/50] linux_6_6: 6.6.147 -> 6.6.148 (cherry picked from commit 9341b7a070ce8c01095ab6f03c2740666091023d) --- pkgs/os-specific/linux/kernel/kernels-org.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index d72be2154099..ddc0eb62956b 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -20,8 +20,8 @@ "lts": true }, "6.6": { - "version": "6.6.147", - "hash": "sha256:1fsavd2armiwrnz0w556dmm54z76zwy2as0qbbaq6s04xsvjjqz7", + "version": "6.6.148", + "hash": "sha256:0ppp203swylf9ixrgdsbw3gq6xdrxwxdrkqi6x4irsv0ax5rjx5n", "lts": true }, "6.12": { From c4fa917939dce209825fa018949195e67571dedc Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Mon, 3 Aug 2026 15:49:12 +0200 Subject: [PATCH 35/50] nodejs_26: 26.5.1 -> 26.6.0 (cherry picked from commit e85f6fcf1cc23384e2b0f41194f91fc90f0a3e2e) --- pkgs/development/web/nodejs/v26.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/web/nodejs/v26.nix b/pkgs/development/web/nodejs/v26.nix index 86e135291d37..785b403d240a 100644 --- a/pkgs/development/web/nodejs/v26.nix +++ b/pkgs/development/web/nodejs/v26.nix @@ -23,8 +23,8 @@ let [ ]; in buildNodejs { - version = "26.5.1"; - sha256 = "df7770a9a99346f8b73ba6d31ad89bd6f868b51c7387c3627dcb44ca065f4948"; + version = "26.6.0"; + sha256 = "ecb6eec812505c9292529087a2436ec6c891ffe0e3a897833416e5d7436d659f"; patches = (lib.optional (!(stdenv.hostPlatform.emulatorAvailable buildPackages)) (fetchpatch2 { url = "https://raw.githubusercontent.com/buildroot/buildroot/2f0c31bffdb59fb224387e35134a6d5e09a81d57/package/nodejs/nodejs-src/0003-include-obj-name-in-shared-intermediate.patch"; From 0db3e7324d857358708eee8bc5e26b839fe84760 Mon Sep 17 00:00:00 2001 From: Tristan Ross Date: Sun, 19 Jul 2026 22:31:10 -0700 Subject: [PATCH 36/50] llvmPackages_git: 23.0.0-unstable-2026-07-12 -> 23.1.0-rc1 (cherry picked from commit 90c2cdecb05a2e44bcd91901b9823ac05bbf8008) --- pkgs/development/compilers/llvm/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index 28742b65cd72..e82f9bd7accc 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -27,10 +27,10 @@ let "20.1.8".officialRelease.sha256 = "sha256-ysyB/EYxi2qE9fD5x/F2zI4vjn8UDoo1Z9ukiIrjFGw="; "21.1.8".officialRelease.sha256 = "sha256-pgd8g9Yfvp7abjCCKSmIn1smAROjqtfZaJkaUkBSKW0="; "22.1.5".officialRelease.sha256 = "sha256-eunfMOH+HVpefZJ+CG7hXDoM+pi6iYvHpD3DoSAsjoE="; - "23.0.0-git".gitRelease = { - rev = "7d24dfa5f29e1794e452aadaa27f994f15568763"; - rev-version = "23.0.0-unstable-2026-07-12"; - sha256 = "sha256-mHiwOqEvqXyG6OoiVLRrhzb2MK7FqjQm9ez329ngbYw="; + "23.1.0-rc1".gitRelease = { + rev = "acdf320b78fcf075ddcf660b51cf18d5c0af755b"; + rev-version = "23.1.0-rc1"; + sha256 = "sha256-kSfy7IRgF/2HX5Fr3OS5LTXx7xm/iUx7tWb27e4wO+s="; }; } // llvmVersions; From fa73cf447b22ad1657be81da59fc3c36f1544692 Mon Sep 17 00:00:00 2001 From: Tristan Ross Date: Sun, 19 Jul 2026 22:34:09 -0700 Subject: [PATCH 37/50] llvmPackages_23: init from git (cherry picked from commit acccf0fdbf17421c9a940508114289362e788854) --- pkgs/development/compilers/llvm/default.nix | 11 +++++++---- pkgs/top-level/all-packages.nix | 3 +++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index e82f9bd7accc..362400008a26 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -27,10 +27,13 @@ let "20.1.8".officialRelease.sha256 = "sha256-ysyB/EYxi2qE9fD5x/F2zI4vjn8UDoo1Z9ukiIrjFGw="; "21.1.8".officialRelease.sha256 = "sha256-pgd8g9Yfvp7abjCCKSmIn1smAROjqtfZaJkaUkBSKW0="; "22.1.5".officialRelease.sha256 = "sha256-eunfMOH+HVpefZJ+CG7hXDoM+pi6iYvHpD3DoSAsjoE="; - "23.1.0-rc1".gitRelease = { - rev = "acdf320b78fcf075ddcf660b51cf18d5c0af755b"; - rev-version = "23.1.0-rc1"; - sha256 = "sha256-kSfy7IRgF/2HX5Fr3OS5LTXx7xm/iUx7tWb27e4wO+s="; + "23.1.0-rc1" = { + gitRelease = { + rev = "acdf320b78fcf075ddcf660b51cf18d5c0af755b"; + rev-version = "23.1.0-rc1"; + sha256 = "sha256-kSfy7IRgF/2HX5Fr3OS5LTXx7xm/iUx7tWb27e4wO+s="; + }; + name = "23"; }; } // llvmVersions; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 863622227bc4..90a14da2bef3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4179,6 +4179,8 @@ with pkgs; bolt_22 = llvmPackages_22.bolt; flang_22 = llvmPackages_22.flang; + llvmPackages_23 = llvmPackagesSet."23"; + mkLLVMPackages = llvmPackagesSet.mkPackage; }) llvmPackages_18 @@ -4213,6 +4215,7 @@ with pkgs; llvm_22 bolt_22 flang_22 + llvmPackages_23 mkLLVMPackages ; From f7db4f962dc4ec42ac517b045d08848ebad76c29 Mon Sep 17 00:00:00 2001 From: Tristan Ross Date: Sun, 19 Jul 2026 22:45:13 -0700 Subject: [PATCH 38/50] llvmPackages_git: 23.0.0-unstable-2026-07-12 -> 24.0.0-unstable-2026-07-19 (cherry picked from commit 505ba675fe6d58b1b9c9d8e71bbbfb697def7806) --- pkgs/development/compilers/llvm/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index 362400008a26..15d36c0e5f09 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -35,6 +35,11 @@ let }; name = "23"; }; + "24.0.0-git".gitRelease = { + rev = "a64f7412551ae63a49dd8617f93ab89878288879"; + rev-version = "24.0.0-unstable-2026-07-19"; + sha256 = "sha256-51tlsUW4cObqyCGsrvzFoisNtN9S8Qk7iCDbg6/awVI="; + }; } // llvmVersions; From be280e6d145524b5534967ff002ea695be6f4f48 Mon Sep 17 00:00:00 2001 From: Tristan Ross Date: Sun, 26 Jul 2026 18:37:56 -0700 Subject: [PATCH 39/50] llvmPackages_git: 23.0.0-unstable-2026-07-19 -> 24.0.0-unstable-2026-07-26 (cherry picked from commit f0f02fcf8f62a22c0e1afab54330693659e1a2d3) --- pkgs/development/compilers/llvm/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index 15d36c0e5f09..b6cdcc547344 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -36,9 +36,9 @@ let name = "23"; }; "24.0.0-git".gitRelease = { - rev = "a64f7412551ae63a49dd8617f93ab89878288879"; - rev-version = "24.0.0-unstable-2026-07-19"; - sha256 = "sha256-51tlsUW4cObqyCGsrvzFoisNtN9S8Qk7iCDbg6/awVI="; + rev = "43a704b657423a0eead02e64911b413c4afca73f"; + rev-version = "24.0.0-unstable-2026-07-26"; + sha256 = "sha256-wXhYrz3g5F7iwVqgIVryfRtkQ+3lKIKRDd9D8X18dEE="; }; } // llvmVersions; From f91f282daaef2064e8ac277aac3c269fbec601d6 Mon Sep 17 00:00:00 2001 From: Joe Ardent Date: Sun, 2 Aug 2026 12:58:31 -0700 Subject: [PATCH 40/50] jocalsend: 1.618033988 -> 1.6180339887 (cherry picked from commit 95e604f6d101d0862e4f0ab7ebbf10f33886586c) --- pkgs/by-name/jo/jocalsend/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/jo/jocalsend/package.nix b/pkgs/by-name/jo/jocalsend/package.nix index ad86d22c6a19..bd997fa55d89 100644 --- a/pkgs/by-name/jo/jocalsend/package.nix +++ b/pkgs/by-name/jo/jocalsend/package.nix @@ -9,7 +9,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "jocalsend"; - version = "1.618033988"; + version = "1.6180339887"; __structuredAttrs = true; @@ -18,10 +18,10 @@ rustPlatform.buildRustPackage (finalAttrs: { owner = "nebkor"; repo = "joecalsend"; tag = finalAttrs.version; - hash = "sha256-nzsvVC1e8ENh0bpQwiogGew823NNmSNXN+VZZHfVFIY="; + hash = "sha256-sOgFOAJXX5mugjMfTICNrJHc/DRD5zdZsg/K4cbRjlQ="; }; - cargoHash = "sha256-5V/a6rj08Ucu6S+SBukYQktWLVnnbXeoGan1oYTozHc="; + cargoHash = "sha256-UEzyy6SQ3ntJHeXivd6e8Xvr4aTdpfYrFMWqLjoBrJc="; nativeBuildInputs = [ pkg-config From 854ae2333c30266b9d3e5368da62fac0cf81649a Mon Sep 17 00:00:00 2001 From: BatteredBunny Date: Mon, 3 Aug 2026 11:46:23 +0300 Subject: [PATCH 41/50] mpvScripts.videoclip: 0.2-unstable-2026-07-07 -> 26.7.30.0 (cherry picked from commit 3bac237d6086fa9299750be888bd33b4ee6d47ad) --- pkgs/by-name/mp/mpv/scripts/videoclip.nix | 41 +++++++++++------------ 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/pkgs/by-name/mp/mpv/scripts/videoclip.nix b/pkgs/by-name/mp/mpv/scripts/videoclip.nix index ee75757f57e8..88f245f97540 100644 --- a/pkgs/by-name/mp/mpv/scripts/videoclip.nix +++ b/pkgs/by-name/mp/mpv/scripts/videoclip.nix @@ -1,38 +1,37 @@ { lib, - fetchFromGitHub, - curl, - xclip, - wl-clipboard, - stdenv, buildLua, - unstableGitUpdater, + fetchFromGitHub, + gitUpdater, + stdenv, + curl, + wl-clipboard, + xclip, }: -buildLua { +buildLua (finalAttrs: { pname = "videoclip"; - version = "0.2-unstable-2026-07-07"; + version = "26.7.30.0"; src = fetchFromGitHub { owner = "Ajatt-Tools"; repo = "videoclip"; - rev = "979bae398da7ccd70cb2fb305c371b7af9259b10"; - hash = "sha256-k3fxSeAjRZg4J5x5IQhKGYtUqfBE4heR1KNurGTElGs="; + tag = "v${finalAttrs.version}"; + hash = "sha256-4ptnF3/L3U0CDucYcd8/O5EN1mUtnor+iXLRXbiC7os="; }; - patchPhase = '' - substituteInPlace platform.lua \ - --replace \'curl\' \'${lib.getExe curl}\' \ + postPatch = '' + substituteInPlace videoclip/platform.lua \ + --replace-fail "'curl'" "'${lib.getExe curl}'" '' + lib.optionalString stdenv.hostPlatform.isLinux '' - --replace xclip ${lib.getExe xclip} \ - --replace wl-copy ${lib.getExe' wl-clipboard "wl-copy"} + substituteInPlace videoclip/platform.lua \ + --replace-fail '"wl-copy' '"${lib.getExe' wl-clipboard "wl-copy"}' \ + --replace-fail '"xclip' '"${lib.getExe xclip}' ''; - scriptPath = "."; - passthru.scriptName = "videoclip"; - passthru.updateScript = unstableGitUpdater { - tagPrefix = "v"; - }; + scriptPath = "videoclip"; + + passthru.updateScript = gitUpdater { rev-prefix = "v"; }; meta = { description = "Easily create videoclips with mpv"; @@ -41,4 +40,4 @@ buildLua { platforms = lib.platforms.all; maintainers = with lib.maintainers; [ BatteredBunny ]; }; -} +}) From 8bcd5b832a7e5cd201fa540c2b513967ba1eff52 Mon Sep 17 00:00:00 2001 From: BatteredBunny Date: Sat, 1 Aug 2026 13:06:26 +0300 Subject: [PATCH 42/50] python3Packages.exllamav3: 1.2.1 -> 1.3.0 (cherry picked from commit ca88151ea457baa33869559cfae3fd6edeba612e) --- pkgs/development/python-modules/exllamav3/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/exllamav3/default.nix b/pkgs/development/python-modules/exllamav3/default.nix index c339bd7165e1..86cd146e35ee 100644 --- a/pkgs/development/python-modules/exllamav3/default.nix +++ b/pkgs/development/python-modules/exllamav3/default.nix @@ -27,14 +27,14 @@ let in buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: { pname = "exllamav3"; - version = "1.2.1"; + version = "1.3.0"; pyproject = true; src = fetchFromGitHub { owner = "turboderp-org"; repo = "exllamav3"; tag = "v${finalAttrs.version}"; - hash = "sha256-ErsCtCM/T1YuCQAwrKhc860ETLgiS5Qu4nrQSuEzsPk="; + hash = "sha256-pWdh5fiGZEkdSLXvI5DAEdj6XmBFquzew57L1YIsEg8="; }; pythonRelaxDeps = [ From a64b541385660d3cd034156994861dfe43f74f9c Mon Sep 17 00:00:00 2001 From: BatteredBunny Date: Sat, 1 Aug 2026 13:08:20 +0300 Subject: [PATCH 43/50] tabbyapi: 0-unstable-2026-07-18 -> 0-unstable-2026-07-31 (cherry picked from commit 78c2ffc20a1a10caf64fc28726fbce27027e92b7) --- pkgs/by-name/ta/tabbyapi/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ta/tabbyapi/package.nix b/pkgs/by-name/ta/tabbyapi/package.nix index 2ecf9cb6b700..e6eed91c61ff 100644 --- a/pkgs/by-name/ta/tabbyapi/package.nix +++ b/pkgs/by-name/ta/tabbyapi/package.nix @@ -7,14 +7,14 @@ }: python3Packages.buildPythonApplication { pname = "tabbyapi"; - version = "0-unstable-2026-07-18"; + version = "0-unstable-2026-07-31"; pyproject = true; src = fetchFromGitHub { owner = "theroyallab"; repo = "tabbyAPI"; - rev = "0158fb48d76546a6475d1d63f6cd5b90932d1d11"; - hash = "sha256-Bkpx3MyZg7Np5zXAsq8mgxdAFsHUZhy2NZ93XSLbJgk="; + rev = "29680f496b57e3ed1a496c580677d2d67ac729b8"; + hash = "sha256-eB8Q4iVlNCrgHHWutuhxzD+bQfC5Yx3z2rSCCSFsrL4="; }; build-system = with python3Packages; [ From 70eb91223666712932bfcc8b6eb4919176e6c5d9 Mon Sep 17 00:00:00 2001 From: BatteredBunny Date: Sat, 1 Aug 2026 14:47:01 +0300 Subject: [PATCH 44/50] nixos/tabbyapi: sync with upstream options; add assert for deprecated option (cherry picked from commit 93cacbcfe776b7cc8a584a54068129b0530463bc) --- nixos/modules/services/web-apps/tabbyapi.nix | 453 +++++++++++++++++++ 1 file changed, 453 insertions(+) diff --git a/nixos/modules/services/web-apps/tabbyapi.nix b/nixos/modules/services/web-apps/tabbyapi.nix index a955afe463b5..7c357b15551f 100644 --- a/nixos/modules/services/web-apps/tabbyapi.nix +++ b/nixos/modules/services/web-apps/tabbyapi.nix @@ -35,12 +35,14 @@ in type = lib.types.str; default = "127.0.0.1"; description = "The IP to host on. Use 0.0.0.0 to expose on all network adapters."; + example = "0.0.0.0"; }; port = lib.mkOption { type = lib.types.port; default = 5000; description = "The port to host on."; + example = 8080; }; disable_auth = lib.mkOption { @@ -58,10 +60,34 @@ in description = "Disable fetching external content in response to requests, such as images from URLs."; }; + send_tracebacks = lib.mkOption { + type = lib.types.bool; + default = false; + description = '' + Send tracebacks over the API. + NOTE: Only enable this for debug purposes. + ''; + }; + api_servers = lib.mkOption { type = lib.types.listOf lib.types.str; default = [ "OAI" ]; description = "Select API servers to enable. Possible values: OAI, Kobold."; + example = [ + "OAI" + "Kobold" + ]; + }; + + sse_ping_interval = lib.mkOption { + type = lib.types.ints.unsigned; + default = 15; + description = '' + Seconds between SSE keep-alive pings on streaming responses. + Pings are SSE comments, ignored by compliant clients, and prevent + connections from dropping during long prefills. Set to 0 to disable. + ''; + example = 0; }; }; @@ -72,6 +98,12 @@ in description = "Enable prompt logging."; }; + log_generation_params = lib.mkOption { + type = lib.types.bool; + default = false; + description = "Enable generation parameter logging."; + }; + log_requests = lib.mkOption { type = lib.types.bool; default = false; @@ -141,6 +173,15 @@ in ''; }; + use_dummy_models = lib.mkOption { + type = lib.types.bool; + default = false; + description = '' + Sends dummy model names when the models endpoint is queried. + Enable this if the client is looking for specific OAI models. + ''; + }; + model_name = lib.mkOption { type = lib.types.nullOr lib.types.str; default = null; @@ -151,6 +192,20 @@ in example = "Qwen3_5-9B"; }; + use_as_default = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + description = '' + Names of args to use as a fallback for API load requests. + For example, if you always want cache_mode to be Q4 instead of only on the + initial model load, add "cache_mode" to this list. + ''; + example = [ + "max_seq_len" + "cache_mode" + ]; + }; + max_seq_len = lib.mkOption { type = lib.types.nullOr lib.types.int; default = null; @@ -158,6 +213,22 @@ in Max sequence length (default: min(max_position_embeddings, cache_size)). Set to -1 to fetch from the model's config.json. ''; + example = 32768; + }; + + cache_size = lib.mkOption { + type = lib.types.nullOr ( + lib.types.addCheck lib.types.ints.positive (n: lib.mod n 256 == 0) + // { + description = "positive integer, multiple of 256"; + } + ); + default = null; + description = '' + Size of the key/value cache to allocate, in tokens (default: 4096). + Must be a multiple of 256. + ''; + example = 32768; }; cache_mode = lib.mkOption { @@ -168,6 +239,7 @@ in Specify the pair k_bits,v_bits where k_bits and v_bits are integers from 2-8 (e.g. '8,8'). The legacy values 'FP16', 'Q8', 'Q6', 'Q4' are also accepted. ''; + example = "8,8"; }; tensor_parallel = lib.mkOption { @@ -185,6 +257,111 @@ in description = "Automatically allocate resources to GPUs. Not parsed for single GPU users."; }; + autosplit_reserve = lib.mkOption { + type = lib.types.listOf lib.types.number; + default = [ 96 ]; + description = '' + Reserve VRAM used for autosplit loading, as a list of MB per GPU + (default: 96 MB on GPU 0). + ''; + example = [ + 96 + 96 + ]; + }; + + gpu_split = lib.mkOption { + type = lib.types.listOf lib.types.number; + default = [ ]; + description = '' + List of VRAM sizes to split between GPUs, in GB. + Used with tensor parallelism. + ''; + example = [ + 16 + 24 + ]; + }; + + cpu_moe_offload_layers = lib.mkOption { + type = lib.types.ints.unsigned; + default = 0; + description = '' + Number of mixture-of-expert layers to offload to CPU inference. + Only affects MoE models. Set a large value such as 999 to offload all layers. + ''; + example = 999; + }; + + rope_scale = lib.mkOption { + type = lib.types.nullOr lib.types.number; + default = 1.0; + description = '' + Rope scale, same as compress_pos_emb. + Use if the model was trained on long context with rope. + Set to null to pull the value from the model. + + NOTE: If a model has YaRN rope scaling, it will automatically be enabled by + ExLlama and the rope_scale and rope_alpha settings won't apply. + ''; + example = 4.0; + }; + + rope_alpha = lib.mkOption { + type = lib.types.nullOr (lib.types.either lib.types.number (lib.types.enum [ "auto" ])); + default = null; + description = '' + Rope alpha, same as alpha_value. Set to "auto" to auto-calculate. + Leaving this null will either pull from the model or auto-calculate. + ''; + example = "auto"; + }; + + chunk_size = lib.mkOption { + type = lib.types.ints.positive; + default = 2048; + description = '' + Chunk size for prompt ingestion. + A lower value reduces VRAM usage but decreases ingestion speed. + NOTE: Effects vary depending on the model. An ideal value is between 512 and 4096. + ''; + example = 512; + }; + + output_chunking = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Use output chunking. Instead of allocating cache space for the entire completion + at once, allocate in chunks as needed. Used by EXL3 models only. + ''; + }; + + max_batch_size = lib.mkOption { + type = lib.types.nullOr lib.types.ints.positive; + default = null; + description = '' + Set the maximum number of generation jobs that can run concurrently. + The default maximum batch size for transformer architectures is 32. Recurrent + models with linear or sliding attention use more VRAM to support larger batches, + so the default value is reduced to 4. If you do not require concurrency at all, + you can reduce it further to minimize VRAM overhead. + ''; + example = 1; + }; + + prompt_template = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = null; + description = '' + Set the prompt template for this model. + If null, attempts to look for the model's chat template. + If a model contains multiple templates in its tokenizer_config.json, + set this to the name of the template you want to use. + NOTE: Only works with chat completion message lists! + ''; + }; + dummy_model_names = lib.mkOption { type = lib.types.listOf lib.types.str; default = [ "gpt-3.5-turbo" ]; @@ -192,6 +369,10 @@ in A list of fake model names that are sent via the /v1/models endpoint. Also used as bypasses for strict mode if inline_model_loading is true. ''; + example = [ + "gpt-3.5-turbo" + "gpt-4" + ]; }; vision = lib.mkOption { @@ -200,6 +381,34 @@ in description = "Enables vision support if the model supports it."; }; + template_vars_default = lib.mkOption { + type = lib.types.attrsOf lib.types.anything; + default = { }; + description = '' + Default chat template variables. Merged into the template variables of every + chat completion request; values sent by the client (template_vars / + chat_template_kwargs, or the top-level reasoning_effort field) take precedence. + Use for model-specific reasoning knobs. + ''; + example = { + enable_thinking = true; + }; + }; + + template_vars_force = lib.mkOption { + type = lib.types.attrsOf lib.types.anything; + default = { }; + description = '' + Forced chat template variables. Like template_vars_default, but these override + any values sent by the client. + Replaces the deprecated force_enable_thinking option, which is still accepted + as an alias for { enable_thinking = true; }. + ''; + example = { + reasoning_effort = "high"; + }; + }; + reasoning = lib.mkOption { type = lib.types.bool; default = false; @@ -220,7 +429,243 @@ in default = ""; description = "The end token for reasoning content."; }; + + start_in_reasoning = lib.mkOption { + type = lib.types.enum [ + "auto" + "always" + "never" + ]; + default = "auto"; + description = '' + Whether generation starts inside a reasoning block. + "auto" guesses by scanning the end of the templated prompt for an unclosed + reasoning start token. + ''; + example = "always"; + }; + + tool_calls_in_reasoning = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Parse tool calls that occur inside reasoning content. + If false, tool call tags inside a reasoning block are treated as plain + reasoning text. + ''; + }; + + tool_format = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = null; + description = '' + Tool format, e.g. "qwen3_coder". See upstream docs for supported formats. + If null, tool calls from the model will not be parsed by the server. + ''; + example = "qwen3_coder"; + }; + + harmony = lib.mkOption { + type = lib.types.nullOr lib.types.bool; + default = null; + description = '' + Parse responses in the Harmony message format (gpt-oss models). + Auto-detected from the model's special tokens when null; set to true or false + to override. Setting tool_format to "harmony" is equivalent to setting this to + true. When active, supersedes the reasoning and tool format settings. + ''; + }; }; + + draft_model = { + draft_mode = lib.mkOption { + type = lib.types.enum [ + "model" + "disabled" + "mtp" + "ngram" + ]; + default = "model"; + description = '' + Drafting mode for exllamav3. + In "model" mode, drafting is disabled if no draft_model_name is provided. + ''; + example = "ngram"; + }; + + draft_model_dir = lib.mkOption { + type = lib.types.str; + default = "models"; + description = "Directory to look for draft models. Relative to the state directory."; + example = "drafts"; + }; + + draft_model_name = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = null; + description = '' + An initial draft model to load. + Ensure the model is in the draft model directory. + ''; + example = "Qwen3-0.6B-exl3"; + }; + + draft_rope_scale = lib.mkOption { + type = lib.types.nullOr lib.types.number; + default = 1.0; + description = '' + Rope scale for draft models, same as compress_pos_emb. + Use if the draft model was trained on long context with rope. + ''; + example = 4.0; + }; + + draft_rope_alpha = lib.mkOption { + type = lib.types.nullOr lib.types.number; + default = null; + description = '' + Rope alpha for draft models, same as alpha_value. + Leaving this null will either pull from the model or auto-calculate. + ''; + example = 2.0; + }; + + draft_cache_mode = lib.mkOption { + type = lib.types.enum [ + "FP16" + "Q8" + "Q6" + "Q4" + ]; + default = "FP16"; + description = '' + Cache mode for draft models to save VRAM. + Unlike the model's cache_mode, this does not accept a k_bits,v_bits pair. + ''; + example = "Q8"; + }; + + draft_gpu_split = lib.mkOption { + type = lib.types.listOf lib.types.number; + default = [ ]; + description = '' + List of VRAM sizes to split between GPUs, in GB. + If this is empty, the draft model is autosplit. + ''; + example = [ + 2 + 2 + ]; + }; + + draft_num_tokens = lib.mkOption { + type = lib.types.nullOr lib.types.ints.positive; + default = null; + description = '' + Number of tokens to draft per iteration (default: draft model default). + Recurrent (linear or sliding attention) models use more VRAM for longer drafts. + This overhead multiplies with the max batch size, so for models with long drafts + (e.g. DFlash with 15 tokens by default) shorter drafts may be preferable. + ''; + example = 4; + }; + + dynamic_draft = lib.mkOption { + type = lib.types.bool; + default = false; + description = '' + Adjust number of draft tokens dynamically based on observed acceptance rates. + Ceiling is given by draft_num_tokens. + ''; + }; + + ngram_match_min = lib.mkOption { + type = lib.types.ints.positive; + default = 2; + description = '' + Minimum match length for exllamav3 n-gram drafting. + Only used when draft_mode is "ngram". + ''; + example = 3; + }; + }; + + sampling = { + override_preset = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = null; + description = '' + Select a sampler override preset, found in the sampler-overrides folder. + This overrides default fallbacks for sampler values that are passed to the API. + NOTE: "safe_defaults" is noob friendly and provides fallbacks for frontends that + don't send sampling parameters. Leave this null for any advanced usage. + ''; + example = "safe_defaults"; + }; + }; + + lora = { + lora_dir = lib.mkOption { + type = lib.types.str; + default = "loras"; + description = "Directory to look for LoRAs. Relative to the state directory."; + }; + + loras = lib.mkOption { + type = lib.types.listOf ( + lib.types.submodule { + options = { + name = lib.mkOption { + type = lib.types.str; + description = "Name of the LoRA directory inside lora_dir."; + }; + + scaling = lib.mkOption { + type = lib.types.number; + default = 1.0; + description = "Scaling factor for this LoRA."; + }; + }; + } + ); + default = [ ]; + description = "List of LoRAs to load and associated scaling factors."; + example = [ + { + name = "lora1"; + scaling = 1.0; + } + ]; + }; + }; + + memory = { + sysmem_recurrent_cache = lib.mkOption { + type = lib.types.ints.unsigned; + default = 4096; + description = "Max size of recurrent cache in system memory, in MB."; + example = 8192; + }; + + sysmem_kv_cache = lib.mkOption { + type = lib.types.ints.unsigned; + default = 0; + description = "Size of system memory second-tier key/value cache, in MB."; + example = 4096; + }; + + cuda_malloc_async = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Use the cudaMallocAsync backend in Torch. + Enabling this is generally preferable, but it may cause issues with certain + workloads. Try disabling it if you experience intermittent OoM errors. If false, + Torch will use the allocator defined by the system environment. + ''; + }; + }; + }; }; }; @@ -236,6 +681,14 @@ in services.tabbyapi.package = pkgs.pkgsCuda.tabbyapi; ''; } + { + assertion = !(cfg.settings.model ? force_enable_thinking); + message = '' + services.tabbyapi.settings.model.force_enable_thinking is deprecated upstream. + Use template_vars_force instead: + services.tabbyapi.settings.model.template_vars_force.enable_thinking = true; + ''; + } ]; networking.firewall.allowedTCPPorts = lib.mkIf cfg.openFirewall [ cfg.settings.network.port From c383ad57102e347506ba4e2108bb45fda027e8ba Mon Sep 17 00:00:00 2001 From: Sizhe Zhao Date: Mon, 3 Aug 2026 20:18:01 +0800 Subject: [PATCH 45/50] sing-box: 1.13.15 -> 1.13.16 (cherry picked from commit d59e92bd4a12afeb76691923478c125947ebea90) --- pkgs/by-name/si/sing-box/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/si/sing-box/package.nix b/pkgs/by-name/si/sing-box/package.nix index 467f0ae8be37..5cb755599cc6 100644 --- a/pkgs/by-name/si/sing-box/package.nix +++ b/pkgs/by-name/si/sing-box/package.nix @@ -10,16 +10,16 @@ buildGoModule (finalAttrs: { pname = "sing-box"; - version = "1.13.15"; + version = "1.13.16"; src = fetchFromGitHub { owner = "SagerNet"; repo = "sing-box"; tag = "v${finalAttrs.version}"; - hash = "sha256-YkbF5+smzP+AQ161xvTBO01ZIB3PonHVM0l5DVRSnFs="; + hash = "sha256-GAIU0SRvxU92E40zCkMsiSPuIEIUZM5vORN2u2XIhqs="; }; - vendorHash = "sha256-HIMKtolVXbmyV1vmXXAt3O/2NTp4HwzhUWChs8I4+cs="; + vendorHash = "sha256-ZUEpYfgb/iflImVCdLIgUzfp4QY9ho1gYkIAJV1tXrg="; tags = [ "with_gvisor" From 371888e5433c17e4beb06d45581ad227aea61643 Mon Sep 17 00:00:00 2001 From: Ashish SHUKLA Date: Sun, 2 Aug 2026 10:26:09 +0000 Subject: [PATCH 46/50] weechat: 4.9.5 -> 4.10.0 (cherry picked from commit c953121780bf341dd64d114bc71ed6d28094a5f0) --- pkgs/applications/networking/irc/weechat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix index aacea71aedf9..73c8763b5de5 100644 --- a/pkgs/applications/networking/irc/weechat/default.nix +++ b/pkgs/applications/networking/irc/weechat/default.nix @@ -105,11 +105,11 @@ assert lib.all (p: p.enabled -> !(builtins.elem null p.buildInputs)) plugins; stdenv.mkDerivation rec { pname = "weechat"; - version = "4.9.5"; + version = "4.10.0"; src = fetchurl { url = "https://weechat.org/files/src/weechat-${version}.tar.xz"; - hash = "sha256-OzlGEE5kU20GAjcKMOVd1aMBzI/0IBhP8KEBkm2tHRY="; + hash = "sha256-w6fnxqVAHd6aRtAmT6RKowMsqYqoZBDEVNPeXGlQXFQ="; }; # Why is this needed? https://github.com/weechat/weechat/issues/2031 From ef7fabc18691271d123466a001935e5f43085824 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 2 Aug 2026 21:31:53 +0000 Subject: [PATCH 47/50] linuxKernel.kernels.linux_zen: 7.1.4 -> 7.1.5 (cherry picked from commit de7c4f3621806ecc4bae441811f190e82bd9d6ad) --- pkgs/os-specific/linux/kernel/zen-kernels.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix index c9602d0e5872..400a5d5a3cdd 100644 --- a/pkgs/os-specific/linux/kernel/zen-kernels.nix +++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix @@ -18,7 +18,7 @@ in buildLinux ( args // rec { - version = "7.1.4"; + version = "7.1.5"; pname = "linux-zen"; modDirVersion = lib.versions.pad 3 "${version}-${suffix}"; isZen = true; @@ -27,7 +27,7 @@ buildLinux ( owner = "zen-kernel"; repo = "zen-kernel"; rev = "v${version}-${suffix}"; - sha256 = "1k27xhzd390krk60kay6cabl0jlpb26m6cwvdh3r8izbwgx1r0ig"; + sha256 = "11d3c2hx2py6fy6qj0dqk2w392m144wjrfg5ldfh93x9mp4ffhjd"; }; # This is based on the following source: From 286c39c577eee79a4c733c90c204aa621b4003bc Mon Sep 17 00:00:00 2001 From: eljamm Date: Mon, 3 Aug 2026 19:28:18 +0000 Subject: [PATCH 48/50] linux_xanmod: 6.18.41 -> 6.18.42 - Changelog: https://dl.xanmod.org/changelog/6.18/ChangeLog-6.18.42-xanmod1.gz - Diff: https://gitlab.com/xanmod/linux/-/compare/6.18.41-xanmod1..6.18.42-xanmod1?from_project_id=51590166 (cherry picked from commit 1ed53fd2785eabbbe1e102443f6b13c6c1dc7efe) --- 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 5b5628d19405..7e404a437137 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -15,8 +15,8 @@ let variants = { # ./update-xanmod.sh lts lts = { - version = "6.18.41"; - hash = "sha256-nGDN+qkTNaUVgV+aFOvEtwkDaK7uqpjvXgENpkviDFg="; + version = "6.18.42"; + hash = "sha256-yDtXLGdFM4rg8mtxUJbUvCvjs2dvFiSGuCV7seKlWqM="; isLTS = true; }; # ./update-xanmod.sh main From c608cc3678bc3f37db870d312eb0ba9fb9b98462 Mon Sep 17 00:00:00 2001 From: eljamm Date: Mon, 3 Aug 2026 19:30:25 +0000 Subject: [PATCH 49/50] linux_xanmod_latest: 7.1.5 -> 7.1.6 - Changelog: https://dl.xanmod.org/changelog/7.1/ChangeLog-7.1.6-xanmod1.gz - Diff: https://gitlab.com/xanmod/linux/-/compare/7.1.5-xanmod1..7.1.6-xanmod1?from_project_id=51590166 (cherry picked from commit 3a2d453bf0fe8fbca43d6ad172718d4852b48092) --- 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 7e404a437137..c64a7ce1fd44 100644 --- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix +++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix @@ -21,8 +21,8 @@ let }; # ./update-xanmod.sh main main = { - version = "7.1.5"; - hash = "sha256-zELqn/UieXjOBkTNTLi2OCkK4+rpD/IfJEDb7GTTJfk="; + version = "7.1.6"; + hash = "sha256-H+dNmTMCWfJm792HR6lz1wVUD70pyZpn5HlTUXwsnLI="; }; }; From b77e18ce1d02a8743233574346f18a36537fd9db Mon Sep 17 00:00:00 2001 From: 6543 <6543@obermui.de> Date: Mon, 27 Jul 2026 22:56:25 +0200 Subject: [PATCH 50/50] proxysql: fix build by adjusting for gcc 15 Assisted-by: Claude Opus 5 (cherry picked from commit 7c9566751be225ed0d5443ce7ea84f30e6faf2ae) --- pkgs/by-name/pr/proxysql/btree-cstdint.patch | 16 ++++++++++++++++ pkgs/by-name/pr/proxysql/makefiles.patch | 2 +- pkgs/by-name/pr/proxysql/package.nix | 1 + 3 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 pkgs/by-name/pr/proxysql/btree-cstdint.patch diff --git a/pkgs/by-name/pr/proxysql/btree-cstdint.patch b/pkgs/by-name/pr/proxysql/btree-cstdint.patch new file mode 100644 index 000000000000..c5eae1c371d2 --- /dev/null +++ b/pkgs/by-name/pr/proxysql/btree-cstdint.patch @@ -0,0 +1,16 @@ +The vendored copy of Google's cpp-btree relies on being pulled in +transitively. libstdc++ 15 no longer does so, which makes uint8_t/uint16_t +undeclared, and the resulting fallback to int trips the kNodeValues +COMPILE_ASSERT with a "1 << 32" shift. + +diff --git a/include/btree.h b/include/btree.h +--- a/include/btree.h ++++ b/include/btree.h +@@ -104,6 +104,7 @@ + #include + #include + #include ++#include + #include + #include + #include diff --git a/pkgs/by-name/pr/proxysql/makefiles.patch b/pkgs/by-name/pr/proxysql/makefiles.patch index 17facc6744c1..bc47db822b4a 100644 --- a/pkgs/by-name/pr/proxysql/makefiles.patch +++ b/pkgs/by-name/pr/proxysql/makefiles.patch @@ -151,7 +151,7 @@ index 87d2a20e..505e069a 100644 cd mariadb-client-library && tar -zxf mariadb-connector-c-3.3.8-src.tar.gz cd mariadb-client-library/mariadb_client && patch -p0 < ../plugin_auth_CMakeLists.txt.patch - cd mariadb-client-library/mariadb_client && cmake . -Wno-dev -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOPENSSL_ROOT_DIR=$(SSL_IDIR) -DOPENSSL_LIBRARIES=$(SSL_LDIR) -DICONV_LIBRARIES=$(brew --prefix libiconv)/lib -DICONV_INCLUDE=$(brew --prefix libiconv)/include . -+ cd mariadb-client-library/mariadb_client && cmake . -Wno-dev -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOPENSSL_ROOT_DIR=$(SSL_IDIR) -DOPENSSL_LIBRARIES=$(SSL_LDIR) -DICONV_LIBRARIES=$(brew --prefix libiconv)/lib -DICONV_INCLUDE=$(brew --prefix libiconv)/include . ++ cd mariadb-client-library/mariadb_client && cmake . -Wno-dev -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_C_FLAGS=-std=gnu17 -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOPENSSL_ROOT_DIR=$(SSL_IDIR) -DOPENSSL_LIBRARIES=$(SSL_LDIR) -DICONV_LIBRARIES=$(brew --prefix libiconv)/lib -DICONV_INCLUDE=$(brew --prefix libiconv)/include . ifeq ($(PROXYDEBUG),1) cd mariadb-client-library/mariadb_client && patch -p0 < ../ma_context.h.patch else ifeq ($(USEVALGRIND),1) diff --git a/pkgs/by-name/pr/proxysql/package.nix b/pkgs/by-name/pr/proxysql/package.nix index 373a1bab4b58..e77800e80a42 100644 --- a/pkgs/by-name/pr/proxysql/package.nix +++ b/pkgs/by-name/pr/proxysql/package.nix @@ -49,6 +49,7 @@ stdenv.mkDerivation (finalAttrs: { patches = [ ./makefiles.patch ./dont-phone-home.patch + ./btree-cstdint.patch ]; nativeBuildInputs = [