From 44751112653e5d49cd9df6b7749bc802f00d646d Mon Sep 17 00:00:00 2001 From: Inarizxc Date: Mon, 15 Dec 2025 22:31:36 +0300 Subject: [PATCH 01/86] vex-tui: init at 2.0.1 --- pkgs/by-name/ve/vex-tui/package.nix | 36 +++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 pkgs/by-name/ve/vex-tui/package.nix diff --git a/pkgs/by-name/ve/vex-tui/package.nix b/pkgs/by-name/ve/vex-tui/package.nix new file mode 100644 index 000000000000..d58f2b7d7b45 --- /dev/null +++ b/pkgs/by-name/ve/vex-tui/package.nix @@ -0,0 +1,36 @@ +{ + buildGoModule, + fetchFromGitHub, + lib, +}: +buildGoModule (finalAttrs: { + pname = "vex-tui"; + version = "2.0.1"; + + src = fetchFromGitHub { + owner = "CodeOne45"; + repo = "vex-tui"; + tag = "v${finalAttrs.version}"; + hash = "sha256-NHGqfdto2geJD9FUFMC/MEpGocNrRN8gtJ0J/6kSJkc="; + }; + + vendorHash = "sha256-PvaV0tJjIVppB36Cxg4aAKX0MBjgFC5S4GTs1zHxCCU="; + + ldflags = [ + "-s" + "-w" + "-X main.version=${finalAttrs.version}" + ]; + + postInstall = '' + mv $out/bin/{vex-tui,vex} + ''; + + meta = { + description = "Beautiful, fast, and feature-rich terminal-based Excel and CSV viewer built with Go"; + homepage = "https://github.com/CodeOne45/vex-tui"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ Inarizxc ]; + platforms = lib.platforms.linux; + }; +}) From 40b42e9f70f8be1c94afd551e1df4f625b8126da Mon Sep 17 00:00:00 2001 From: Svenum Date: Fri, 27 Feb 2026 09:17:46 +0100 Subject: [PATCH 02/86] nixos/network-interfaces: Add iplvan support --- .../manual/release-notes/rl-2605.section.md | 2 + nixos/lib/systemd-network-units.nix | 3 ++ nixos/modules/system/boot/networkd.nix | 9 ++++ .../tasks/network-interfaces-scripted.nix | 36 ++++++++++++++ .../tasks/network-interfaces-systemd.nix | 18 +++++++ nixos/modules/tasks/network-interfaces.nix | 48 +++++++++++++++++++ .../networking/networkd-and-scripted.nix | 32 +++++++++++++ 7 files changed, 148 insertions(+) diff --git a/nixos/doc/manual/release-notes/rl-2605.section.md b/nixos/doc/manual/release-notes/rl-2605.section.md index 9b4195948cce..d969f74ce454 100644 --- a/nixos/doc/manual/release-notes/rl-2605.section.md +++ b/nixos/doc/manual/release-notes/rl-2605.section.md @@ -189,6 +189,8 @@ See . - `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. +- IPVLAN interfaces can now be configured through the `networking.ipvlans` option in the networking module. + - `services.caddy` now supports setting `httpPort` and `httpsPort` and opening them in the firewall via `openFirewall`. - The latest available version of Nextcloud is v33 (available as `pkgs.nextcloud33`). The installation logic is as follows: diff --git a/nixos/lib/systemd-network-units.nix b/nixos/lib/systemd-network-units.nix index ffaefa972767..72752bd093f1 100644 --- a/nixos/lib/systemd-network-units.nix +++ b/nixos/lib/systemd-network-units.nix @@ -153,6 +153,9 @@ in + optionalString (def.macvlan != [ ]) '' ${concatStringsSep "\n" (map (s: "MACVLAN=${s}") def.macvlan)} '' + + optionalString (def.ipvlan != [ ]) '' + ${concatStringsSep "\n" (map (s: "IPVLAN=${s}") def.ipvlan)} + '' + optionalString (def.macvtap != [ ]) '' ${concatStringsSep "\n" (map (s: "MACVTAP=${s}") def.macvtap)} '' diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix index 2385fa5c19a7..c8dadd09e9ce 100644 --- a/nixos/modules/system/boot/networkd.nix +++ b/nixos/modules/system/boot/networkd.nix @@ -3037,6 +3037,15 @@ let ''; }; + ipvlan = mkOption { + default = [ ]; + type = types.listOf types.str; + description = '' + A list of ipvlan interfaces to be added to the network section of the + unit. See {manpage}`systemd.network(5)` for details. + ''; + }; + macvtap = mkOption { default = [ ]; type = types.listOf types.str; diff --git a/nixos/modules/tasks/network-interfaces-scripted.nix b/nixos/modules/tasks/network-interfaces-scripted.nix index e4408b6771d2..4b457e078e77 100644 --- a/nixos/modules/tasks/network-interfaces-scripted.nix +++ b/nixos/modules/tasks/network-interfaces-scripted.nix @@ -21,6 +21,7 @@ let attrValues cfg.vswitches ) ++ concatMap (i: [ i.interface ]) (attrValues cfg.macvlans) + ++ concatMap (i: [ i.interface ]) (attrValues cfg.ipvlans) ++ concatMap (i: [ i.interface ]) (attrValues cfg.vlans); # We must escape interfaces due to the systemd interpretation @@ -106,6 +107,7 @@ let || (hasAttr dev cfg.bridges) || (hasAttr dev cfg.bonds) || (hasAttr dev cfg.macvlans) + || (hasAttr dev cfg.ipvlans) || (hasAttr dev cfg.sits) || (hasAttr dev cfg.ipips) || (hasAttr dev cfg.vlans) @@ -590,6 +592,39 @@ let } ); + createIpvlanDevice = + n: v: + nameValuePair "${n}-netdev" ( + let + deps = deviceDependency v.interface; + in + { + description = "IPVLAN Interface ${n}"; + wantedBy = [ + "network.target" + "network-setup.service" + (subsystemDevice n) + ]; + bindsTo = deps; + after = [ "network-pre.target" ] ++ deps; + before = [ "network-setup.service" ]; + serviceConfig.Type = "oneshot"; + serviceConfig.RemainAfterExit = true; + path = [ pkgs.iproute2 ]; + script = '' + # Remove Dead Interfaces + ip link show dev "${n}" >/dev/null 2>&1 && ip link delete dev "${n}" + ip link add link "${v.interface}" name "${n}" type ipvlan \ + ${optionalString (v.mode != null) "mode ${v.mode}"} \ + ${optionalString (v.flags != null) "${v.flags}"} + ip link set dev "${n}" up + ''; + postStop = '' + ip link delete dev "${n}" || true + ''; + } + ); + createFouEncapsulation = n: v: nameValuePair "${n}-fou-encap" ( @@ -803,6 +838,7 @@ let // mapAttrs' createVswitchDevice cfg.vswitches // mapAttrs' createBondDevice cfg.bonds // mapAttrs' createMacvlanDevice cfg.macvlans + // mapAttrs' createIpvlanDevice cfg.ipvlans // mapAttrs' createFouEncapsulation cfg.fooOverUDP // mapAttrs' createSitDevice cfg.sits // mapAttrs' createIpipDevice cfg.ipips diff --git a/nixos/modules/tasks/network-interfaces-systemd.nix b/nixos/modules/tasks/network-interfaces-systemd.nix index 9e9a76cfbf1d..d6568b85512e 100644 --- a/nixos/modules/tasks/network-interfaces-systemd.nix +++ b/nixos/modules/tasks/network-interfaces-systemd.nix @@ -396,6 +396,24 @@ in } ) )) + (mkMerge ( + flip mapAttrsToList cfg.ipvlans ( + name: ipvlan: { + netdevs."40-${name}" = { + netdevConfig = { + Name = name; + Kind = "ipvlan"; + }; + ipvlanConfig = + optionalAttrs (ipvlan.mode != null) { Mode = lib.toUpper ipvlan.mode; } + // optionalAttrs (ipvlan.flags != null) { Flags = ipvlan.flags; }; + }; + networks."40-${ipvlan.interface}" = { + ipvlan = [ name ]; + }; + } + ) + )) (mkMerge ( flip mapAttrsToList cfg.fooOverUDP ( name: fou: { diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index a5a0a2e93ee6..57722ec603c9 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -1069,6 +1069,54 @@ in }); }; + networking.ipvlans = mkOption { + default = { }; + example = literalExpression '' + { + wan = { + interface = "enp2s0"; + mode = "l2"; + flags = "vepa"; + }; + } + ''; + description = '' + This option allows you to define ipvlan interfaces which should + be automatically created. + ''; + type = + with types; + attrsOf (submodule { + options = { + + interface = mkOption { + example = "enp4s0"; + type = types.str; + description = "The interface the ipvlan will transmit packets through."; + }; + + mode = mkOption { + default = "l2"; + type = types.enum [ + "l2" + "l3" + "l3s" + ]; + description = "The mode of the interface."; + }; + + flags = mkOption { + default = null; + type = types.nullOr types.str; + example = "vepa"; + description = "The flags of the ipvlan device."; + }; + + }; + + }); + }; + networking.fooOverUDP = mkOption { default = { }; example = { diff --git a/nixos/tests/networking/networkd-and-scripted.nix b/nixos/tests/networking/networkd-and-scripted.nix index 8acf4e41bf5d..99e67649ceb3 100644 --- a/nixos/tests/networking/networkd-and-scripted.nix +++ b/nixos/tests/networking/networkd-and-scripted.nix @@ -436,6 +436,38 @@ let router.wait_until_succeeds("ping -c 1 192.168.1.3") ''; }; + ipvlan = { + name = "IPVLAN"; + nodes.client = { + virtualisation.interfaces.enp1s0.vlan = 1; + networking = { + useNetworkd = networkd; + useDHCP = false; + ipvlans = { + ipvlan1.interface = "enp1s0"; + ipvlan2.interface = "enp1s0"; + }; + }; + }; + testScript = '' + with subtest("Wait for networking to come up"): + client.wait_for_unit("network.target") + + with subtest("Can move IPVLANs to separate network namespaces"): + client.succeed("ip netns add ns1 && ip link set dev ipvlan1 netns ns1") + client.succeed("ip netns add ns2 && ip link set dev ipvlan2 netns ns2") + + with subtest("Can configure the IPVLAN interfaces"): + client.succeed("ip netns exec ns1 ip addr add 192.168.1.1/24 dev ipvlan1") + client.succeed("ip netns exec ns2 ip addr add 192.168.1.2/24 dev ipvlan2") + client.succeed("ip netns exec ns1 ip link set dev ipvlan1 up") + client.succeed("ip netns exec ns2 ip link set dev ipvlan2 up") + + with subtest("IPVLAN interfaces can ping each other"): + client.succeed("ip netns exec ns1 ping -c 1 192.168.1.2") + client.succeed("ip netns exec ns2 ping -c 1 192.168.1.1") + ''; + }; fou = { name = "foo-over-udp"; nodes.machine = clientConfig { From 428d6d874c243a5dab6c1552865cf4ee06cc389a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 4 Mar 2026 03:41:51 +0000 Subject: [PATCH 03/86] gdevelop: 5.6.258 -> 5.6.260 --- pkgs/by-name/gd/gdevelop/darwin.nix | 2 +- pkgs/by-name/gd/gdevelop/linux.nix | 2 +- pkgs/by-name/gd/gdevelop/package.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/gd/gdevelop/darwin.nix b/pkgs/by-name/gd/gdevelop/darwin.nix index 6a104af26493..65b3cc54af69 100644 --- a/pkgs/by-name/gd/gdevelop/darwin.nix +++ b/pkgs/by-name/gd/gdevelop/darwin.nix @@ -18,7 +18,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { src = fetchurl { url = "https://github.com/4ian/GDevelop/releases/download/v${version}/GDevelop-5-${version}-universal-mac.zip"; - hash = "sha256-3C++qdbngBdIVyyFV7VaOzH+rQBDEYp9wDcBVBjsrSc="; + hash = "sha256-kTqFfLk3TWITM5DVa8rMZoezq/Yct9wkyofZbUl2SBQ="; }; sourceRoot = "."; diff --git a/pkgs/by-name/gd/gdevelop/linux.nix b/pkgs/by-name/gd/gdevelop/linux.nix index b57d95e14a0f..e7860ed41a22 100644 --- a/pkgs/by-name/gd/gdevelop/linux.nix +++ b/pkgs/by-name/gd/gdevelop/linux.nix @@ -13,7 +13,7 @@ let if stdenv.hostPlatform.system == "x86_64-linux" then fetchurl { url = "https://github.com/4ian/GDevelop/releases/download/v${version}/GDevelop-5-${version}.AppImage"; - hash = "sha256-9apZXwVF8MV0ZK7/FsoQf+30lTg4P42aTtqedBCnSls="; + hash = "sha256-Vg1uovP3gY3EQ0GNg/2dx8Uwj080Gf6YTHyu6OnZGNg="; } else throw "${pname}-${version} is not supported on ${stdenv.hostPlatform.system}"; diff --git a/pkgs/by-name/gd/gdevelop/package.nix b/pkgs/by-name/gd/gdevelop/package.nix index 695f1665116f..c1bdaa44673a 100644 --- a/pkgs/by-name/gd/gdevelop/package.nix +++ b/pkgs/by-name/gd/gdevelop/package.nix @@ -4,7 +4,7 @@ callPackage, }: let - version = "5.6.258"; + version = "5.6.260"; pname = "gdevelop"; meta = { description = "Graphical Game Development Studio"; From 6207ccfbee730f5ab54193dde657fb5b5ffc85f8 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Fri, 6 Mar 2026 20:01:57 +0100 Subject: [PATCH 04/86] pwdsphinx: 2.0.3 -> 2.0.4 --- pkgs/by-name/pw/pwdsphinx/package.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pw/pwdsphinx/package.nix b/pkgs/by-name/pw/pwdsphinx/package.nix index 72ea1d7397d9..d3d9bc1dfac3 100644 --- a/pkgs/by-name/pw/pwdsphinx/package.nix +++ b/pkgs/by-name/pw/pwdsphinx/package.nix @@ -9,14 +9,14 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "pwdsphinx"; - version = "2.0.3"; + version = "2.0.4"; pyproject = true; src = fetchFromGitHub { owner = "stef"; repo = "pwdsphinx"; tag = "v${finalAttrs.version}"; - hash = "sha256-COSfA5QqIGWEnahmo5klFECK7XjyabGs1nG9vyhj/DM="; + hash = "sha256-wAvcXSAoaottnsnvlD2QnLP3QIithI6xplo5tN8yjVg="; }; postPatch = '' @@ -55,7 +55,10 @@ python3Packages.buildPythonApplication (finalAttrs: { preCheck = '' mkdir -p ~/.config/sphinx - cp ${finalAttrs.src}/configs/config ~/.config/sphinx/config + cp ${finalAttrs.src}/sphinx.cfg_sample ~/.config/sphinx/config + substituteInPlace ~/.config/sphinx/config \ + --replace-fail 'pinentry=/usr/bin/pinentry' 'pinentry="/usr/bin/pinentry"' \ + --replace-fail 'log=' 'log=""' # command fails without key but the command generates the key, so always pass $out/bin/sphinx init || true ''; From 6783864eba4fc947883da18f7a2e2e360d9b2bba Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Fri, 6 Mar 2026 20:13:48 +0100 Subject: [PATCH 05/86] briar-desktop: 0.6.4-beta -> 0.6.5-beta --- pkgs/by-name/br/briar-desktop/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/br/briar-desktop/package.nix b/pkgs/by-name/br/briar-desktop/package.nix index 6f12ea12bb0b..cd8431067551 100644 --- a/pkgs/by-name/br/briar-desktop/package.nix +++ b/pkgs/by-name/br/briar-desktop/package.nix @@ -21,11 +21,11 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "briar-desktop"; - version = "0.6.4-beta"; + version = "0.6.5-beta"; src = fetchurl { url = "https://desktop.briarproject.org/jars/linux/${finalAttrs.version}/briar-desktop-linux-${finalAttrs.version}.jar"; - hash = "sha256-S7O625SWbgi4iby76Qe377NGiw4r9+VqgQh8kclKwMo="; + hash = "sha256-YDFvM6EicHe6s7SDTiKRySCTO9IUwDrEtO373bavfmw="; }; dontUnpack = true; From 5426b41c3ac34006110f79a1d5bf2bb24907931e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristoffer=20Plagborg=20Bak=20S=C3=B8rensen?= Date: Fri, 6 Mar 2026 17:48:41 +0100 Subject: [PATCH 06/86] cargo-arc: init at 0.2.0 --- pkgs/by-name/ca/cargo-arc/package.nix | 45 +++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 pkgs/by-name/ca/cargo-arc/package.nix diff --git a/pkgs/by-name/ca/cargo-arc/package.nix b/pkgs/by-name/ca/cargo-arc/package.nix new file mode 100644 index 000000000000..405c971ae6f9 --- /dev/null +++ b/pkgs/by-name/ca/cargo-arc/package.nix @@ -0,0 +1,45 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + nix-update-script, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "cargo-arc"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "seflue"; + repo = "cargo-arc"; + tag = "v${finalAttrs.version}"; + hash = "sha256-b6l9KIDM0V0DDXM5Q79w2ZAHg0nWnlphUdnJyzv3M4Q="; + }; + + cargoHash = "sha256-NNI1H96sMbGzxkXtvFIXxtPB6XNoPB2Ns4czmG+NGiE="; + + checkFlags = [ + # Tries to create temp dir + "--skip=test_analyze_not_git_repo" + # Tries to read from dir $CARGO_MANIFEST_DIR + "--skip=test_analyze_empty_history" + "--skip=test_analyze_real_repo" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Generate a collapsible arc diagram of your Cargo workspace as SVG"; + homepage = "https://github.com/seflue/cargo-arc"; + changelog = "https://github.com/seflue/cargo-arc/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = with lib.licenses; [ + asl20 + mit + ]; + maintainers = with lib.maintainers; [ + kpbaks + matthiasbeyer + ]; + mainProgram = "cargo-arc"; + }; +}) From fa79d12d0094ee472dfe860d23ba800d22360f9e Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 11:52:01 +0700 Subject: [PATCH 07/86] maintainers: add kurogeek --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 3fb6c89bf258..d6b2ed124c75 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -14536,6 +14536,12 @@ githubId = 2943605; name = "Evgeny Kurnevsky"; }; + kurogeek = { + email = "kurogeek@lmvhaus.com"; + github = "kurogeek"; + githubId = 7752934; + name = "kurogeek"; + }; kuwii = { name = "kuwii"; email = "kuwii.someone@gmail.com"; From 33a6b73ae13869376df64ecaeb3afcbd03cf2be2 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 13:12:38 +0700 Subject: [PATCH 08/86] python3Packages.django-dbbackup: init at 4.3.0 --- .../django-dbbackup/default.nix | 80 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 82 insertions(+) create mode 100644 pkgs/development/python-modules/django-dbbackup/default.nix diff --git a/pkgs/development/python-modules/django-dbbackup/default.nix b/pkgs/development/python-modules/django-dbbackup/default.nix new file mode 100644 index 000000000000..3e9fe5a9a379 --- /dev/null +++ b/pkgs/development/python-modules/django-dbbackup/default.nix @@ -0,0 +1,80 @@ +{ + buildPythonPackage, + coverage, + django, + django-storages, + fetchFromGitHub, + flake8, + gnupg, + lib, + pep8, + psycopg2, + pylint, + pytest-django, + pytestCheckHook, + python-dotenv, + python-gnupg, + pytz, + setuptools, + testfixtures, + tox, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-dbbackup"; + version = "4.3.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "django-dbbackup"; + repo = "django-dbbackup"; + tag = version; + hash = "sha256-w+LfU5I7swnCJpwqBqoCTRUCZjKoIxK3OC+8CrihLEI="; + }; + + disabled = pythonOlder "3.9"; + + dependencies = [ + django + python-gnupg + pytz + ]; + + build-system = [ setuptools ]; + doCheck = true; + preCheck = '' + tempDir=$(mktemp -d) + export HOME=$tempDir + export DJANGO_SETTINGS_MODULE=dbbackup.tests.settings + ''; + pythonImportsCheck = [ "dbbackup" ]; + disabledTestPaths = [ + # Specific gnupg version required, which aren't provided in upstream + "dbbackup/tests/commands/test_dbrestore.py::DbrestoreCommandRestoreBackupTest::test_decrypt" + "dbbackup/tests/test_connectors/test_base.py::BaseCommandDBConnectorTest::test_run_command_with_parent_env" + "dbbackup/tests/test_utils.py::Encrypt_FileTest::test_func" + "dbbackup/tests/test_utils.py::Compress_FileTest::test_func" + ]; + nativeCheckInputs = [ + coverage + django-storages + flake8 + gnupg + pep8 + psycopg2 + pylint + pytest-django + pytestCheckHook + python-dotenv + testfixtures + tox + ]; + + meta = with lib; { + description = "Management commands to help backup and restore your project database and media files"; + homepage = "https://github.com/Archmonger/django-dbbackup"; + changelog = "https://github.com/Archmonger/django-dbbackup/releases/tag/${version}"; + license = licenses.bsd3; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 58e77ee3429b..589f1e598087 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4148,6 +4148,8 @@ self: super: with self; { django-currentuser = callPackage ../development/python-modules/django-currentuser { }; + django-dbbackup = callPackage ../development/python-modules/django-dbbackup { }; + django-debug-toolbar = callPackage ../development/python-modules/django-debug-toolbar { }; django-dynamic-preferences = From 0a0fb4a2b189ba2b044f546004a87dbbd1c47b31 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 13:15:48 +0700 Subject: [PATCH 09/86] python3Packages.py-moneyed: init at 3.0 --- .../python-modules/py-moneyed/default.nix | 38 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/development/python-modules/py-moneyed/default.nix diff --git a/pkgs/development/python-modules/py-moneyed/default.nix b/pkgs/development/python-modules/py-moneyed/default.nix new file mode 100644 index 000000000000..e839d6ec1958 --- /dev/null +++ b/pkgs/development/python-modules/py-moneyed/default.nix @@ -0,0 +1,38 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, + babel, + pythonOlder, + typing-extensions, +}: + +buildPythonPackage rec { + pname = "py-moneyed"; + version = "3.0"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-SQbw8CzyuR7bouFW8tTpp48iQFmrjI+i/yYjDHXYlOg="; + }; + + dependencies = [ + babel + typing-extensions + ]; + + pythonImportsCheck = [ "moneyed" ]; + + build-system = [ setuptools ]; + + meta = { + description = "Provides Currency and Money classes for use in your Python code."; + homepage = "https://github.com/py-moneyed/py-moneyed"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 589f1e598087..c15bcc78e73f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13046,6 +13046,8 @@ self: super: with self; { py-melissa-climate = callPackage ../development/python-modules/py-melissa-climate { }; + py-moneyed = callPackage ../development/python-modules/py-moneyed { }; + py-multiaddr = callPackage ../development/python-modules/py-multiaddr { }; py-multibase = callPackage ../development/python-modules/py-multibase { }; From d00213fc2e1ed3bf8a3ae278e5fbb90c3bdebad7 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 13:39:29 +0700 Subject: [PATCH 10/86] python3Packages.ppf-datamatrix: init at 0.2 --- .../python-modules/ppf-datamatrix/default.nix | 34 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 36 insertions(+) create mode 100644 pkgs/development/python-modules/ppf-datamatrix/default.nix diff --git a/pkgs/development/python-modules/ppf-datamatrix/default.nix b/pkgs/development/python-modules/ppf-datamatrix/default.nix new file mode 100644 index 000000000000..b4942912fbe4 --- /dev/null +++ b/pkgs/development/python-modules/ppf-datamatrix/default.nix @@ -0,0 +1,34 @@ +{ + lib, + buildPythonPackage, + setuptools-scm, + pythonOlder, + fetchPypi, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "ppf-datamatrix"; + version = "0.2"; + format = "pyproject"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-jwNNnJDkCPYPixCic7qrgQFMmoHJg9wevcMdTKWsVYI="; + }; + + doCheck = true; + pythonImportsCheck = [ "ppf.datamatrix" ]; + nativeCheckInputs = [ pytestCheckHook ]; + + build-system = [ setuptools-scm ]; + + meta = { + description = "Pure-python package to generate data matrix codes."; + homepage = "https://github.com/adrianschlatter/ppf.datamatrix"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c15bcc78e73f..ba437d648257 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12683,6 +12683,8 @@ self: super: with self; { ppdeep = callPackage ../development/python-modules/ppdeep { }; + ppf-datamatrix = callPackage ../development/python-modules/ppf-datamatrix { }; + ppft = callPackage ../development/python-modules/ppft { }; ppk2-api = callPackage ../development/python-modules/ppk2-api { }; From 1d2048f5a87e756b94b72d39c744b76e8cd3cf62 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 13:55:40 +0700 Subject: [PATCH 11/86] python3Packages.opentelemetry-instrumentation-system-metrics: init --- .../default.nix | 40 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 ++ 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix new file mode 100644 index 000000000000..3f2ec8350c26 --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-system-metrics/default.nix @@ -0,0 +1,40 @@ +{ + buildPythonPackage, + pythonOlder, + hatchling, + opentelemetry-instrumentation, + opentelemetry-api, + opentelemetry-test-utils, + psutil, + pytestCheckHook, +}: + +buildPythonPackage { + inherit (opentelemetry-instrumentation) version src; + pname = "opentelemetry-instrumentation-system-metrics"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-system-metrics"; + + build-system = [ hatchling ]; + + dependencies = [ + opentelemetry-instrumentation + opentelemetry-api + psutil + ]; + + nativeCheckInputs = [ + opentelemetry-test-utils + pytestCheckHook + ]; + + pythonImportsCheck = [ "opentelemetry.instrumentation.system_metrics" ]; + + meta = opentelemetry-instrumentation.meta // { + homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-system-metrics"; + description = "OpenTelemetry Instrumentation for Django"; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ba437d648257..51acc9e22563 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11662,6 +11662,10 @@ self: super: with self; { callPackage ../development/python-modules/opentelemetry-instrumentation-sqlalchemy { }; + opentelemetry-instrumentation-system-metrics = + callPackage ../development/python-modules/opentelemetry-instrumentation-system-metrics + { }; + opentelemetry-instrumentation-threading = callPackage ../development/python-modules/opentelemetry-instrumentation-threading { }; From 880185d00d4a8a12392f4f4095c0615e3b46c51e Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 13:56:27 +0700 Subject: [PATCH 12/86] python3Packages.opentelemetry-instrumentation-sqlite3: init --- .../default.nix | 38 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 ++ 2 files changed, 42 insertions(+) create mode 100644 pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix new file mode 100644 index 000000000000..5e4901083006 --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-sqlite3/default.nix @@ -0,0 +1,38 @@ +{ + buildPythonPackage, + pythonOlder, + hatchling, + opentelemetry-instrumentation, + opentelemetry-instrumentation-dbapi, + opentelemetry-test-utils, + pytestCheckHook, +}: + +buildPythonPackage { + inherit (opentelemetry-instrumentation) version src; + pname = "opentelemetry-instrumentation-sqlite3"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-sqlite3"; + + build-system = [ hatchling ]; + + dependencies = [ + opentelemetry-instrumentation + opentelemetry-instrumentation-dbapi + ]; + + nativeCheckInputs = [ + opentelemetry-test-utils + pytestCheckHook + ]; + + pythonImportsCheck = [ "opentelemetry.instrumentation.sqlite3" ]; + + meta = opentelemetry-instrumentation.meta // { + homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-sqlite3"; + description = "OpenTelemetry Instrumentation for Django"; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 51acc9e22563..86e420bf73d7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11662,6 +11662,10 @@ self: super: with self; { callPackage ../development/python-modules/opentelemetry-instrumentation-sqlalchemy { }; + opentelemetry-instrumentation-sqlite3 = + callPackage ../development/python-modules/opentelemetry-instrumentation-sqlite3 + { }; + opentelemetry-instrumentation-system-metrics = callPackage ../development/python-modules/opentelemetry-instrumentation-system-metrics { }; From fb334bd4638c830998cf2d641846b2157a0b7fd9 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 14:06:18 +0700 Subject: [PATCH 13/86] python3Packages.django-money: init at 3.5.4 --- .../python-modules/django-money/default.nix | 55 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 57 insertions(+) create mode 100644 pkgs/development/python-modules/django-money/default.nix diff --git a/pkgs/development/python-modules/django-money/default.nix b/pkgs/development/python-modules/django-money/default.nix new file mode 100644 index 000000000000..0d7492045142 --- /dev/null +++ b/pkgs/development/python-modules/django-money/default.nix @@ -0,0 +1,55 @@ +{ + fetchFromGitHub, + buildPythonPackage, + setuptools, + lib, + django, + py-moneyed, + certifi, + pytestCheckHook, + pytest-django, + pytest-cov, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-money"; + version = "3.5.4"; + pyproject = true; + + src = fetchFromGitHub { + owner = "django-money"; + repo = "django-money"; + tag = version; + hash = "sha256-JqAZaiJ2zCb7Jwvumqi16IrQ6clmcw71WpPzbhE2Fms="; + }; + + disabled = pythonOlder "3.7"; + + dependencies = [ + django + certifi + py-moneyed + ]; + + build-system = [ setuptools ]; + doCheck = true; + nativeCheckInputs = [ + pytestCheckHook + pytest-django + pytest-cov + ]; + pythonImportsCheck = [ "djmoney" ]; + + # avoid tests which import mixer, an abandoned library + disabledTests = [ + "test_mixer_blend" + ]; + + meta = with lib; { + description = "Money fields for Django forms and models."; + homepage = "https://github.com/django-money/django-money"; + changelog = "https://github.com/django-money/django-money/releases/tag/${version}"; + license = licenses.bsd3; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 86e420bf73d7..5e3349df144c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4256,6 +4256,8 @@ self: super: with self; { django-modeltranslation = callPackage ../development/python-modules/django-modeltranslation { }; + django-money = callPackage ../development/python-modules/django-money { }; + django-mptt = callPackage ../development/python-modules/django-mptt { }; django-multiselectfield = callPackage ../development/python-modules/django-multiselectfield { }; From a7cb14f4caf0d77147c4a294fd77de6b9c1a5532 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 14:28:53 +0700 Subject: [PATCH 14/86] python3Packages.django-error-report-2: init at 0.4.2 --- .../django-error-report-2/default.nix | 39 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 41 insertions(+) create mode 100644 pkgs/development/python-modules/django-error-report-2/default.nix diff --git a/pkgs/development/python-modules/django-error-report-2/default.nix b/pkgs/development/python-modules/django-error-report-2/default.nix new file mode 100644 index 000000000000..be1803e3a798 --- /dev/null +++ b/pkgs/development/python-modules/django-error-report-2/default.nix @@ -0,0 +1,39 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + setuptools, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-error-report-2"; + version = "0.4.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "matmair"; + repo = "django-error-report-2"; + tag = version; + hash = "sha256-ZCaslqgruJxM8345/jSlZGruM+27H9hvwL0wtPkUzc0="; + }; + + disabled = pythonOlder "3.6"; + + dependencies = [ + django + ]; + + build-system = [ setuptools ]; + # There is no tests on upstream + doCheck = false; + pythonImportsCheck = [ "error_report" ]; + + meta = with lib; { + description = "Log/View Django server errors."; + homepage = "https://github.com/matmair/django-error-report-2"; + changelog = "https://github.com/matmair/django-error-report-2/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5e3349df144c..6dd6fd87045b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4164,6 +4164,8 @@ self: super: with self; { django-environ = callPackage ../development/python-modules/django-environ { }; + django-error-report-2 = callPackage ../development/python-modules/django-error-report-2 { }; + django-extensions = callPackage ../development/python-modules/django-extensions { }; django-filer = callPackage ../development/python-modules/django-filer { }; From b0258c8d38d7de8caf15a9178c6eb154e25c26e8 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 14:38:22 +0700 Subject: [PATCH 15/86] python3Packages.django-flags: init at 5.0.14 --- .../python-modules/django-flags/default.nix | 63 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 65 insertions(+) create mode 100644 pkgs/development/python-modules/django-flags/default.nix diff --git a/pkgs/development/python-modules/django-flags/default.nix b/pkgs/development/python-modules/django-flags/default.nix new file mode 100644 index 000000000000..32213502950e --- /dev/null +++ b/pkgs/development/python-modules/django-flags/default.nix @@ -0,0 +1,63 @@ +{ + buildPythonPackage, + coverage, + django, + django-debug-toolbar, + fetchFromGitHub, + jinja2, + lib, + pytest-django, + pytestCheckHook, + setuptools-scm, + setuptools, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-flags"; + version = "5.0.14"; + pyproject = true; + + src = fetchFromGitHub { + owner = "cfpb"; + repo = "django-flags"; + tag = version; + hash = "sha256-0IOcpl8OamNlalqNqMvmx/bkuIkaNnLwCD7nFclR8S4="; + }; + + dependencies = [ + django + ]; + + disabled = pythonOlder "3.8"; + + build-system = [ + setuptools + setuptools-scm + ]; + doCheck = true; + preCheck = '' + export DJANGO_SETTINGS_MODULE=flags.tests.settings + ''; + pythonImportsCheck = [ "flags" ]; + nativeCheckInputs = [ + coverage + (django-debug-toolbar.overrideAttrs (old: rec { + version = "5.2.0"; + src = old.src.override { + tag = version; + hash = "sha256-/oWirfJaiHVRI1m3N1QveutX2sag8fjYqJYCZ8BnMa0="; + }; + })) + jinja2 + pytest-django + pytestCheckHook + ]; + + meta = with lib; { + description = "Feature flags for Django projects"; + homepage = "https://github.com/cfpb/django-flags"; + changelog = "https://github.com/cfpb/django-flags/releases/tag/${version}"; + license = licenses.cc0; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6dd6fd87045b..d58d01232417 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4174,6 +4174,8 @@ self: super: with self; { django-filter = callPackage ../development/python-modules/django-filter { }; + django-flags = callPackage ../development/python-modules/django-flags { }; + django-formset-js-improved = callPackage ../development/python-modules/django-formset-js-improved { }; From bc24e368b201e35d8bd8659e779e9ce33122bce2 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 14:42:18 +0700 Subject: [PATCH 16/86] python3Packages.django-ical: init at 1.9.2 --- .../python-modules/django-ical/default.nix | 61 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 63 insertions(+) create mode 100644 pkgs/development/python-modules/django-ical/default.nix diff --git a/pkgs/development/python-modules/django-ical/default.nix b/pkgs/development/python-modules/django-ical/default.nix new file mode 100644 index 000000000000..78a74319752d --- /dev/null +++ b/pkgs/development/python-modules/django-ical/default.nix @@ -0,0 +1,61 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + pytest-django, + pytestCheckHook, + setuptools-scm, + icalendar, + django-recurrence, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-ical"; + version = "1.9.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jazzband"; + repo = "django-ical"; + tag = version; + hash = "sha256-DUe0loayGcUS7MTyLn+g0KBxbIY7VsaoQNHGSMbMI3U="; + }; + + disabled = pythonOlder "3.7"; + + dependencies = [ + django + django-recurrence + # Latest version didn't pass the test + (icalendar.overrideAttrs (old: rec { + version = "6.0.0"; + src = old.src.override { + tag = "v${version}"; + hash = "sha256-eWFDY/pNVfcUk3PfB0vXqh9swuSGtflUw44IMDJI+yI="; + }; + })) + ]; + + build-system = [ setuptools-scm ]; + doCheck = true; + preCheck = '' + export DJANGO_SETTINGS_MODULE=test_settings + ''; + pythonImportsCheck = [ + "icalendar" + "django_ical" + ]; + nativeCheckInputs = [ + pytest-django + pytestCheckHook + ]; + + meta = with lib; { + description = "iCal feeds for Django based on Django's syndication feed framework."; + homepage = "https://github.com/jazzband/django-ical"; + changelog = "https://github.com/jazzband/django-ical/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d58d01232417..921e5043e043 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4210,6 +4210,8 @@ self: super: with self; { django-i18nfield = callPackage ../development/python-modules/django-i18nfield { }; + django-ical = callPackage ../development/python-modules/django-ical { }; + django-import-export = callPackage ../development/python-modules/django-import-export { }; django-ipware = callPackage ../development/python-modules/django-ipware { }; From d3439a76b5dacecead69888fec04ba850e2c4288 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 14:44:05 +0700 Subject: [PATCH 17/86] python3Packages.django-mailbox: init at 4.10.1 --- .../python-modules/django-mailbox/default.nix | 50 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 52 insertions(+) create mode 100644 pkgs/development/python-modules/django-mailbox/default.nix diff --git a/pkgs/development/python-modules/django-mailbox/default.nix b/pkgs/development/python-modules/django-mailbox/default.nix new file mode 100644 index 000000000000..a6f397145474 --- /dev/null +++ b/pkgs/development/python-modules/django-mailbox/default.nix @@ -0,0 +1,50 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + pytest-django, + pytestCheckHook, + setuptools, + six, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-mailbox"; + version = "4.10.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "coddingtonbear"; + repo = "django-mailbox"; + tag = version; + hash = "sha256-7CBUnqveTSfdc+8x8sZUqvwYW3vKjZKfOPVWFSo4es0="; + }; + + disabled = pythonOlder "3.8"; + + dependencies = [ + django + six + ]; + + build-system = [ setuptools ]; + doCheck = true; + preCheck = '' + substituteInPlace setup.cfg --replace-fail "pytest" "tool:pytest" + export DJANGO_SETTINGS_MODULE=django_mailbox.tests.settings + ''; + pythonImportsCheck = [ "django_mailbox" ]; + nativeCheckInputs = [ + pytest-django + pytestCheckHook + ]; + + meta = with lib; { + description = "Import mail from POP3, IMAP, local email mailboxes or directly from Postfix or Exim4 into your Django application automatically."; + homepage = "https://github.com/coddingtonbear/django-mailbox"; + changelog = "https://github.com/coddingtonbear/django-mailbox/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 921e5043e043..d3f74f9be04a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4240,6 +4240,8 @@ self: super: with self; { callPackage ../development/python-modules/django-login-required-middleware { }; + django-mailbox = callPackage ../development/python-modules/django-mailbox { }; + django-mailman3 = callPackage ../development/python-modules/django-mailman3 { }; django-maintenance-mode = callPackage ../development/python-modules/django-maintenance-mode { }; From 349451b0b328bda907cb646855a4129c64980455 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 14:49:21 +0700 Subject: [PATCH 18/86] python3Packages.django-markdownify: init at 0.9.5 --- .../django-markdownify/default.nix | 53 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 55 insertions(+) create mode 100644 pkgs/development/python-modules/django-markdownify/default.nix diff --git a/pkgs/development/python-modules/django-markdownify/default.nix b/pkgs/development/python-modules/django-markdownify/default.nix new file mode 100644 index 000000000000..65846fc6a3a6 --- /dev/null +++ b/pkgs/development/python-modules/django-markdownify/default.nix @@ -0,0 +1,53 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + pytest-django, + pytestCheckHook, + setuptools, + markdown, + bleach, + tinycss2, +}: +buildPythonPackage rec { + pname = "django-markdownify"; + version = "0.9.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "erwinmatijsen"; + repo = "django-markdownify"; + tag = version; + hash = "sha256-KYU8p8NRD4EIS/KhOk9nvmXCf0RWEc+IFZ57YtsDSWE="; + }; + + dependencies = [ + django + markdown + bleach + ]; + + build-system = [ setuptools ]; + doCheck = true; + preCheck = '' + export DJANGO_SETTINGS_MODULE=markdownify.checks + ''; + nativeCheckInputs = [ + tinycss2 + pytest-django + pytestCheckHook + ]; + pythonImportsCheck = [ "markdownify" ]; + disabledTests = [ + # Test settings didn't setup DjangoTemplates + "test_markdownify_nodelist" + ]; + + meta = with lib; { + description = "Markdown template filter for Django"; + homepage = "https://github.com/erwinmatijsen/django-markdownify"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d3f74f9be04a..e845fd0e0fae 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4246,6 +4246,8 @@ self: super: with self; { django-maintenance-mode = callPackage ../development/python-modules/django-maintenance-mode { }; + django-markdownify = callPackage ../development/python-modules/django-markdownify { }; + django-markdownx = callPackage ../development/python-modules/django-markdownx { }; django-markup = callPackage ../development/python-modules/django-markup { }; From d5192695eab37e3d6328e29d77f67086d3d4b796 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 15:19:56 +0700 Subject: [PATCH 19/86] python3Packages.django-recurrence: init at 1.11.1 --- .../django-recurrence/default.nix | 50 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 52 insertions(+) create mode 100644 pkgs/development/python-modules/django-recurrence/default.nix diff --git a/pkgs/development/python-modules/django-recurrence/default.nix b/pkgs/development/python-modules/django-recurrence/default.nix new file mode 100644 index 000000000000..507f70aa6ac9 --- /dev/null +++ b/pkgs/development/python-modules/django-recurrence/default.nix @@ -0,0 +1,50 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + python-dateutil, + pytest-django, + pytestCheckHook, + pytest-cov, + pytest-sugar, + setuptools-scm, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-recurrence"; + version = "1.11.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jazzband"; + repo = "django-recurrence"; + tag = version; + hash = "sha256-Ytf4fFTVFIQ+6IBhwRMtCkonP0POivv4TrYok37nghA="; + }; + + disabled = pythonOlder "3.7"; + + dependencies = [ + django + python-dateutil + ]; + + build-system = [ setuptools-scm ]; + doCheck = true; + pythonImportsCheck = [ "recurrence" ]; + nativeCheckInputs = [ + pytest-django + pytest-cov + pytest-sugar + pytestCheckHook + ]; + + meta = with lib; { + description = "Utility for working with recurring dates in Django."; + homepage = "https://github.com/jazzband/django-recurrence"; + changelog = "https://github.com/jazzband/django-recurrence/releases/tag/${version}"; + license = licenses.bsd3; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e845fd0e0fae..40d82ef21860 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4336,6 +4336,8 @@ self: super: with self; { django-ratelimit = callPackage ../development/python-modules/django-ratelimit { }; + django-recurrence = callPackage ../development/python-modules/django-recurrence { }; + django-redis = callPackage ../development/python-modules/django-redis { }; django-registration = callPackage ../development/python-modules/django-registration { }; From ae83c5510bb68c0736dbee16e33f322738db78e5 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 15:26:17 +0700 Subject: [PATCH 20/86] python3Packages.django-sslserver: init at 0.22 --- .../django-sslserver/default.nix | 34 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 36 insertions(+) create mode 100644 pkgs/development/python-modules/django-sslserver/default.nix diff --git a/pkgs/development/python-modules/django-sslserver/default.nix b/pkgs/development/python-modules/django-sslserver/default.nix new file mode 100644 index 000000000000..0077fafee8ab --- /dev/null +++ b/pkgs/development/python-modules/django-sslserver/default.nix @@ -0,0 +1,34 @@ +{ + buildPythonPackage, + django, + lib, + fetchurl, + setuptools-scm, + pythonOlder, +}: +buildPythonPackage { + pname = "django-sslserver"; + version = "0.22"; + format = "wheel"; + + src = fetchurl { + url = "https://files.pythonhosted.org/packages/6f/97/e4011f3944f83a7d2aaaf893c3689ad70e8d2ae46fb6e14fd0e3b0c6ce0b/django_sslserver-0.22-py3-none-any.whl"; + hash = "sha256-xZijY9LM3CQhwI3bPYsJc/gOjkejpbdOSiiW8hwpR8U="; + }; + + disabled = pythonOlder "3.4"; + + dependencies = [ + django + ]; + + build-system = [ setuptools-scm ]; + doCheck = true; + + meta = with lib; { + description = "A SSL-enabled development server for Django"; + homepage = "https://github.com/teddziuba/django-sslserver"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 40d82ef21860..91c430760cf5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4380,6 +4380,8 @@ self: super: with self; { django-sql-utils = callPackage ../development/python-modules/django-sql-utils { }; + django-sslserver = callPackage ../development/python-modules/django-sslserver { }; + django-statici18n = callPackage ../development/python-modules/django-statici18n { }; django-storages = callPackage ../development/python-modules/django-storages { }; From 7b791ffa8fc422258060972cd091f1cf6fcb39b9 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 15:27:36 +0700 Subject: [PATCH 21/86] python3Packages.django-stdimage: init at 6.0.2 --- .../django-stdimage/default.nix | 63 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 5 ++ 2 files changed, 68 insertions(+) create mode 100644 pkgs/development/python-modules/django-stdimage/default.nix diff --git a/pkgs/development/python-modules/django-stdimage/default.nix b/pkgs/development/python-modules/django-stdimage/default.nix new file mode 100644 index 000000000000..b3fed998628d --- /dev/null +++ b/pkgs/development/python-modules/django-stdimage/default.nix @@ -0,0 +1,63 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + pytest-django, + pytestCheckHook, + setuptools-scm, + pillow, + pytest-cov, + gettext, + pythonOlder, + pythonAtLeast, +}: +buildPythonPackage rec { + pname = "django-stdimage"; + version = "6.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "codingjoe"; + repo = "django-stdimage"; + tag = version; + hash = "sha256-uwVU3Huc5fitAweShJjcMW//GBeIpJcxqKKLGo/EdIs="; + }; + + disabled = pythonOlder "3.8" || pythonAtLeast "3.13"; + + dependencies = [ + django + pillow + ]; + + build-system = [ setuptools-scm ]; + nativeBuildInputs = [ gettext ]; + + doCheck = true; + preCheck = '' + export DJANGO_SETTINGS_MODULE=tests.settings + ''; + disabledTests = [ + # SuspiciousFileOperation: Detected path traversal attempt (Even appear in upstream) + "test_variations_override" + ]; + pythonImportsCheck = [ + "stdimage" + "stdimage.validators" + "stdimage.models" + ]; + nativeCheckInputs = [ + pytest-django + pytest-cov + pytestCheckHook + ]; + + meta = with lib; { + description = "Django Standardized Image Field"; + homepage = "https://github.com/codingjoe/django-stdimage"; + changelog = "https://github.com/codingjoe/django-stdimage/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 91c430760cf5..fbafd297c7cb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4384,6 +4384,11 @@ self: super: with self; { django-statici18n = callPackage ../development/python-modules/django-statici18n { }; + django-stdimage = callPackage ../development/python-modules/django-stdimage { + django = django_4; + pytest-django = pytest-django.override { django = django_4; }; + }; + django-storages = callPackage ../development/python-modules/django-storages { }; django-stubs = callPackage ../development/python-modules/django-stubs { }; From 323d1be48ab096548512b27e6083e39327fbe5ad Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 15:30:15 +0700 Subject: [PATCH 22/86] python3Packages.django-structlog: init at 9.1.1 --- .../django-structlog/default.nix | 82 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 84 insertions(+) create mode 100644 pkgs/development/python-modules/django-structlog/default.nix diff --git a/pkgs/development/python-modules/django-structlog/default.nix b/pkgs/development/python-modules/django-structlog/default.nix new file mode 100644 index 000000000000..fb06e13cf991 --- /dev/null +++ b/pkgs/development/python-modules/django-structlog/default.nix @@ -0,0 +1,82 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + setuptools, + python, + pkgs, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-structlog"; + version = "9.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jrobichaud"; + repo = "django-structlog"; + tag = version; + hash = "sha256-SEigOdlXZtfLAgRgGkv/eDNDAiiHd7YthRJ/H6e1v5U="; + }; + + disabled = pythonOlder "3.9"; + + dependencies = with python.pkgs; [ + colorama + django + django-allauth + crispy-bootstrap5 + django-crispy-forms + django-environ + django-extensions + django-ipware + django-model-utils + django-ninja + django-redis + djangorestframework + structlog + ]; + + optional-dependencies.celery = with python.pkgs; [ celery ]; + + build-system = [ setuptools ]; + doCheck = true; + preCheck = '' + export DJANGO_SETTINGS_MODULE=config.settings.test_demo_app + + ${pkgs.valkey}/bin/redis-server & + REDIS_PID=$! + ''; + postCheck = '' + kill $REDIS_PID + ''; + + pytestFlags = [ + "-x" + "--cov=./django_structlog_demo_project" + "--cov-append django_structlog_demo_project" + ]; + pythonImportsCheck = [ + "structlog" + "django_structlog" + ]; + + nativeCheckInputs = with python.pkgs; [ + celery + factory-boy + pytest-asyncio + pytest-cov + pytest-django + pytest-mock + pytest-sugar + pytestCheckHook + ]; + + meta = with lib; { + description = "Structured Logging for Django"; + homepage = "https://github.com/jrobichaud/django-structlog"; + changelog = "https://github.com/jrobichaud/django-structlog/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fbafd297c7cb..6c33934cdd1b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4391,6 +4391,8 @@ self: super: with self; { django-storages = callPackage ../development/python-modules/django-storages { }; + django-structlog = callPackage ../development/python-modules/django-structlog { }; + django-stubs = callPackage ../development/python-modules/django-stubs { }; django-stubs-ext = callPackage ../development/python-modules/django-stubs-ext { }; From 74d9411d376c07aec88448b9a31452f047617112 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 15:47:03 +0700 Subject: [PATCH 23/86] python3Packages.django-user-sessions: init at 2.0.0 --- .../django-user-sessions/default.nix | 35 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 pkgs/development/python-modules/django-user-sessions/default.nix diff --git a/pkgs/development/python-modules/django-user-sessions/default.nix b/pkgs/development/python-modules/django-user-sessions/default.nix new file mode 100644 index 000000000000..3f48bb38865c --- /dev/null +++ b/pkgs/development/python-modules/django-user-sessions/default.nix @@ -0,0 +1,35 @@ +{ + fetchFromGitHub, + buildPythonPackage, + setuptools-scm, + lib, + django, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-user-sessions"; + version = "2.0.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jazzband"; + repo = "django-user-sessions"; + tag = version; + hash = "sha256-Wexy6G2pZ8LTnqtJkBZIePV7qhQW8gu/mKiQfZtgf/o="; + }; + + disabled = pythonOlder "3.7"; + + dependencies = [ + django + ]; + + build-system = [ setuptools-scm ]; + + meta = with lib; { + description = "Extend Django sessions with a foreign key back to the user, allowing enumerating all user's sessions."; + homepage = "https://github.com/jazzband/django-user-sessions"; + license = licenses.mit; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6c33934cdd1b..b4424ac9055c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4425,6 +4425,8 @@ self: super: with self; { django-types = callPackage ../development/python-modules/django-types { }; + django-user-sessions = callPackage ../development/python-modules/django-user-sessions { }; + django-valkey = callPackage ../development/python-modules/django-valkey { }; django-versatileimagefield = From c6a8e4e887db43cd1063a4121a8b5f7331e6fef4 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 15:48:03 +0700 Subject: [PATCH 24/86] python3Packages.django-xforwardedfor-middleware: init at 2.0 --- .../default.nix | 33 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 +++ 2 files changed, 37 insertions(+) create mode 100644 pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix diff --git a/pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix b/pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix new file mode 100644 index 000000000000..e6806a4d28f2 --- /dev/null +++ b/pkgs/development/python-modules/django-xforwardedfor-middleware/default.nix @@ -0,0 +1,33 @@ +{ + buildPythonPackage, + django, + fetchFromGitHub, + lib, + setuptools, +}: +buildPythonPackage rec { + pname = "django-xforwardedfor-middleware"; + version = "2.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "allo-"; + repo = "django-xforwardedfor-middleware"; + tag = "v${version}"; + hash = "sha256-dDXSb17kXOSeIgY6wid1QFHhUjrapasWgCEb/El51eA="; + }; + + dependencies = [ + django + ]; + + build-system = [ setuptools ]; + doCheck = true; + + meta = with lib; { + description = "Use the X-Forwarded-For header to get the real ip of a request"; + homepage = "https://github.com/allo-/django-xforwardedfor-middleware"; + license = licenses.publicDomain; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b4424ac9055c..e88c12293a2d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4443,6 +4443,10 @@ self: super: with self; { django-widget-tweaks = callPackage ../development/python-modules/django-widget-tweaks { }; + django-xforwardedfor-middleware = + callPackage ../development/python-modules/django-xforwardedfor-middleware + { }; + # LTS in extended support phase django_4 = callPackage ../development/python-modules/django/4.nix { }; From 1d300413e84d4e67a3f0530b1ecff7f69c1760f0 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 8 Jan 2026 16:30:35 +0700 Subject: [PATCH 25/86] inventree: init Co-authored-by: DavHau --- nixos/modules/module-list.nix | 1 + nixos/modules/services/misc/inventree.nix | 457 ++++++++++++++++++++++ nixos/tests/all-tests.nix | 1 + nixos/tests/inventree.nix | 33 ++ pkgs/by-name/in/inventree/package.nix | 287 ++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 6 files changed, 781 insertions(+) create mode 100644 nixos/modules/services/misc/inventree.nix create mode 100644 nixos/tests/inventree.nix create mode 100644 pkgs/by-name/in/inventree/package.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 0e98f50ab6e7..f0a6a8a9bc72 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -876,6 +876,7 @@ ./services/misc/ihaskell.nix ./services/misc/iio-niri.nix ./services/misc/input-remapper.nix + ./services/misc/inventree.nix ./services/misc/invidious-router.nix ./services/misc/irkerd.nix ./services/misc/jackett.nix diff --git a/nixos/modules/services/misc/inventree.nix b/nixos/modules/services/misc/inventree.nix new file mode 100644 index 000000000000..b5e5ecec9210 --- /dev/null +++ b/nixos/modules/services/misc/inventree.nix @@ -0,0 +1,457 @@ +{ + config, + pkgs, + lib, + ... +}: +let + cfg = config.services.inventree; + pkg = cfg.package; + + mysqlLocal = cfg.database.createLocally && cfg.database.dbtype == "mysql"; + pgsqlLocal = cfg.database.createLocally && cfg.database.dbtype == "postgresql"; + + manage = pkgs.writeShellScriptBin "inventree-manage" '' + set -a + ${lib.toShellVars cfg.settings} + ${lib.optionalString ( + cfg.database.passwordFile != null + ) ''INVENTREE_DB_PASSWORD="$(<"${cfg.database.passwordFile}")"''} + set +a + + pushd "${cfg.dataDir}" + sudo=exec + if [[ "$USER" != ${cfg.user} ]]; then + ${ + if config.security.sudo.enable then + "sudo='exec ${config.security.wrapperDir}/sudo -u ${cfg.user} -E'" + else + ">&2 echo 'Aborting, inventree-manage must be run as user `${cfg.user}`!'; exit 2" + } + fi + $sudo ${cfg.package}/bin/inventree "$@" + popd + ''; + +in +{ + meta.maintainers = with lib.maintainers; [ + kurogeek + ]; + + options.services.inventree = with lib; { + enable = lib.mkEnableOption "inventree"; + + dataDir = mkOption { + type = types.str; + default = "/var/lib/inventree"; + description = "Inventree's data storage path. Will be `/var/lib/inventree` by default."; + }; + + package = mkOption { + type = types.package; + description = "Which package to use for the InvenTree instance."; + default = pkgs.inventree; + defaultText = literalExpression "pkgs.inventree"; + }; + + adminPasswordFile = mkOption { + type = types.nullOr lib.types.path; + default = null; + example = "/run/keys/inventree-password"; + description = "Path to a file containing admin password"; + }; + + secretKeyFile = mkOption { + type = types.path; + default = "${cfg.dataDir}/secret_key.txt"; + example = "/run/keys/inventree-secret-key"; + description = '' + Path to a file containing the secret key + ''; + }; + + database = { + dbtype = mkOption { + type = lib.types.nullOr ( + lib.types.enum [ + "postgresql" + "mysql" + ] + ); + default = "postgresql"; + description = "Database type."; + }; + dbhost = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = + if pgsqlLocal then + "/run/postgresql" + else if mysqlLocal then + "/run/mysqld/mysqld.sock" + else + "localhost"; + defaultText = "localhost"; + example = "localhost"; + description = '' + Database host or socket path. + If [](#opt-services.inventree.database.createLocally) is true and + [](#opt-services.inventree.database.dbtype) is either `postgresql` or `mysql`, + defaults to the correct Unix socket instead. + ''; + }; + dbport = mkOption { + type = types.port; + default = 5432; + description = "Database host port."; + }; + dbname = mkOption { + type = types.str; + default = "inventree"; + description = "Database name."; + }; + dbuser = mkOption { + type = types.str; + default = "inventree"; + defaultText = lib.literalExpression "inventree"; + description = "Database username."; + }; + passwordFile = mkOption { + type = with types; nullOr path; + default = null; + example = "/run/keys/inventree-dbpassword"; + description = '' + A file containing the password corresponding to + . + ''; + }; + createLocally = mkOption { + type = types.bool; + default = true; + description = "Create the database and database user locally."; + }; + }; + + domain = mkOption { + type = types.str; + default = "localhost"; + example = "inventree.example.com"; + description = mdDoc '' + The INVENTREE_SITE_URL option defines the base URL for the + InvenTree server. This is a critical setting, and it is required + for correct operation of the server. If not specified, the + server will attempt to determine the site URL automatically - + but this may not always be correct! + + The site URL is the URL that users will use to access the + InvenTree server. For example, if the server is accessible at + `https://inventree.example.com`, the site URL should be set to + `https://inventree.example.com`. Note that this is not + necessarily the same as the internal URL that the server is + running on - the internal URL will depend entirely on your + server configuration and may be obscured by a reverse proxy or + other such setup. + ''; + }; + + user = mkOption { + type = types.str; + default = "inventree"; + description = "User under which InvenTree runs."; + }; + + group = mkOption { + type = types.str; + default = "inventree"; + description = "Group under which InvenTree runs."; + }; + + settings = mkOption { + type = + with lib.types; + attrsOf ( + nullOr (oneOf [ + path + str + ]) + ); + default = { + INVENTREE_CONFIG_FILE = lib.mkDefault "${cfg.dataDir}/config/config.yaml"; + INVENTREE_OIDC_PRIVATE_KEY_FILE = lib.mkDefault "${cfg.dataDir}/config/oidc_private_key.txt"; + INVENTREE_STATIC_ROOT = lib.mkDefault "${cfg.dataDir}/data/static_root"; + INVENTREE_MEDIA_ROOT = lib.mkDefault "${cfg.dataDir}/data/media"; + INVENTREE_BACKUP_DIR = lib.mkDefault "${cfg.dataDir}/data/backups"; + INVENTREE_SITE_URL = lib.mkDefault "http://${cfg.domain}"; + INVENTREE_PLUGIN_FILE = lib.mkDefault "${cfg.dataDir}/data/plugins/plugins.txt"; + INVENTREE_PLUGIN_DIR = lib.mkDefault "${cfg.dataDir}/data/plugins"; + INVENTREE_ADMIN_PASSWORD_FILE = lib.mkDefault cfg.adminPasswordFile; + INVENTREE_SECRET_KEY_FILE = lib.mkDefault cfg.secretKeyFile; + INVENTREE_AUTO_UPDATE = lib.mkDefault "false"; + }; + description = '' + InvenTree config options. + + See [the documentation](https://docs.inventree.org/en/stable/start/config/) for available options. + ''; + example = { + INVENTREE_CACHE_ENABLED = true; + INVENTREE_CACHE_HOST = "localhost"; + + INVENTREE_EMAIL_HOST = "smtp.example.com"; + INVENTREE_EMAIL_PORT = 25; + }; + }; + + }; + + config = lib.mkIf cfg.enable ( + lib.mkMerge [ + { + services.inventree.settings = { + INVENTREE_DB_ENGINE = cfg.database.dbtype; + INVENTREE_DB_NAME = cfg.database.dbname; + INVENTREE_DB_HOST = cfg.database.dbhost; + INVENTREE_DB_USER = cfg.database.dbuser; + INVENTREE_DB_PORT = toString cfg.database.dbport; + + INVENTREE_CONFIG_FILE = lib.mkDefault "${cfg.dataDir}/config/config.yaml"; + INVENTREE_OIDC_PRIVATE_KEY_FILE = lib.mkDefault "${cfg.dataDir}/config/oidc_private_key.txt"; + INVENTREE_STATIC_ROOT = lib.mkDefault "${cfg.dataDir}/data/static_root"; + INVENTREE_MEDIA_ROOT = lib.mkDefault "${cfg.dataDir}/data/media"; + INVENTREE_BACKUP_DIR = lib.mkDefault "${cfg.dataDir}/data/backups"; + INVENTREE_SITE_URL = lib.mkDefault "http://${cfg.domain}"; + INVENTREE_PLUGIN_FILE = lib.mkDefault "${cfg.dataDir}/data/plugins/plugins.txt"; + INVENTREE_PLUGIN_DIR = lib.mkDefault "${cfg.dataDir}/data/plugins"; + INVENTREE_ADMIN_PASSWORD_FILE = lib.mkDefault cfg.adminPasswordFile; + INVENTREE_SECRET_KEY_FILE = lib.mkDefault cfg.secretKeyFile; + INVENTREE_AUTO_UPDATE = lib.mkDefault "false"; + }; + environment.systemPackages = [ manage ]; + systemd.tmpfiles.rules = ( + map (dir: "d ${dir} 0755 inventree inventree") [ + "${cfg.dataDir}" + "${cfg.dataDir}/config" + "${cfg.dataDir}/data" + "${cfg.dataDir}/data/static_root" + "${cfg.dataDir}/data/media" + "${cfg.dataDir}/data/backups" + "${cfg.dataDir}/data/plugins" + ] + ); + + services.postgresql = lib.mkIf pgsqlLocal { + enable = true; + ensureDatabases = [ cfg.database.dbname ]; + ensureUsers = [ + { + name = cfg.database.dbuser; + ensureDBOwnership = true; + } + ]; + }; + + services.mysql = lib.mkIf mysqlLocal { + enable = true; + package = lib.mkDefault pkgs.mariadb; + ensureDatabases = [ cfg.database.dbname ]; + ensureUsers = [ + { + name = cfg.database.dbuser; + ensurePermissions = { + "${cfg.database.dbname}.*" = "ALL PRIVILEGES"; + }; + } + ]; + }; + + services.nginx.enable = true; + services.nginx.virtualHosts.${cfg.domain} = { + locations = + let + unixPath = config.systemd.sockets.inventree-server.socketConfig.ListenStream; + in + { + "/" = { + extraConfig = '' + proxy_set_header Host $host; + proxy_set_header X-Forwarded-By $server_addr:$server_port; + proxy_set_header X-Forwarded-For $remote_addr; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header CLIENT_IP $remote_addr; + + proxy_pass_request_headers on; + + proxy_redirect off; + + client_max_body_size 100M; + + proxy_buffering off; + proxy_request_buffering off; + ''; + proxyPass = "http://unix:${unixPath}"; + }; + "/auth" = { + extraConfig = '' + internal; + proxy_pass_request_body off; + proxy_set_header Content-Length ""; + proxy_set_header X-Original-URI $request_uri; + ''; + proxyPass = "http://unix:${unixPath}:/auth/"; + }; + "/static/" = { + alias = "${cfg.settings.INVENTREE_STATIC_ROOT}/"; + extraConfig = '' + autoindex on; + + # Caching settings + expires 30d; + add_header Pragma public; + add_header Cache-Control "public"; + ''; + }; + "/media/" = { + alias = "${cfg.settings.INVENTREE_MEDIA_ROOT}/"; + extraConfig = '' + auth_request /auth; + add_header Content-disposition "attachment"; + ''; + }; + }; + }; + + systemd.services.inventree-setup = { + description = "Inventree setup"; + wantedBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + after = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target"; + requires = lib.optional mysqlLocal "mysql.service" ++ lib.optional pgsqlLocal "postgresql.target"; + before = [ + "inventree-static.service" + "inventree-server.service" + "inventree-qcluster.service" + ]; + serviceConfig = { + Type = "oneshot"; + User = cfg.user; + Group = cfg.group; + RemainAfterExit = true; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + environment = cfg.settings; + script = '' + set -euo pipefail + umask u=rwx,g=,o= + + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/inventree migrate + ''; + }; + + systemd.services.inventree-static = { + description = "Inventree static migration"; + wantedBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + before = [ "inventree-server.service" ]; + environment = cfg.settings; + serviceConfig = { + User = cfg.user; + Group = cfg.group; + StateDirectory = "inventree"; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + script = '' + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/inventree collectstatic --no-input + ''; + }; + + systemd.services.inventree-server = { + description = "Inventree Gunicorn service"; + requiredBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + environment = cfg.settings; + serviceConfig = { + User = cfg.user; + Group = cfg.group; + StateDirectory = "inventree"; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + script = '' + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/gunicorn InvenTree.wsgi + ''; + }; + + systemd.sockets.inventree-server = { + wantedBy = [ "sockets.target" ]; + partOf = [ "inventree.target" ]; + socketConfig.ListenStream = "/run/inventree/gunicorn.socket"; + }; + + systemd.services.inventree-qcluster = { + description = "InvenTree qcluster server"; + requiredBy = [ "inventree.target" ]; + wantedBy = [ "inventree.target" ]; + partOf = [ "inventree.target" ]; + environment = cfg.settings; + serviceConfig = { + User = cfg.user; + Group = cfg.group; + StateDirectory = "inventree"; + PrivateTmp = true; + } + // lib.optionalAttrs (cfg.database.passwordFile != null) { + LoadCredential = "db_password:${cfg.database.passwordFile}"; + }; + script = '' + ${ + lib.optionalString (cfg.database.passwordFile != null) '' + INVENTREE_DB_PASSWORD=$(<"$CREDENTIALS_DIRECTORY/db_password") + '' + } \ + exec ${pkg}/bin/inventree qcluster + ''; + }; + + systemd.targets.inventree = { + description = "Target for all InvenTree services"; + wantedBy = [ "multi-user.target" ]; + wants = [ "network-online.target" ]; + after = [ "network-online.target" ]; + }; + + users = lib.optionalAttrs (cfg.user == cfg.user) { + users.${cfg.user} = { + group = cfg.group; + isSystemUser = true; + home = cfg.dataDir; + }; + groups.${cfg.group}.members = [ cfg.user ]; + }; + } + ] + ); +} diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 8985130a6f8d..59a836b5ea89 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -790,6 +790,7 @@ in installer = handleTest ./installer.nix { }; installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { }; intune = runTest ./intune.nix; + inventree = runTest ./inventree.nix; invidious = runTest ./invidious.nix; invoiceplane = runTest ./invoiceplane.nix; iodine = runTest ./iodine.nix; diff --git a/nixos/tests/inventree.nix b/nixos/tests/inventree.nix new file mode 100644 index 000000000000..34fe8730ae67 --- /dev/null +++ b/nixos/tests/inventree.nix @@ -0,0 +1,33 @@ +{ lib, ... }: +{ + name = "inventree"; + meta.maintainers = with lib.maintainers; [ + kurogeek + ]; + + nodes = { + psqlTest = { + services.inventree = { + enable = true; + }; + }; + mysqlTest = { + services.inventree = { + enable = true; + database.dbtype = "mysql"; + }; + }; + }; + testScript = '' + start_all() + psqlTest.wait_for_unit("inventree.target") + psqlTest.wait_for_unit("inventree-server.service") + psqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket") + psqlTest.wait_until_succeeds("curl -sf http://localhost/web") + + mysqlTest.wait_for_unit("inventree.target") + mysqlTest.wait_for_unit("inventree-server.service") + mysqlTest.wait_for_open_unix_socket("/run/inventree/gunicorn.socket") + mysqlTest.wait_until_succeeds("curl -sf http://localhost/web") + ''; +} diff --git a/pkgs/by-name/in/inventree/package.nix b/pkgs/by-name/in/inventree/package.nix new file mode 100644 index 000000000000..109b4ad7550b --- /dev/null +++ b/pkgs/by-name/in/inventree/package.nix @@ -0,0 +1,287 @@ +{ + fetchFromGitHub, + fetchYarnDeps, + lib, + nodejs, + python312, + stdenv, + yarnBuildHook, + yarnConfigHook, + yarnInstallHook, +}: +let + python3 = python312.override { + self = python3; + packageOverrides = self: super: { + django = super.django_4; + }; + }; + + version = "0.18.0"; + src = fetchFromGitHub { + owner = "inventree"; + repo = "inventree"; + rev = "d6c722041987d13a4e596711aafa0f30cde3f9a0"; + hash = "sha256-BnRE6BM6/LHUtP3H0L8qh3LAxFphNlpll+r1oH4sGuQ="; + }; + + frontend = + let + frontendSource = src + "/src/frontend"; + in + stdenv.mkDerivation (finalAttrs: { + + pname = "inventree-frontend"; + inherit version; + + src = frontendSource; + + yarnOfflineCache = fetchYarnDeps { + yarnLock = finalAttrs.src + "/yarn.lock"; + hash = "sha256-wXIVtW1dMxhyuZ1LmuYZ2IwUbRZwbYmdRkiribMbK20="; + }; + + nativeBuildInputs = [ + nodejs + yarnConfigHook + yarnBuildHook + yarnInstallHook + ]; + + buildPhase = '' + mkdir -p $out + + export PATH=$PATH:$TMP/frontend/node_modules/.bin + substituteInPlace $TMP/frontend/vite.config.ts --replace-warn "../../src/backend/InvenTree/web/static/web" "$out/static/web" + + npm run extract + npm run compile + npm run build + ''; + }); +in +python3.pkgs.buildPythonApplication rec { + pname = "inventree"; + pyproject = true; + inherit version src; + + dependencies = + with python3.pkgs; + [ + django + dj-rest-auth + django-allauth + django-cleanup + django-cors-headers + django-crispy-forms + django-dbbackup + django-error-report-2 + django-filter + django-flags + django-formtools + django-ical + django-import-export + django-maintenance-mode + django-markdownify + django-money + django-mptt + django-mailbox + django-anymail + django-q2 + django-redis + django-sesame + django-sql-utils + django-sslserver + django-stdimage + django-structlog + django-taggit + django-oauth-toolkit + django-otp + django-user-sessions + django-weasyprint + standard-imghdr + django-xforwardedfor-middleware + djangorestframework-simplejwt + djangorestframework + drf-spectacular + + bleach + cryptography + distutils + dulwich + feedparser + gunicorn + jinja2 + pdf2image + pillow + pint + python-barcode + python-dotenv + qrcode + pytz + pyyaml + rapidfuzz + sentry-sdk + structlog + tablib + tinycss2 + weasyprint + whitenoise + pypdf + ppf-datamatrix + psycopg2 + mysqlclient + + opentelemetry-api + opentelemetry-sdk + opentelemetry-exporter-otlp + opentelemetry-instrumentation-django + opentelemetry-instrumentation-requests + opentelemetry-instrumentation-redis + opentelemetry-instrumentation-sqlite3 + opentelemetry-instrumentation-system-metrics + opentelemetry-instrumentation-wsgi + ] + ++ tablib.optional-dependencies.all + ++ tablib.optional-dependencies.xls + ++ tablib.optional-dependencies.xlsx + ++ djangorestframework-simplejwt.optional-dependencies.crypto + ++ django-anymail.optional-dependencies.amazon-ses + ++ django-allauth.optional-dependencies.socialaccount + ++ django-allauth.optional-dependencies.saml + ++ django-allauth.optional-dependencies.openid + ++ django-allauth.optional-dependencies.mfa; + + build-system = [ python3.pkgs.setuptools ]; + + prePatch = + let + skippedCheckFunctions = [ + "test_task_check_for_updates" + "test_download_image" + "test_commit_info" + "test_rates" + "test_download_build_orders" + "test_valid_url" + "test_refresh_endpoint" + "test_download_csv" + "test_download_line_items" + "test_export" + "test_download_xlsx" + "test_download_csv" + "test_export" + "test_part_label_translation" + "test_part_download" + "test_date_filters" + "test_bom_export" + "test_hash" + "test_date" + "test_api_call" + "test_function_errors" + "test_stocktake_exporter" + "test_return" + "test_plugin_install" + "test_full_process" + "test_package_loading" + "test_export" + "test_users_exist" + ]; + skippedFuncScripts = builtins.map (funcName: '' + grep -rlZ ${funcName} . | while IFS= read -r -d "" file; do + substituteInPlace "$file" --replace-fail "${funcName}" "skip_${funcName}" + done + '') skippedCheckFunctions; + in + '' + ${lib.concatStringsSep "\n" skippedFuncScripts} + ''; + + installPhase = + let + pythonPath = python3.pkgs.makePythonPath dependencies; + in + '' + runHook preInstall + + # Don't need to bother with a non-maintained library from ages ago + substituteInPlace src/backend/InvenTree/InvenTree/settings.py --replace-fail "django_slowtests.testrunner.DiscoverSlowestTestsRunner" "django.test.runner.DiscoverRunner" + + mkdir -p $out/lib/${pname}/src/backend/InvenTree/web/ + cp -r src $out/lib/${pname} + ln -s ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web + # cp -r ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web + + chmod +x $out/lib/${pname}/src/backend/InvenTree/manage.py + + makeWrapper $out/lib/${pname}/src/backend/InvenTree/manage.py $out/bin/${pname} \ + --prefix PYTHONPATH : "${pythonPath}:$out/lib/${pname}/src/backend/InvenTree" + + makeWrapper ${lib.getExe python3.pkgs.gunicorn} $out/bin/gunicorn \ + --prefix PYTHONPATH : "${pythonPath}:$out/${python3.sitePackages}":"${pythonPath}:$out/lib/${pname}/src/backend/InvenTree" + + runHook postInstall + ''; + doCheck = true; + env = { + DJANGO_SETTINGS_MODULE = "InvenTree.settings"; + }; + + checkPhase = '' + runHook preCheck + + tmpDir=$(mktemp -d) + mkdir -p $tmpDir/media + mkdir -p $tmpDir/.cache/fontconfig + export HOME=$tmpDir + export INVENTREE_STATIC_ROOT=$tmpDir + export INVENTREE_MEDIA_ROOT=$tmpDir/media + export INVENTREE_BACKUP_DIR=$tmpDir + export INVENTREE_DB_ENGINE=django.db.backends.sqlite3 + export INVENTREE_DB_NAME=inventree.db + export INVENTREE_SITE_URL="http://localhost:8000" + + export INVENTREE_PLUGINS_ENABLED=true + export INVENTREE_PLUGIN_TESTING=true + export INVENTREE_PLUGIN_TESTING_SETUP=true + + pushd src/backend/InvenTree + ${python3.interpreter} ./manage.py check + ${python3.interpreter} ./manage.py migrate + + ${python3.interpreter} ./manage.py test --failfast + popd + + runHook postCheck + ''; + + nativeCheckInputs = with python3.pkgs; [ + django-test-migrations + pytest-django + pytest-env + pytestCheckHook + invoke + coverage + pytest-cov + pdfminer-six + ]; + passthru = + let + pythonPath = python3.pkgs.makePythonPath dependencies; + in + { + inherit frontend; + pythonPath = pythonPath; + }; + + meta = { + description = "Open Source Inventory Management System"; + homepage = "https://inventree.org/"; + changelog = "https://github.com/paperless-ngx/paperless-ngx/releases/tag/${src.tag}"; + license = lib.licenses.mit; + platforms = lib.platforms.linux; + mainProgram = "inventree"; + maintainers = with lib.maintainers; [ + kurogeek + ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a74ca9d7fd5c..dcab0bf56907 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12517,4 +12517,6 @@ with pkgs; gpac-unstable = callPackage ../by-name/gp/gpac/package.nix { releaseChannel = "unstable"; }; + + inventree = callPackage ../by-name/in/inventree/package.nix { }; } From 6c727b177b6c37d34671af354809887a8676cb79 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 9 Mar 2026 22:43:17 +0800 Subject: [PATCH 26/86] blueberry: Remove Linux Mint itself no longer ships this. --- pkgs/by-name/bl/blueberry/package.nix | 100 -------------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 100 deletions(-) delete mode 100644 pkgs/by-name/bl/blueberry/package.nix diff --git a/pkgs/by-name/bl/blueberry/package.nix b/pkgs/by-name/bl/blueberry/package.nix deleted file mode 100644 index f8c1bdedce49..000000000000 --- a/pkgs/by-name/bl/blueberry/package.nix +++ /dev/null @@ -1,100 +0,0 @@ -{ - stdenv, - lib, - fetchFromGitHub, - bluez-tools, - gnome-bluetooth_1_0, - gobject-introspection, - libnotify, - pavucontrol, - python3Packages, - util-linux, - wrapGAppsHook3, - xapp, -}: - -python3Packages.buildPythonApplication rec { - pname = "blueberry"; - version = "1.4.8"; - pyproject = false; - - src = fetchFromGitHub { - owner = "linuxmint"; - repo = "blueberry"; - tag = version; - sha256 = "sha256-MyIjcTyKn1aC2th6fCOw4cIqrRKatk2s4QD5R9cm83A="; - }; - - nativeBuildInputs = [ - gobject-introspection - wrapGAppsHook3 - ]; - - buildInputs = [ - bluez-tools - gnome-bluetooth_1_0 - libnotify - util-linux - xapp - ]; - - pythonPath = with python3Packages; [ - dbus-python - pygobject3 - setproctitle - ]; - - installPhase = '' - runHook preInstall - - mkdir -p $out - cp -a etc usr/* $out - - # Fix paths - substituteInPlace $out/bin/blueberry \ - --replace-fail /usr/lib/blueberry $out/lib/blueberry - substituteInPlace $out/bin/blueberry-tray \ - --replace-fail /usr/lib/blueberry $out/lib/blueberry - substituteInPlace $out/etc/xdg/autostart/blueberry-obex-agent.desktop \ - --replace-fail /usr/lib/blueberry $out/lib/blueberry - substituteInPlace $out/etc/xdg/autostart/blueberry-tray.desktop \ - --replace-fail Exec=blueberry-tray Exec=$out/bin/blueberry-tray - substituteInPlace $out/lib/blueberry/blueberry-obex-agent.py \ - --replace-fail /usr/share $out/share - substituteInPlace $out/lib/blueberry/blueberry-tray.py \ - --replace-fail /usr/share $out/share - substituteInPlace $out/lib/blueberry/blueberry.py \ - --replace-fail '"bt-adapter"' '"${bluez-tools}/bin/bt-adapter"' \ - --replace-fail /usr/bin/pavucontrol ${pavucontrol}/bin/pavucontrol \ - --replace-fail /usr/lib/blueberry $out/lib/blueberry \ - --replace-fail /usr/share $out/share - substituteInPlace $out/lib/blueberry/rfkillMagic.py \ - --replace-fail /usr/bin/rfkill ${util-linux}/bin/rfkill \ - --replace-fail /usr/sbin/rfkill ${util-linux}/bin/rfkill \ - --replace-fail /usr/lib/blueberry $out/lib/blueberry - substituteInPlace $out/share/applications/blueberry.desktop \ - --replace-fail Exec=blueberry Exec=$out/bin/blueberry - - glib-compile-schemas --strict $out/share/glib-2.0/schemas - - runHook postInstall - ''; - - dontWrapGApps = true; - - postFixup = '' - makeWrapperArgs+=("''${gappsWrapperArgs[@]}") - wrapPythonProgramsIn $out/lib "$out ''${pythonPath[*]}" - ''; - - meta = { - description = "Bluetooth configuration tool"; - homepage = "https://github.com/linuxmint/blueberry"; - license = lib.licenses.gpl3Plus; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ - bobby285271 - romildo - ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index eb2f7f1580fa..45d3f6e2af74 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -390,6 +390,7 @@ mapAliases { blender-with-packages = throw "blender-with-packages is deprecated in in favor of blender.withPackages, e.g. `blender.withPackages(ps: [ ps.foobar ])`"; # Converted to throw 2025-10-26 blockbench-electron = throw "'blockbench-electron' has been renamed to/replaced by 'blockbench'"; # Converted to throw 2025-10-27 bloomeetunes = throw "bloomeetunes is unmaintained and has been removed"; # Added 2025-08-26 + blueberry = throw "'blueberry' has been removed as it is unmaintained upstream. Consider using blueman instead"; # Added 2026-03-09 bmap-tools = throw "'bmap-tools' has been renamed to/replaced by 'bmaptool'"; # Converted to throw 2025-10-27 bob = throw "'bob' has been removed as it is unmaintained upstream and has vulnerable dependencies."; # Added 2025-12-29 botan2 = throw "botan2 has been removed as it is EOL"; # Added 2025-10-20 From e1b4d6baab58d14f9832972a5d36c9d83cefce0e Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 9 Mar 2026 22:47:20 +0800 Subject: [PATCH 27/86] gnome-bluetooth_1_0: Remove Unmaintained. --- .../gn/gnome-bluetooth_1_0/package.nix | 111 ------------------ pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 111 deletions(-) delete mode 100644 pkgs/by-name/gn/gnome-bluetooth_1_0/package.nix diff --git a/pkgs/by-name/gn/gnome-bluetooth_1_0/package.nix b/pkgs/by-name/gn/gnome-bluetooth_1_0/package.nix deleted file mode 100644 index 94eee2951a81..000000000000 --- a/pkgs/by-name/gn/gnome-bluetooth_1_0/package.nix +++ /dev/null @@ -1,111 +0,0 @@ -{ - stdenv, - lib, - fetchurl, - fetchpatch, - gnome, - adwaita-icon-theme, - meson, - mesonEmulatorHook, - ninja, - pkg-config, - gtk3, - gettext, - glib, - udev, - itstool, - libxml2, - wrapGAppsHook3, - libnotify, - libcanberra-gtk3, - gobject-introspection, - gtk-doc, - docbook-xsl-nons, - docbook_xml_dtd_43, - python3, - gsettings-desktop-schemas, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "gnome-bluetooth"; - version = "3.34.5"; - - # TODO: split out "lib" - outputs = [ - "out" - "dev" - "devdoc" - "man" - ]; - - src = fetchurl { - url = "mirror://gnome/sources/gnome-bluetooth/${lib.versions.majorMinor finalAttrs.version}/gnome-bluetooth-${finalAttrs.version}.tar.xz"; - hash = "sha256-bJSeUsi+zCBU2qzWBJAfZs5c9wml+pHEu3ysyTm1Pqk="; - }; - - patches = [ - # Fix build with meson 0.61. - # sendto/meson.build:24:5: ERROR: Function does not take positional arguments. - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/commit/755fd758f866d3a3f7ca482942beee749f13a91e.patch"; - hash = "sha256-N0MJ0pYO411o2CTNZHWmEoG2m5TGUjR6YW6HSXHTR/A="; - }) - ]; - - nativeBuildInputs = [ - meson - ninja - gettext - itstool - pkg-config - libxml2 - wrapGAppsHook3 - gobject-introspection - gtk-doc - docbook-xsl-nons - docbook_xml_dtd_43 - python3 - ] - ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ - mesonEmulatorHook - ]; - - buildInputs = [ - glib - gtk3 - udev - libnotify - libcanberra-gtk3 - adwaita-icon-theme - gsettings-desktop-schemas - ]; - - mesonFlags = [ - "-Dicon_update=false" - "-Dgtk_doc=true" - ]; - - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; - - strictDeps = true; - - passthru = { - updateScript = gnome.updateScript { - packageName = "gnome-bluetooth"; - attrPath = "gnome-bluetooth_1_0"; - freeze = true; - }; - }; - - meta = { - homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en"; - description = "Application that let you manage Bluetooth in the GNOME destkop"; - mainProgram = "bluetooth-sendto"; - maintainers = [ ]; - license = lib.licenses.gpl2Plus; - platforms = lib.platforms.linux; - }; -}) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 45d3f6e2af74..5c5471090604 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -838,6 +838,7 @@ mapAliases { gnatcoll-xref = throw "'gnatcoll-xref' has been renamed to/replaced by 'gnatPackages.gnatcoll-xref'"; # Converted to throw 2025-10-27 gnatcoll-zlib = throw "'gnatcoll-zlib' has been renamed to/replaced by 'gnatPackages.gnatcoll-zlib'"; # Converted to throw 2025-10-27 gnatinspect = throw "'gnatinspect' has been renamed to/replaced by 'gnatPackages.gnatinspect'"; # Converted to throw 2025-10-27 + gnome-bluetooth_1_0 = throw "'gnome-bluetooth_1_0' has been removed as it is unmaintained upstream"; # Added 2026-03-09 gnome-firmware-updater = throw "'gnome-firmware-updater' has been renamed to/replaced by 'gnome-firmware'"; # Converted to throw 2025-10-27 gnome-passwordsafe = throw "'gnome-passwordsafe' has been renamed to/replaced by 'gnome-secrets'"; # Converted to throw 2025-10-27 gnome-recipes = throw "'gnome-recipes' has been removed due to lack of upstream maintenance and dependency on insecure libraries"; # Added 2025-09-06 From 2823c34e2aeae645965544e53d17e3f6540d23be Mon Sep 17 00:00:00 2001 From: teto <886074+teto@users.noreply.github.com> Date: Thu, 5 Feb 2026 19:49:47 +0100 Subject: [PATCH 28/86] neovim: use evalModule to typecheck plugins config this gives some typesafety making error messages clearer and such that we can hopefully add some more features like lua config and runtime files ? Apply suggestions from code review Co-authored-by: Marc Jakobi --- pkgs/applications/editors/neovim/module.nix | 115 ++++++++++++++++++++ pkgs/applications/editors/neovim/utils.nix | 50 ++++----- 2 files changed, 140 insertions(+), 25 deletions(-) create mode 100644 pkgs/applications/editors/neovim/module.nix diff --git a/pkgs/applications/editors/neovim/module.nix b/pkgs/applications/editors/neovim/module.nix new file mode 100644 index 000000000000..41b56b81113d --- /dev/null +++ b/pkgs/applications/editors/neovim/module.nix @@ -0,0 +1,115 @@ +{ config, lib, ... }: +let + /* + transform all plugins into an attrset + { optional = bool; plugin = package; } + */ + normalizePlugins = + plugins: + let + defaultPlugin = { + plugin = null; + config = null; + optional = false; + }; + in + map (x: defaultPlugin // (if (x ? plugin) then x else { plugin = x; })) plugins; + + pluginWithConfigType = + with lib; + types.submodule { + options = { + config = mkOption { + type = types.nullOr types.lines; + description = "viml configuration associated with this plugin."; + default = null; + example = "set title"; + }; + + optional = mkEnableOption "optional" // { + description = "Don't load automatically on startup (load with :packadd)"; + }; + + plugin = mkOption { + type = types.package; + example = lib.literalExpression "vimPlugins.vim-fugitive"; + description = "vim plugin"; + }; + }; + }; + +in +{ + options = { + plugins = lib.mkOption { + type = with lib.types; listOf (either package pluginWithConfigType); + default = [ ]; + apply = normalizePlugins; + example = lib.literalExpression '' + with pkgs.vimPlugins; [ + yankring + vim-nix + { plugin = vim-startify; + config = "let g:startify_change_to_vcs_root = 0"; + } + ] + ''; + description = '' + List of vim plugins to install optionally associated with + configuration to be placed in init.vim. + ''; + }; + + runtimeDeps = lib.mkOption { + readOnly = true; + type = with lib.types; listOf package; + description = '' + List of derivations required at runtime + ''; + }; + + pluginAdvisedLua = lib.mkOption { + readOnly = true; + type = lib.types.listOf lib.types.lines; + description = '' + Recommended configuration set in vim plugins via ".passthru.initLua". + ''; + }; + + userPluginViml = lib.mkOption { + readOnly = true; + type = lib.types.listOf (lib.types.lines); + description = '' + The viml config set by the user. + ''; + }; + + }; + + config = + let + pluginsNormalized = normalizePlugins config.plugins; + in + { + pluginAdvisedLua = + let + op = + acc: normalizedPlugin: + acc + ++ lib.optional ( + normalizedPlugin.plugin.passthru ? initLua + ) normalizedPlugin.plugin.passthru.initLua; + in + lib.foldl' op [ ] pluginsNormalized; + + runtimeDeps = + let + op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or [ ]; + in + lib.foldl' op [ ] pluginsNormalized; + + userPluginViml = lib.foldl ( + acc: p: if p.config != null then acc ++ [ p.config ] else acc + ) [ ] pluginsNormalized; + }; +} diff --git a/pkgs/applications/editors/neovim/utils.nix b/pkgs/applications/editors/neovim/utils.nix index 23968bf21d0e..a358b96a3ba2 100644 --- a/pkgs/applications/editors/neovim/utils.nix +++ b/pkgs/applications/editors/neovim/utils.nix @@ -79,25 +79,30 @@ let plugins: let + neovimConfig = + structuredConfigure: + let + module = import ./module.nix; + # Generate init.vim configuration + cfg = ( + lib.evalModules { + modules = [ + module + structuredConfigure + ]; + } + ); + in + cfg.config; + + checked_cfg = neovimConfig { + inherit plugins; + }; + pluginsNormalized = normalizePlugins plugins; vimPackage = normalizedPluginsToVimPackage pluginsNormalized; - userPluginViml = lib.foldl ( - acc: p: if p.config != null then acc ++ [ p.config ] else acc - ) [ ] pluginsNormalized; - - pluginAdvisedLua = - let - op = - acc: normalizedPlugin: - acc - ++ lib.optional ( - normalizedPlugin.plugin.passthru ? initLua - ) normalizedPlugin.plugin.passthru.initLua; - in - lib.foldl' op [ ] pluginsNormalized; - getDeps = attrname: map (plugin: plugin.${attrname} or (_: [ ])); requiredPlugins = vimUtils.requiredPluginsForPackage vimPackage; @@ -108,10 +113,11 @@ let inherit pluginPython3Packages; # viml config set by the user along with the plugin - inherit userPluginViml; - - # recommended configuration set in vim plugins ".passthru.initLua" - inherit pluginAdvisedLua; + inherit (checked_cfg) + userPluginViml + runtimeDeps + pluginAdvisedLua + ; # A Vim "package", see ':h packages' # You most likely want to use vimPackage as follows: @@ -119,12 +125,6 @@ let # finalPackdir = neovimUtils.packDir packpathDirs; inherit vimPackage; - runtimeDeps = - let - op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or [ ]; - in - lib.foldl' op [ ] pluginsNormalized; - }; /* From 1b0c9039126133dc54011f7d66ca35cac5551aa5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 07:02:56 +0000 Subject: [PATCH 29/86] direwolf-unstable: 1.8.1-unstable-2026-01-08 -> 1.8.1-unstable-2026-03-09 --- pkgs/by-name/di/direwolf-unstable/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/di/direwolf-unstable/package.nix b/pkgs/by-name/di/direwolf-unstable/package.nix index a16fd9c53f1c..227cda7815d7 100644 --- a/pkgs/by-name/di/direwolf-unstable/package.nix +++ b/pkgs/by-name/di/direwolf-unstable/package.nix @@ -12,13 +12,13 @@ inherit hamlibSupport gpsdSupport extraScripts; }).overrideAttrs (oldAttrs: { - version = "1.8.1-unstable-2026-01-08"; + version = "1.8.1-unstable-2026-03-09"; src = fetchFromGitHub { owner = "wb2osz"; repo = "direwolf"; - rev = "041f396de0ab2111b9ccc07960f8f083a81f9ad0"; - hash = "sha256-W0MTS4UgbtIybhEHXm2ie50TnkvRLc23WB0FR0FGT2s="; + rev = "3b20d8210a1d6f77073fd3452bbe87a21ee35a79"; + hash = "sha256-w/D5RO5dfcTh3nCOxe/GaHTSbzCYm+J1cJCt1K9lAaw="; }; dontVersionCheck = true; From 4ff11676841e0635ad45745893f48c4caa1e19bd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 15:09:17 +0000 Subject: [PATCH 30/86] monophony: 4.4.1 -> 4.4.3 --- pkgs/by-name/mo/monophony/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mo/monophony/package.nix b/pkgs/by-name/mo/monophony/package.nix index d5586e0972a2..80b56af9b73e 100644 --- a/pkgs/by-name/mo/monophony/package.nix +++ b/pkgs/by-name/mo/monophony/package.nix @@ -12,14 +12,14 @@ }: python3Packages.buildPythonApplication (finalAttrs: { pname = "monophony"; - version = "4.4.1"; + version = "4.4.3"; pyproject = true; src = fetchFromGitLab { owner = "zehkira"; repo = "monophony"; tag = "v${finalAttrs.version}"; - hash = "sha256-punZetrvgnPwUT9Jgt3QySF2XxSz2Xbeq2tMxUS8FCU="; + hash = "sha256-bQ1oGXkeuUEKof/mGvsaqwQQ30NFSed64j7ysb8K9tI="; }; sourceRoot = "${finalAttrs.src.name}/source"; From b9cfeaffa4671dd8481340ab62b3ebdc42dc6e8a Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Mon, 9 Mar 2026 17:13:53 -0700 Subject: [PATCH 31/86] rocmPackages.miopen: add impureTests that verify conv/pool functionality --- .../rocm-modules/miopen/default.nix | 13 +++++++ .../miopen/test-runtime-compilation.nix | 37 +++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 pkgs/development/rocm-modules/miopen/test-runtime-compilation.nix diff --git a/pkgs/development/rocm-modules/miopen/default.nix b/pkgs/development/rocm-modules/miopen/default.nix index 90845f67582e..56e6cbb66c48 100644 --- a/pkgs/development/rocm-modules/miopen/default.nix +++ b/pkgs/development/rocm-modules/miopen/default.nix @@ -274,6 +274,19 @@ stdenv.mkDerivation (finalAttrs: { requiredSystemFeatures = [ "big-parallel" ]; + passthru.impureTests = { + # bash $(nix-build -A rocmPackages.miopen.passthru.impureTests.conv) + conv = callPackage ./test-runtime-compilation.nix { + miopen = finalAttrs.finalPackage; + name = "conv"; + testScript = "MIOpenDriver conv -n 1 -c 1 -H 4 -W 4 -k 1 -y 3 -x 3 -p 0 -q 0 -V 0"; + }; + pool = callPackage ./test-runtime-compilation.nix { + miopen = finalAttrs.finalPackage; + name = "pool"; + testScript = "MIOpenDriver pool -W 1x1x4x4 -y 2 -x 2 -p 0 -q 0 -F 1 -V 0"; + }; + }; passthru.tests = { # Ensure all .tn.model files can be loaded by whatever version of frugally-deep we have # This is otherwise hard to verify as MIOpen will only use these models on specific, diff --git a/pkgs/development/rocm-modules/miopen/test-runtime-compilation.nix b/pkgs/development/rocm-modules/miopen/test-runtime-compilation.nix new file mode 100644 index 000000000000..c781d3646251 --- /dev/null +++ b/pkgs/development/rocm-modules/miopen/test-runtime-compilation.nix @@ -0,0 +1,37 @@ +{ + lib, + makeImpureTest, + writableTmpDirAsHomeHook, + miopen, + clr, + rocm-smi, + name, + testScript, +}: + +makeImpureTest { + inherit name; + testedPackage = "rocmPackages.miopen"; + + sandboxPaths = [ + "/sys" + "/dev/dri" + "/dev/kfd" + ]; + + nativeBuildInputs = [ + writableTmpDirAsHomeHook + miopen + clr + rocm-smi + ]; + + testScript = '' + rocm-smi + ${testScript} + ''; + + meta = { + teams = [ lib.teams.rocm ]; + }; +} From e7cf3ae7169859effd03fb7e575d324d2b2932c1 Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Mon, 9 Mar 2026 17:01:15 -0700 Subject: [PATCH 32/86] rocmPackages.miopen: fix hardcoded /opt/rocm path in comgr.cpp --- pkgs/development/rocm-modules/miopen/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/rocm-modules/miopen/default.nix b/pkgs/development/rocm-modules/miopen/default.nix index 56e6cbb66c48..8e173f4ff40e 100644 --- a/pkgs/development/rocm-modules/miopen/default.nix +++ b/pkgs/development/rocm-modules/miopen/default.nix @@ -235,6 +235,9 @@ stdenv.mkDerivation (finalAttrs: { return()' patchShebangs test src/composable_kernel fin utils install_deps.cmake + + substituteInPlace src/comgr.cpp \ + --replace-fail '"/opt/rocm"' '"${clr}"' '' + linkKDBsTo "src/kernels" + '' From 235ea64d880ba27fd940d66ef6c7ef6641a35bd7 Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Mon, 9 Mar 2026 17:13:35 -0700 Subject: [PATCH 33/86] rocmPackages.clr: apply own rpath workaround to all libs Same issue applies to libhiprtc.so, seems safer to apply to all since it's a recurring pattern in clr. --- pkgs/development/rocm-modules/clr/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/rocm-modules/clr/default.nix b/pkgs/development/rocm-modules/clr/default.nix index 71451c81e443..9e5b7abbf099 100644 --- a/pkgs/development/rocm-modules/clr/default.nix +++ b/pkgs/development/rocm-modules/clr/default.nix @@ -207,12 +207,13 @@ stdenv.mkDerivation (finalAttrs: { ln -s ${hipClang} $out/llvm ''; - # libamdhip64.so dlopens its own bare name for hipGetProcAddress symbol resolution. - # Add its own directory to its RPATH so it can find itself + # libamdhip64.so dlopens its own bare name for hipGetProcAddress symbol resolution, + # same pattern with libhiprtc.so, so add own lib directory to all .so's + # RPATHs so they can find themselves and neighbouring libs # Must be in postFixup so it runs after patchelf --shrink-rpath which removes # the apparently useless rpath postFixup = '' - patchelf --add-rpath "$out/lib" "$out/lib/libamdhip64.so" + patchelf --add-rpath "$out/lib" "$out"/lib/*.so ''; disallowedRequisites = [ From 6df5d367483ec56869ca847568517cb0ffe82d2a Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Tue, 10 Mar 2026 08:38:50 -0700 Subject: [PATCH 34/86] rocmPackages.clr: add impureTest for C++ stdlib availability --- pkgs/development/rocm-modules/clr/default.nix | 4 ++ .../clr/test-hiprtc-type-traits.cpp | 68 +++++++++++++++++++ .../clr/test-hiprtc-type-traits.nix | 57 ++++++++++++++++ 3 files changed, 129 insertions(+) create mode 100644 pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.cpp create mode 100644 pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.nix diff --git a/pkgs/development/rocm-modules/clr/default.nix b/pkgs/development/rocm-modules/clr/default.nix index 9e5b7abbf099..d7202b6190ef 100644 --- a/pkgs/development/rocm-modules/clr/default.nix +++ b/pkgs/development/rocm-modules/clr/default.nix @@ -297,6 +297,10 @@ stdenv.mkDerivation (finalAttrs: { "amdgcnspirv" ]; }; + hiprtc-type-traits = callPackage ./test-hiprtc-type-traits.nix { + clr = finalAttrs.finalPackage; + inherit rocm-smi; + }; }; selectGpuTargets = diff --git a/pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.cpp b/pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.cpp new file mode 100644 index 000000000000..39a99f39eae1 --- /dev/null +++ b/pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.cpp @@ -0,0 +1,68 @@ +#include +#include +#include +#include + +#define CHECK_HIP(expr) do { \ + if ((expr) != hipSuccess) { \ + std::cerr << #expr << " failed" << std::endl; \ + return 1; \ + } \ +} while(0) + +#define CHECK_HIPRTC(expr) do { \ + hiprtcResult _res = (expr); \ + if (_res != HIPRTC_SUCCESS) { \ + std::cerr << #expr << " failed: " << hiprtcGetErrorString(_res) << std::endl; \ + hiprtcGetProgramLogSize(prog, &log_size); \ + if (log_size > 0) { \ + std::string log(log_size, '\0'); \ + hiprtcGetProgramLog(prog, log.data()); \ + std::cerr << "Compile log:\n" << log << std::endl; \ + } \ + return 1; \ + } \ +} while(0) + +static const char* kernelSource = R"( + #include + + extern "C" __global__ void test_kernel(int* out) { + static_assert(std::is_same::type>::value, + "type_traits not working"); + out[0] = 5; + } +)"; + +int main() { + hiprtcProgram prog; + size_t log_size = 0; + CHECK_HIPRTC(hiprtcCreateProgram(&prog, kernelSource, "test.hip", 0, nullptr, nullptr)); + CHECK_HIPRTC(hiprtcCompileProgram(prog, 0, nullptr)); + + size_t code_size; + CHECK_HIPRTC(hiprtcGetCodeSize(prog, &code_size)); + std::string code(code_size, '\0'); + CHECK_HIPRTC(hiprtcGetCode(prog, code.data())); + hiprtcDestroyProgram(&prog); + + hipModule_t module; + hipFunction_t kernel; + CHECK_HIP(hipModuleLoadData(&module, code.data())); + CHECK_HIP(hipModuleGetFunction(&kernel, module, "test_kernel")); + + int* d_out; + int h_out = 0; + CHECK_HIP(hipMalloc(&d_out, sizeof(int))); + void* args[] = { &d_out }; + CHECK_HIP(hipModuleLaunchKernel(kernel, 1, 1, 1, 1, 1, 1, 0, nullptr, args, nullptr)); + CHECK_HIP(hipMemcpy(&h_out, d_out, sizeof(int), hipMemcpyDeviceToHost)); + + if (h_out != 5) { + std::cerr << "Kernel output mismatch: expected 5, got " << h_out << std::endl; + return 1; + } + + std::cout << "HIPRTC type_traits test passed (output=" << h_out << ")" << std::endl; + return 0; +} diff --git a/pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.nix b/pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.nix new file mode 100644 index 000000000000..f0f3628fcdaa --- /dev/null +++ b/pkgs/development/rocm-modules/clr/test-hiprtc-type-traits.nix @@ -0,0 +1,57 @@ +{ + lib, + stdenv, + makeImpureTest, + clr, + rocm-smi, +}: +# minimal hiprtc test that compiles a kernel using at runtime +# mirrors an migraphx workload, better test/iteration UX to be able to confirm +# with just a build up to clr +let + hiprtc-test = stdenv.mkDerivation { + pname = "hiprtc-type-traits-test"; + version = "0"; + + dontUnpack = true; + + nativeBuildInputs = [ clr ]; + + buildPhase = '' + runHook preBuild + hipcc -o hiprtc-test ${./test-hiprtc-type-traits.cpp} -lhiprtc + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + mkdir -p $out/bin + cp hiprtc-test $out/bin/ + runHook postInstall + ''; + }; +in +makeImpureTest { + name = "hiprtc-type-traits"; + testedPackage = "rocmPackages.clr"; + + sandboxPaths = [ + "/sys" + "/dev/dri" + "/dev/kfd" + ]; + + nativeBuildInputs = [ + hiprtc-test + rocm-smi + ]; + + testScript = '' + rocm-smi + hiprtc-test + ''; + + meta = { + teams = [ lib.teams.rocm ]; + }; +} From 4781916d7059582a5d60f102ba3f87fbbe1b5c53 Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Tue, 10 Mar 2026 08:39:46 -0700 Subject: [PATCH 35/86] rocmPackages.rocm-comgr: bake fallback LLVM PATH to fix C++ stdlib search --- .../rocm-modules/rocm-comgr/default.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/pkgs/development/rocm-modules/rocm-comgr/default.nix b/pkgs/development/rocm-modules/rocm-comgr/default.nix index 0a49cb0a24fa..e7663a1f7130 100644 --- a/pkgs/development/rocm-modules/rocm-comgr/default.nix +++ b/pkgs/development/rocm-modules/rocm-comgr/default.nix @@ -45,10 +45,19 @@ stdenv.mkDerivation (finalAttrs: { ./fix-ccob-compat-output-filename.patch ]; - postPatch = '' - substituteInPlace cmake/opencl_header.cmake \ - --replace-fail "\''${CLANG_CMAKE_DIR}/../../../" "${llvm.clang-unwrapped.lib}" - ''; + postPatch = + # Fix relative path assumption for libllvm + '' + substituteInPlace cmake/opencl_header.cmake \ + --replace-fail "\''${CLANG_CMAKE_DIR}/../../../" "${llvm.clang-unwrapped.lib}" + '' + # Bake LLVM root for cfg/includes or HIPRTC can't find C++ stdlib headers (e.g. ). + + '' + substituteInPlace src/comgr-env.cpp \ + --replace-fail \ + 'return EnvLLVMPath;' \ + 'return EnvLLVMPath ? EnvLLVMPath : "${llvm.rocm-toolchain}";' + ''; nativeBuildInputs = [ cmake From c1c21ed52282e642a16ad0154039bdc77a31dbd9 Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Tue, 10 Mar 2026 08:59:36 -0700 Subject: [PATCH 36/86] rocmPackages.migraphx: add migraphx-driver impureTest using small resnet --- .../rocm-modules/migraphx/default.nix | 7 +++ .../migraphx/test-migraphx-driver.nix | 47 +++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 pkgs/development/rocm-modules/migraphx/test-migraphx-driver.nix diff --git a/pkgs/development/rocm-modules/migraphx/default.nix b/pkgs/development/rocm-modules/migraphx/default.nix index 0e6f84ca1487..8b602bcdf362 100644 --- a/pkgs/development/rocm-modules/migraphx/default.nix +++ b/pkgs/development/rocm-modules/migraphx/default.nix @@ -1,6 +1,7 @@ { lib, stdenv, + callPackage, fetchFromGitHub, rocmUpdateScript, pkg-config, @@ -183,6 +184,12 @@ stdenv.mkDerivation (finalAttrs: { patchelf $test/bin/test_* --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE" ''; + passthru.impureTests = { + # NIXPKGS_ALLOW_UNFREE=1 bash $(nix-build -A rocmPackages.migraphx.impureTests.migraphx-driver) + migraphx-driver = callPackage ./test-migraphx-driver.nix { + migraphx = finalAttrs.finalPackage; + }; + }; passthru.updateScript = rocmUpdateScript { name = finalAttrs.pname; inherit (finalAttrs.src) owner; diff --git a/pkgs/development/rocm-modules/migraphx/test-migraphx-driver.nix b/pkgs/development/rocm-modules/migraphx/test-migraphx-driver.nix new file mode 100644 index 000000000000..c34c5a8a71d4 --- /dev/null +++ b/pkgs/development/rocm-modules/migraphx/test-migraphx-driver.nix @@ -0,0 +1,47 @@ +{ + lib, + fetchurl, + makeImpureTest, + writableTmpDirAsHomeHook, + migraphx, + clr, + rocm-smi, +}: + +# Verify that a ≈50MiB resnet onnx can run with migraphx +let + resnet18 = fetchurl { + url = "https://huggingface.co/onnxmodelzoo/resnet18_Opset18_timm/resolve/main/resnet18_Opset18_timm.onnx"; + hash = "sha256-u2Io20n72qoA9atRsFIWb0zHF1WdJYgHQdMWfJhJGHA="; + meta.license = lib.licenses.unfree; + }; +in +makeImpureTest { + name = "migraphx-driver"; + testedPackage = "rocmPackages.migraphx"; + + sandboxPaths = [ + "/sys" + "/dev/dri" + "/dev/kfd" + ]; + + nativeBuildInputs = [ + writableTmpDirAsHomeHook + migraphx + clr + rocm-smi + ]; + + # FIXME(@LunNova): tol values are set too high - was seeing high divergence on iGPU + # want this test to be useful for verifying workloads run at all + # and will investigate what's broken for accuracy + testScript = '' + rocm-smi + migraphx-driver verify -O --rms-tol 0.03 --atol 1.0 --rtol 0.01 ${resnet18} + ''; + + meta = { + teams = [ lib.teams.rocm ]; + }; +} From 109b7d54b246a025d773411b5c553b682d0a6489 Mon Sep 17 00:00:00 2001 From: Luna Nova Date: Tue, 10 Mar 2026 09:26:15 -0700 Subject: [PATCH 37/86] rocmPackages.clr: drop unmaintained AMD opencl-example test Will be replaced with an opencl-cts based basic conformance suite, AMD aren't maintaining their amd-app-samples repo. --- pkgs/development/rocm-modules/clr/default.nix | 4 +- .../rocm-modules/clr/test-opencl-example.nix | 88 ------------------- 2 files changed, 1 insertion(+), 91 deletions(-) delete mode 100644 pkgs/development/rocm-modules/clr/test-opencl-example.nix diff --git a/pkgs/development/rocm-modules/clr/default.nix b/pkgs/development/rocm-modules/clr/default.nix index 71451c81e443..b70d9ec68c12 100644 --- a/pkgs/development/rocm-modules/clr/default.nix +++ b/pkgs/development/rocm-modules/clr/default.nix @@ -266,9 +266,7 @@ stdenv.mkDerivation (finalAttrs: { inherit rocm-smi; clr = finalAttrs.finalPackage; }; - opencl-example = callPackage ./test-opencl-example.nix { - clr = finalAttrs.finalPackage; - }; + # TODO(@LunNova): add OpenCL test with opencl-cts generic-arch = callPackage ./test-isa-compat.nix { clr = finalAttrs.finalPackage; name = "generic-arch"; diff --git a/pkgs/development/rocm-modules/clr/test-opencl-example.nix b/pkgs/development/rocm-modules/clr/test-opencl-example.nix deleted file mode 100644 index 34b97755a7bf..000000000000 --- a/pkgs/development/rocm-modules/clr/test-opencl-example.nix +++ /dev/null @@ -1,88 +0,0 @@ -{ - lib, - stdenv, - makeImpureTest, - fetchFromGitHub, - clr, - cmake, - pkg-config, - glew, - libglut, - opencl-headers, - ocl-icd, -}: - -let - - examples = stdenv.mkDerivation { - pname = "amd-app-samples"; - version = "2018-06-10"; - - src = fetchFromGitHub { - owner = "OpenCL"; - repo = "AMD_APP_samples"; - rev = "54da6ca465634e78fc51fc25edf5840467ee2411"; - hash = "sha256-qARQpUiYsamHbko/I1gPZE9pUGJ+3396Vk2n7ERSftA="; - }; - - nativeBuildInputs = [ - cmake - pkg-config - ]; - - buildInputs = [ - glew - libglut - opencl-headers - ocl-icd - ]; - - installPhase = '' - runHook preInstall - - mkdir -p $out/bin - # Example path is bin/x86_64/Release/cl/Reduction/Reduction - cp -r bin/*/*/*/*/* $out/bin/ - - runHook postInstall - ''; - - cmakeFlags = [ "-DBUILD_CPP_CL=OFF" ]; - - meta = { - description = "Samples from the AMD APP SDK (with OpenCRun support)"; - homepage = "https://github.com/OpenCL/AMD_APP_samples"; - license = lib.licenses.bsd2; - platforms = lib.platforms.linux; - teams = [ lib.teams.rocm ]; - }; - }; - -in -makeImpureTest { - name = "opencl-example"; - testedPackage = "rocmPackages.clr"; - - sandboxPaths = [ - "/sys" - "/dev/dri" - "/dev/kfd" - ]; - - nativeBuildInputs = [ examples ]; - - OCL_ICD_VENDORS = "${clr.icd}/etc/OpenCL/vendors"; - - testScript = '' - # Examples load resources from current directory - cd ${examples}/bin - echo OCL_ICD_VENDORS=$OCL_ICD_VENDORS - pwd - - HelloWorld | grep HelloWorld - ''; - - meta = { - teams = [ lib.teams.rocm ]; - }; -} From cbfa13c3c46f435b3f2e267ab965bbcb465466c0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 17:59:09 +0000 Subject: [PATCH 38/86] vscodium: 1.109.51242 -> 1.110.11631 --- pkgs/applications/editors/vscode/vscodium.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix index e3668d7d3759..9ab9f1b8084e 100644 --- a/pkgs/applications/editors/vscode/vscodium.nix +++ b/pkgs/applications/editors/vscode/vscodium.nix @@ -27,12 +27,12 @@ let hash = { - x86_64-linux = "sha256-ZtujuSjRzps2f7BchVAW4x8keCnHK5QHGNveCLRE+QQ="; - x86_64-darwin = "sha256-Xe+tWx3LJe65DFCk9pmXBghnSLnol3HA098WdRjs6vo="; - aarch64-linux = "sha256-AjWIfQWrLtGE4V3r6GACA916cwXl9yT/iobfwfLrCBE="; - aarch64-darwin = "sha256-zFRvn9BT5xx+HMWhnI5APKUDekOvZjzbN3SlqtdMBOE="; - armv7l-linux = "sha256-ikFIKd06N1Y1CYHd6RRSJUd9PqxSH2Po7QgDD15EZ5I="; - loongarch64-linux = "sha256-1mpodid9/Vz4OAXhE35UqqC99PuqCg7lRQJy20RL/Zs="; + x86_64-linux = "sha256-x2Un085IBlTTu98fv1Z+INu8UDRttbbNJMZJ3ReHPNE="; + x86_64-darwin = "sha256-3CzZlPCNHy9XtfTSh18Up/iJL0+X16O047UelMkpl10="; + aarch64-linux = "sha256-5prZ9RO8sPv4PunAqwo5Wjc7+ApfGF5FfWEai0Biaqw="; + aarch64-darwin = "sha256-jnAqT3KmQ590eTP4EHEIu03TeRcYDU+bLc/yuJ+Qx/s="; + armv7l-linux = "sha256-PVQ3UVmp8QQL1702kSRSSdh3QYNrD81/3ldFEPMwMKM="; + loongarch64-linux = "sha256-J+YIZbGjMJnHVrOmlML1wpGiwBbwcPJkMdtjxfAgT8w="; } .${system} or throwSystem; @@ -43,7 +43,7 @@ buildVscode rec { # Please backport all compatible updates to the stable release. # This is important for the extension ecosystem. - version = "1.109.51242"; + version = "1.110.11631"; pname = "vscodium"; executableName = "codium"; From 95fdb3326d43ac15c7a06dc6af995cd98ef791c7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 19:15:40 +0000 Subject: [PATCH 39/86] shattered-pixel-dungeon: 3.3.5 -> 3.3.7 --- pkgs/by-name/sh/shattered-pixel-dungeon/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sh/shattered-pixel-dungeon/package.nix b/pkgs/by-name/sh/shattered-pixel-dungeon/package.nix index c08c929b27f0..e5cc2afa3388 100644 --- a/pkgs/by-name/sh/shattered-pixel-dungeon/package.nix +++ b/pkgs/by-name/sh/shattered-pixel-dungeon/package.nix @@ -6,13 +6,13 @@ callPackage ./generic.nix rec { pname = "shattered-pixel-dungeon"; - version = "3.3.5"; + version = "3.3.7"; src = fetchFromGitHub { owner = "00-Evan"; repo = "shattered-pixel-dungeon"; tag = "v${version}"; - hash = "sha256-NxeDF0bfQJsJiWkAD8ynjtezPZZ5TaU0ih1t2uVtXVU="; + hash = "sha256-nWsIaAj4IqQWmNOGFOFJ+oX0Nz6DlWEp/47/qrcZ8qs="; }; patches = [ ]; From 3b55d638a748704d5bb9342d3b96628be2d18271 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 19:30:03 +0000 Subject: [PATCH 40/86] nelm: 1.19.1 -> 1.20.1 --- pkgs/by-name/ne/nelm/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ne/nelm/package.nix b/pkgs/by-name/ne/nelm/package.nix index 8302e491e3a3..7d9482696894 100644 --- a/pkgs/by-name/ne/nelm/package.nix +++ b/pkgs/by-name/ne/nelm/package.nix @@ -9,16 +9,16 @@ }: buildGoModule (finalAttrs: { pname = "nelm"; - version = "1.19.1"; + version = "1.20.1"; src = fetchFromGitHub { owner = "werf"; repo = "nelm"; tag = "v${finalAttrs.version}"; - hash = "sha256-iFr0IuIwZARGcU2xfavNuBu3Z6vKQjddwadU1PBE1/A="; + hash = "sha256-64OAyuqV8qryVNH0Mxo9FiHnVjeshG45rtiU7jumb+w="; }; - vendorHash = "sha256-7KMSdfumDlAMfJFLFalH8WneQ+AFnTTnCZKYRTP9gX8="; + vendorHash = "sha256-rMSEUKHyj/R+YTm2ADNHsrdeH4SbF6XQyrkjkgPvhx8="; subPackages = [ "cmd/nelm" ]; From 753374bda24280d3f59bd63f8a87a98fd19dc162 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 20:31:17 +0000 Subject: [PATCH 41/86] fast-float: 8.2.3 -> 8.2.4 --- pkgs/by-name/fa/fast-float/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/fa/fast-float/package.nix b/pkgs/by-name/fa/fast-float/package.nix index bf40ea6afe81..10021bf75bee 100644 --- a/pkgs/by-name/fa/fast-float/package.nix +++ b/pkgs/by-name/fa/fast-float/package.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "fast-float"; - version = "8.2.3"; + version = "8.2.4"; src = fetchFromGitHub { owner = "fastfloat"; repo = "fast_float"; rev = "v${finalAttrs.version}"; - hash = "sha256-cQxIzfVNMG0UPEUw/4GYcRzmfAcBJLcswO+gqQ8t6lw="; + hash = "sha256-VuiOuslq9BpATlMgcoIJSDC1Y4unF0GAs1ypnMMfrQU="; }; nativeBuildInputs = [ cmake ]; From f9c3bc4bf93717d30e8c7f03dcb0f69878e13f4b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 10 Mar 2026 20:38:39 +0000 Subject: [PATCH 42/86] anytype: 0.54.2 -> 0.54.5 --- pkgs/by-name/an/anytype-heart/package.nix | 4 ++-- pkgs/by-name/an/anytype/package.nix | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/an/anytype-heart/package.nix b/pkgs/by-name/an/anytype-heart/package.nix index 652ba6fb0ecb..b43021a65fb7 100644 --- a/pkgs/by-name/an/anytype-heart/package.nix +++ b/pkgs/by-name/an/anytype-heart/package.nix @@ -26,7 +26,7 @@ buildGoModule (finalAttrs: { # Use only versions specified in anytype-ts middleware.version file: # https://github.com/anyproto/anytype-ts/blob/v/middleware.version - version = "0.48.1"; + version = "0.48.4"; # Update only together with 'anytype' package. # nixpkgs-update: no auto update @@ -34,7 +34,7 @@ buildGoModule (finalAttrs: { owner = "anyproto"; repo = "anytype-heart"; tag = "v${finalAttrs.version}"; - hash = "sha256-xhEqSOpNtJcysVQGiqwCb3Eh+uvirGaBZka7Mo2MLgU="; + hash = "sha256-EUv/kJcAftqGqerrDhdnAl9YXPt5wWwviZD/uQ5pWmI="; }; vendorHash = "sha256-4DiIU1ztmBCgI6axNKSeLSGQ5BuRLpSXl8RJAm1r2Eg="; diff --git a/pkgs/by-name/an/anytype/package.nix b/pkgs/by-name/an/anytype/package.nix index a5450c467024..241a88c256c5 100644 --- a/pkgs/by-name/an/anytype/package.nix +++ b/pkgs/by-name/an/anytype/package.nix @@ -17,23 +17,23 @@ buildNpmPackage (finalAttrs: { pname = "anytype"; - version = "0.54.2"; + version = "0.54.5"; src = fetchFromGitHub { owner = "anyproto"; repo = "anytype-ts"; tag = "v${finalAttrs.version}"; - hash = "sha256-MzEgG//wptk0G9kn1c491qyqn62do9Z2nt8I6HtOaJQ="; + hash = "sha256-TLmmItt5ASlfQA/e1RtcGF/Gf9AU97pf4tpv3B7J9kE="; }; locales = fetchFromGitHub { owner = "anyproto"; repo = "l10n-anytype-ts"; - rev = "d8c621ecfde8eab1123a4338fe50823cba047be1"; - hash = "sha256-IUr9VJqPduW9gHdFZSwIyFAEycc6nfS/Rfz2vXO0iCY="; + rev = "d744bf573b72c6e8d11e093c8f6702acec263009"; + hash = "sha256-UnqHXqtBTRmDR/qvS7bktMzDzk9gq+onvvLJgdzqJ7A="; }; - npmDepsHash = "sha256-fGn1L32bcyDI72Qlt9lf84zJDqlvSwbI4Vubj4DL388="; + npmDepsHash = "sha256-vvnUzzryW5nbAv9OEU+6xwP7lf8+K/mS0mcDswNRTxU="; # npm dependency install fails with nodejs_24: https://github.com/NixOS/nixpkgs/issues/474535 nodejs = nodejs_22; From b17007e445fd54550cd225588f8d437a7f387f7b Mon Sep 17 00:00:00 2001 From: pancaek <20342389+pancaek@users.noreply.github.com> Date: Mon, 9 Mar 2026 18:10:30 -0700 Subject: [PATCH 43/86] gnujump: move icon to spec-compliant location --- pkgs/by-name/gn/gnujump/gnujump.png | Bin 0 -> 447 bytes pkgs/by-name/gn/gnujump/gnujump.xpm | 64 ---------------------------- pkgs/by-name/gn/gnujump/package.nix | 2 +- 3 files changed, 1 insertion(+), 65 deletions(-) create mode 100644 pkgs/by-name/gn/gnujump/gnujump.png delete mode 100644 pkgs/by-name/gn/gnujump/gnujump.xpm diff --git a/pkgs/by-name/gn/gnujump/gnujump.png b/pkgs/by-name/gn/gnujump/gnujump.png new file mode 100644 index 0000000000000000000000000000000000000000..3a6b6c0ed121e23480c5dea48df54f256bfe35bd GIT binary patch literal 447 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4rT@h2A3sW$3UE9k04(LhAK4%hK3dfhF=T} z3=Jo5{C|1o|J!T+pJ@93^zi?aP5+-B`TzVl!+(a03=A(A7#Qw?ZTQW=aFl`J zJp;oXh9s7GCm9$R7)yfuf*Bm1-AH3#VEF9m;uunKD`|ldgNU10gjkD#Kn?G~W3lh* zFRE^sbauO3tCq~1??2`;?J-yQ>?YB+@b!mD!b`8H_*Wx3`3p;c=mJ)* zjq9Bb^RVq-vuD?pW0^g6f!+!KloJfsEXc00|5nShPxB5}V`|A0<>T8~PIk}nw%PJs zkws}i*k9j*t<$O*1yz~ClGkWAy=j&$FxuJ`et2r0gmt>;^S~Za!!uJEm6@Jd$@l*j zseJTc-OX)(KJc6D56R1Tc;j=Z#Q#kTe$=GIwC~hQ-LOHtXOgvezaIf7H(Yehw0=Iff+pVSC@hU*VEO{Wt~$(69CxxxzGRr literal 0 HcmV?d00001 diff --git a/pkgs/by-name/gn/gnujump/gnujump.xpm b/pkgs/by-name/gn/gnujump/gnujump.xpm deleted file mode 100644 index d8b6bcb4c8cb..000000000000 --- a/pkgs/by-name/gn/gnujump/gnujump.xpm +++ /dev/null @@ -1,64 +0,0 @@ -/* XPM */ -static char *gnujump[] = { -/* columns rows colors chars-per-pixel */ -"32 32 26 1 ", -" c black", -". c #D10000", -"X c #E80000", -"o c #E90000", -"O c #F90000", -"+ c red", -"@ c #00C500", -"# c #00DC00", -"$ c #00DD00", -"% c #00EF00", -"& c #00FA00", -"* c #00FB00", -"= c green", -"- c #FFC882", -"; c #FFC982", -": c #FFD298", -"> c #FFD299", -", c #FFD399", -"< c #FFDAAB", -"1 c #FFDBAB", -"2 c #FFDBAC", -"3 c #FFE1BA", -"4 c #FFE5C3", -"5 c #FFE5C4", -"6 c #FFE7C7", -"7 c None", -/* pixels */ -"77777777777777777777777777777777", -"77777777777777777777777777777777", -"7777777777777 77777777777777", -"77777777777 777777777777", -"7777777777 77777777777", -"777777777 7777777777", -"777777777 ;;;-- 7777777777", -"77777777 ::>>,>1: 777777777", -"77777777 :<1<1:>2: 777777777", -"77777777 :1331: :: 7777 7777", -"77777777 :<3431: :, 777 o 777", -"777 777 ->236531>:2: 77 oo 777", -"77 .o 77 -,145443<1, 77 oOo 777", -"77 .ooo 7 -:13333312: 7 oOo 7777", -"777 oOOo :,11<<<:: oOOo 7777", -"7777 XOOooo :::>: XooO+Oo 7777", -"77777 oOOOOoo ooOOO+Oo 77777", -"777777 oOO+OOoooooOO++OOo 777777", -"7777777 XoOOOOOOOOOOOOoo 7777777", -"77777777 oooooooooooo 77777777", -"7777777777 7777777777", -"777777777 @@@@@@@@@@@@ 7777777", -"77777777 #######$$##$#### 777777", -"7777777 #%%%%%%%%%%%%%%%%# 77777", -"7777777 #%*&*&*%%%%%%*&*%# 77777", -"777777 #%*=**%%#####$%%&*%# 7777", -"777777 #%&*%%## ##%&%# 7777", -"77777 #%*%%## 777777 #%%# 7777", -"77777 #%%#$ 777777777 #%%# 777", -"7777 @%## 777777777777 #%# 777", -"7777 ## 7777777777777777 $# 777", -"77777 7777777777777777777 7777" -}; diff --git a/pkgs/by-name/gn/gnujump/package.nix b/pkgs/by-name/gn/gnujump/package.nix index 34b4522f06cf..3a03a65a3826 100644 --- a/pkgs/by-name/gn/gnujump/package.nix +++ b/pkgs/by-name/gn/gnujump/package.nix @@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: { ]; postInstall = '' - install -Dm644 ${./gnujump.xpm} $out/share/pixmaps/gnujump.xpm + install -Dm644 ${./gnujump.png} $out/share/icons/hicolor/32x32/apps/gnujump.png ''; meta = { From c530a8fa63cf76f8a34ad330488fbb3536088219 Mon Sep 17 00:00:00 2001 From: superherointj Date: Tue, 10 Mar 2026 18:09:28 -0300 Subject: [PATCH 44/86] k3s: k3s_1_34 -> k3s_1_35 --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9722c8d80068..920aabf9efda 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9881,7 +9881,7 @@ with pkgs; k3s_1_34 k3s_1_35 ; - k3s = k3s_1_34; + k3s = k3s_1_35; okteta = libsForQt5.callPackage ../applications/editors/okteta { }; From c444b0054d5df5cd75e2562c40b6f1a7bc6b5f09 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 00:16:30 +0000 Subject: [PATCH 45/86] qsv: 16.1.0 -> 17.0.0 --- pkgs/by-name/qs/qsv/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/qs/qsv/package.nix b/pkgs/by-name/qs/qsv/package.nix index 02ca49e34997..9250bda31a59 100644 --- a/pkgs/by-name/qs/qsv/package.nix +++ b/pkgs/by-name/qs/qsv/package.nix @@ -15,7 +15,7 @@ withUi ? true, buildFeatures ? # enable all features except self_update by default - # https://github.com/dathere/qsv/blob/16.1.0/Cargo.toml#L370 + # https://github.com/dathere/qsv/blob/17.0.0/Cargo.toml#L370 [ "apply" "feature_capable" @@ -33,7 +33,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "qsv"; - version = "16.1.0"; + version = "17.0.0"; inherit buildFeatures; @@ -41,10 +41,10 @@ rustPlatform.buildRustPackage (finalAttrs: { owner = "dathere"; repo = "qsv"; rev = finalAttrs.version; - hash = "sha256-7v4I5UufODXgEBeM5+s6zBBPRlrihHrfCYOPjrny53I="; + hash = "sha256-RIrphnw0opCvp0fhkvevNaOQJ8/25c34qYfg4IVNP9g="; }; - cargoHash = "sha256-wD5LjdHhCVltHYWij+/b8j9ER4OnwecVlc/2nGjvClE="; + cargoHash = "sha256-nTyxEX2jiFZxkao0/xFxGjpitc5K0BQSvvo3A+PFLEI="; buildInputs = [ file From 4ae1574efe59a41f30ac3e71b9f8c67b95d79495 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 00:32:20 +0000 Subject: [PATCH 46/86] snowflake: 2.11.0 -> 2.12.1 --- pkgs/by-name/sn/snowflake/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/sn/snowflake/package.nix b/pkgs/by-name/sn/snowflake/package.nix index c64db64325c9..9b7bb3dcd23f 100644 --- a/pkgs/by-name/sn/snowflake/package.nix +++ b/pkgs/by-name/sn/snowflake/package.nix @@ -6,7 +6,7 @@ buildGoModule (finalAttrs: { pname = "snowflake"; - version = "2.11.0"; + version = "2.12.1"; src = fetchFromGitLab { domain = "gitlab.torproject.org"; @@ -14,10 +14,10 @@ buildGoModule (finalAttrs: { owner = "anti-censorship/pluggable-transports"; repo = "snowflake"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-VfKiY5XCUnhsWoSfMeYQ5rxxXmAtWzD94o4EvhDCwDM="; + sha256 = "sha256-3aXO6AvOHPX8QCXK5dFx3QVxQ7BNAi4DJAZ63BMOI1g="; }; - vendorHash = "sha256-vopRE4B4WhncUdBfmBTzRbZzCU20vsHoNCYcPG4BGc0="; + vendorHash = "sha256-X7SfTTxUL/4f2OndF8gnhz5JVpqGzeGLctiOFx5pJPI="; meta = { description = "System to defeat internet censorship"; From eaa0c356d05d8df7d038866ce048ea0e6491cb12 Mon Sep 17 00:00:00 2001 From: emilylange Date: Tue, 10 Mar 2026 23:07:54 +0100 Subject: [PATCH 47/86] chromium,chromedriver: 145.0.7632.159 -> 146.0.7680.71 https://developer.chrome.com/blog/new-in-chrome-146 https://developer.chrome.com/release-notes/146 https://chromereleases.googleblog.com/2026/03/stable-channel-update-for-desktop_10.html --- .../networking/browsers/chromium/common.nix | 92 ++++--- .../networking/browsers/chromium/info.json | 248 +++++++++--------- 2 files changed, 179 insertions(+), 161 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index 00c15bab9a26..ac7e7773703e 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -230,6 +230,7 @@ let isElectron = packageName == "electron"; rustcVersion = buildPackages.rustc.version; + llvmVersion = buildPackages.rustc.llvmPackages.llvm.version; # libpng has been replaced by the png rust crate # https://github.com/image-rs/image-png/discussions/562 needsLibpng = !chromiumVersionAtLeast "143"; @@ -555,7 +556,7 @@ let hash = "sha256-0ueOCHYheSFHRFzEat3TDhnU3Avf0TcNBBBpTkz+saw="; }) ] - ++ lib.optionals (chromiumVersionAtLeast "144") [ + ++ lib.optionals (versionRange "144" "146") [ # Patch rustc_nightly_capability to eval to false instead of true. # https://chromium-review.googlesource.com/c/chromium/src/+/7022369 ./patches/chromium-144-rustc_nightly_capability.patch @@ -576,27 +577,50 @@ let hash = "sha256-k+xCfhDuHxtuGhY7LVE8HvbDJt8SEFkslBcJe7t5CAg="; }) ] - ++ lib.optionals (chromiumVersionAtLeast "145" && !ungoogled) [ - # Non-backported variant of the patch above for M145 + ++ lib.optionals (chromiumVersionAtLeast "146" && !ungoogled) [ + # Same as the patch above, but from ungoogled-chromium and much + # cleaner (and smaller) than reverting an endless chain of CLs. (fetchpatch { - name = "revert-devtools-frontend-esbuild-instead-of-rollup.patch"; - # https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7485622 - url = "https://chromium.googlesource.com/devtools/devtools-frontend/+/72846d78927b90a77b51b12d13009320a74067e0^!?format=TEXT"; - decode = "base64 -d"; - stripLen = 1; - extraPrefix = "third_party/devtools-frontend/src/"; - revert = true; - hash = "sha256-vu60z6PuWavNoEoxW0thSy89WxztOEG50V1ZSfJRRug="; + name = "ungoogled-chromium-145-build-with-wasm-rollup.patch"; + # https://github.com/ungoogled-software/ungoogled-chromium/blob/145.0.7632.159-1/patches/core/ungoogled-chromium/build-with-wasm-rollup.patch + url = "https://github.com/ungoogled-software/ungoogled-chromium/raw/refs/tags/145.0.7632.159-1/patches/core/ungoogled-chromium/build-with-wasm-rollup.patch"; + hash = "sha256-Ho5I33FOgtYHvKSZlWXWuBaqnSHqy4+f6EZdiL+/rRQ="; }) + ] + ++ lib.optionals (chromiumVersionAtLeast "146") [ + # Revert CL 7457194 to fix the following error: + # ERROR at //chrome/test/BUILD.gn:6355:9: Unable to load "/build/src/components/variations/test_data/cipd/BUILD.gn". + # "//components/variations/test_data/cipd:single_group_per_study_prefer_existing_behavior_seed", (fetchpatch { - name = "revert-devtools-frontend-reland-use-native-rollup.patch"; - # https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7368549 - url = "https://chromium.googlesource.com/devtools/devtools-frontend/+/7c2d912b52f18fff4a9ef7bd64608f2feefc0d83^!?format=TEXT"; + name = "chromium-146-revert-Add-finch-seeds-to-desktop-perf-builds.patch"; + # https://chromium-review.googlesource.com/c/chromium/src/+/7457194 + url = "https://chromium.googlesource.com/chromium/src/+/d2e8a550eece6051372da94a475a8661da203106^!?format=TEXT"; decode = "base64 -d"; - stripLen = 1; - extraPrefix = "third_party/devtools-frontend/src/"; revert = true; - hash = "sha256-Qa4GvamZ//0WTAZmDXOQJVz9dnYNzBkD8lYcWOHdVIY="; + hash = "sha256-tJ//HE7o9R8nSQDGhi+MKXdNUwnkCZI++CzpAmFn2YY="; + }) + ] + ++ lib.optionals (chromiumVersionAtLeast "146" && lib.versionOlder llvmVersion "23") [ + # clang++: error: unknown argument: '-fsanitize-ignore-for-ubsan-feature=array-bounds' + (fetchpatch { + name = "chromium-146-revert-Update-fsanitizer=array-bounds-config.patch"; + # https://chromium-review.googlesource.com/c/chromium/src/+/7539408 + url = "https://chromium.googlesource.com/chromium/src/+/acb47d9a6b56c4889a2ed4216e9968cfc740086c^!?format=TEXT"; + decode = "base64 -d"; + revert = true; + hash = "sha256-WZsN2qm6lX121bDf7SoN75flXtCTmPPpwtHK0ayjkPc="; + }) + ] + ++ lib.optionals (versionRange "146" "147") [ + # Backport CL 7594600 from M147 to fix the following error: + # error[E0277]: the trait bound `LaneCount: SupportedLaneCount` is not satisfied + # --> ../../third_party/rust/chromium_crates_io/vendor/bytemuck-v1/src/pod.rs:152:40 + (fetchpatch { + name = "chromium-146-backport-Remove-now-obsolete-invalid-patch-on-bytemuck-v1.patch"; + # https://chromium-review.googlesource.com/c/chromium/src/+/7594600 + url = "https://chromium.googlesource.com/chromium/src/+/90b77efcecb262823fadb67b0ce218846cd9e756^!?format=TEXT"; + decode = "base64 -d"; + hash = "sha256-iDhDdVscy0tinQCRKXOghrn4ZRwlc8YjPZ0xPv0UMEU="; }) ]; @@ -697,20 +721,6 @@ let '${glibc}/share/locale/' '' - # Workaround (crimes) for our rollup/esbuild revert in M145. - # https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7414812 - # We cannot use fetchpatch{,2} because it silently drops blobs and messes up symlinks. - # We cannot use GNU patch (patchPhase) because it does not support git binary diffs. - # We cannot use Gerrit/Gitiles because the git sha lengths may change as the repo grows. - + lib.optionalString (chromiumVersionAtLeast "145" && !ungoogled) '' - ${lib.getExe buildPackages.git} apply --reverse --directory=third_party/devtools-frontend/src/ ${ - fetchurl { - name = "revert-devtools-frontend-remove-rollup-wasm.patch"; - url = "https://github.com/ChromeDevTools/devtools-frontend/commit/a377a8c570a370e1bfccaf82f128e3b977dbf866.patch?full_index=1"; - hash = "sha256-83T37ts54iotGYQAAyVv5CF8fMVrh/tfVRhfWaOlUkI="; - } - } - '' + '' # Allow to put extensions into the system-path. sed -i -e 's,/usr,/run/current-system/sw,' chrome/common/chrome_paths.cc @@ -872,12 +882,20 @@ let // (extraAttrs.gnFlags or { }) ); - preConfigure = lib.optionalString (!isElectron) '' - ( - cd third_party/node - grep patch update_npm_deps | sh - ) - ''; + preConfigure = + lib.optionalString (!isElectron) '' + ( + cd third_party/node + grep patch update_npm_deps | sh + ) + '' + # Our node_modules, unlike the tarball from chromium, includes @lit/reactive-element/development, + # which causes a "error: TS2403: Subsequent variable declarations must have the same type" later in the build. + # TypeScript is parsing both @lit/reactive-element/reactive-element.d.ts and @lit/reactive-element/development/reactive-element.d.ts, + # but lit_reactive_element.patch only patches the former. + + lib.optionalString (chromiumVersionAtLeast "146") '' + rm -r third_party/node/node_modules/@lit/reactive-element/development + ''; configurePhase = '' runHook preConfigure diff --git a/pkgs/applications/networking/browsers/chromium/info.json b/pkgs/applications/networking/browsers/chromium/info.json index e5559b07daf1..e9dedac666c3 100644 --- a/pkgs/applications/networking/browsers/chromium/info.json +++ b/pkgs/applications/networking/browsers/chromium/info.json @@ -1,28 +1,28 @@ { "chromium": { - "version": "145.0.7632.159", + "version": "146.0.7680.71", "chromedriver": { - "version": "145.0.7632.160", - "hash_darwin": "sha256-JQpTpNyI50HuUFtM70JUqm/JVCZeXxojp54kJqjrrYg=", - "hash_darwin_aarch64": "sha256-eXip9I36nZw8PvzrA3+0/yMt+XmX5TNvVgQ2XaSlYzY=" + "version": "146.0.7680.72", + "hash_darwin": "sha256-pm7HJA+yr7gQFYHpYC1ELD8zDFzrzcRDpkjbqmjWcbs=", + "hash_darwin_aarch64": "sha256-ffgeYa2Rvrg9LUTpKJ4tkBysVkMMUkrBkju6ULHU/dI=" }, "deps": { "depot_tools": { - "rev": "fb0b652edba70f5c4ac867f3beca9e535f905b4c", - "hash": "sha256-feguZuDeGytydebRiIK2FqxNStXFdXv191IDEuhag+o=" + "rev": "42786f6e46c25c30dd58f69283ab6fcd0c959f58", + "hash": "sha256-wI3L6w3G9QCWzvSSUXeLJFHZ+7iv01hs+ig12EXJFHk=" }, "gn": { - "version": "0-unstable-2026-01-07", - "rev": "5550ba0f4053c3cbb0bff3d60ded9d867b6fa371", - "hash": "sha256-SoXVnpCuNee80N4YdsTEHQd3jZNoHOwKVP6O8a67Ym0=" + "version": "0-unstable-2026-02-05", + "rev": "304bbef6c7e9a86630c12986b99c8654eb7fe648", + "hash": "sha256-wFCuu4GR0N7QZCwT8UAhqH5moicYQjZ4ZLI58AM4pJ0=" }, - "npmHash": "sha256-13sgV/5BD7QvDLBAEmoLN5vongw+S5v5znvZcctxhWc=" + "npmHash": "sha256-ByB1Ea5tduIJZXyydeBWsoS8OPABOgwHe+dNXRssdvc=" }, "DEPS": { "src": { "url": "https://chromium.googlesource.com/chromium/src.git", - "rev": "838c69b2e5b8cd00a916e35097249bc20eb25a0a", - "hash": "sha256-lWw909vzUiAo0yzx3sZqEEWf9fpZkIxArP6G7+6ImXM=", + "rev": "e00a64ead1abef9447943efede7bc26362ac3797", + "hash": "sha256-hZPRH4Q2PQqXDhMXHHcav+37US+7vuN176rhpcoOeq8=", "recompress": true }, "src/third_party/clang-format/script": { @@ -32,8 +32,8 @@ }, "src/third_party/compiler-rt/src": { "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt.git", - "rev": "c3c996fabde14dbbbb92d1a5cdd9d6592e1dd038", - "hash": "sha256-HCE+p1lYX7EhdkEzhr+8g2P5pSHUx/5pweAtWiQsgDI=" + "rev": "86587046105639b66fe40059bf8fdb8a33522f97", + "hash": "sha256-Ah/ErOAoKo49VYXHg7MRRdwpjf1azOLp/k5RSf6LJbI=" }, "src/third_party/libc++/src": { "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git", @@ -47,13 +47,13 @@ }, "src/third_party/libunwind/src": { "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git", - "rev": "a726f5347e1e423d59f5c2d434b6a29265c43051", - "hash": "sha256-aZCJlwWr+XxwzVFBqMRziFfMu1l2jM8Nf8/GdZIGt4Y=" + "rev": "ba19d93d6d4f467fba11ff20fe2fc7c056f79345", + "hash": "sha256-iRfpzVN+QEpN6okwVs5oEtZqIJYzFGxsUO/IJY1c/W8=" }, "src/third_party/llvm-libc/src": { "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git", - "rev": "e9f0fd9932428fc109b848892050daadc2d91cc9", - "hash": "sha256-engzBRJGh2N3bemb/Q3bLnhFrpJNuIpVd4105Ny+1O0=" + "rev": "5705ee75b1fafbf96ff11534a9976f10d6c47dfd", + "hash": "sha256-f4Xfk3SN+miTE6Fc3hqe8dlxBPblOPghTLYdnUmPDus=" }, "src/chrome/test/data/perf/canvas_bench": { "url": "https://chromium.googlesource.com/chromium/canvas_bench.git", @@ -72,8 +72,8 @@ }, "src/docs/website": { "url": "https://chromium.googlesource.com/website.git", - "rev": "cb33846322e88ba1acc3188c1daa4b00b94be767", - "hash": "sha256-zjzyJ9glyV1tvETWS+TOByUOZ/OFCAzG30Bxf4ehT3Q=" + "rev": "5522b25f3da74caafdcd3f1bcf33380f9f023a1c", + "hash": "sha256-NmU/u3gWFkjVhZeEaESGn013mnsPmIDUK79lsVc/JzE=" }, "src/media/cdm/api": { "url": "https://chromium.googlesource.com/chromium/cdm.git", @@ -82,8 +82,8 @@ }, "src/net/third_party/quiche/src": { "url": "https://quiche.googlesource.com/quiche.git", - "rev": "022c607b07590ba1cf36ba3d0b24878ff3c03a77", - "hash": "sha256-CTujkLFcWNrHlhvFsXEZeB3fk66zK/3JmsGcwhpq4yM=" + "rev": "24430cb4103438f3cd1680f8f89d7c9e4288d5ca", + "hash": "sha256-QEmVSKg1qbJ2aKrCq3AOgDQ3yMPx1dcvSJcGEjAffDg=" }, "src/testing/libfuzzer/fuzzers/wasm_corpus": { "url": "https://chromium.googlesource.com/v8/fuzzer_wasm_corpus.git", @@ -92,8 +92,8 @@ }, "src/third_party/angle": { "url": "https://chromium.googlesource.com/angle/angle.git", - "rev": "2d051d9cef02bca69a97749a995b138e3dec0e1f", - "hash": "sha256-m/9vp7BAhRvVVOyRT6jCoNKP5PbiAZlCpqUHvFu1byA=" + "rev": "1d3190bf5633327395d694d621258978d989dffd", + "hash": "sha256-QVtTxBBox8fiqTj0gjqvYx6HoBSlvuWIe5ki4iCQl08=" }, "src/third_party/angle/third_party/glmark2/src": { "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2", @@ -107,8 +107,8 @@ }, "src/third_party/angle/third_party/VK-GL-CTS/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS", - "rev": "70cfd2061d441aaa600b3dc740220f231bd09d93", - "hash": "sha256-cB4zWtcDgsJcLDn2hzGdFp5Xs8KSOszVzk11CgvMxWg=" + "rev": "1698899cb078aacfb11d6b8eb5c4753d86bd2661", + "hash": "sha256-oifCX+zx63p5eB7nnfE+FM895Ino3gmS39N5twBIAKg=" }, "src/third_party/anonymous_tokens/src": { "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git", @@ -132,8 +132,8 @@ }, "src/third_party/dawn": { "url": "https://dawn.googlesource.com/dawn.git", - "rev": "3df397b5b33f950da92787d9a6ac655e0601bca2", - "hash": "sha256-UAKnxnEScteAj+14i56K6VA34JM+J4KCpG4HbY2bT4s=" + "rev": "c46c81b25577c40de6e7e510743ae0454e0c8351", + "hash": "sha256-Duv3kNulPtVxCLPa3bFIev64O9Y4ObJP/IZz31oPJ0E=" }, "src/third_party/dawn/third_party/glfw": { "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw", @@ -142,8 +142,8 @@ }, "src/third_party/dawn/third_party/dxc": { "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler", - "rev": "496974907e2ac7666f8bc889287d174755703016", - "hash": "sha256-/snH1gbxf1ghSNp371y6o8QIxLXz6pHwIZmbc9k4JAw=" + "rev": "907ddace203afad066242f3c1b1b59e86dbb34ee", + "hash": "sha256-0bIw1sVkVqNinAqt9u1Zeyltrnd02TWSRTOT4TcT3OY=" }, "src/third_party/dawn/third_party/dxheaders": { "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers", @@ -162,8 +162,8 @@ }, "src/third_party/dawn/third_party/webgpu-cts": { "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts", - "rev": "cf6c5cd8e96d97754daa78b9e63976f8f9d84624", - "hash": "sha256-kP/sWmijWt+fDEHdN6CuXBu5qGYV7nGW4gvU2nS4M8Y=" + "rev": "f1db17e4ab8b6a5a7d2709a67927d8a769a741a4", + "hash": "sha256-5Fdl72VNfNnofPMG/ZWO0MJ2N7Dmcn+6sOLNqw5+IF4=" }, "src/third_party/dawn/third_party/webgpu-headers/src": { "url": "https://chromium.googlesource.com/external/github.com/webgpu-native/webgpu-headers", @@ -187,13 +187,13 @@ }, "src/third_party/boringssl/src": { "url": "https://boringssl.googlesource.com/boringssl.git", - "rev": "c88440cb71fa8bd7d758f6bd4fe14541acc81bdd", - "hash": "sha256-xx3ETtXon0vNuWMDuOdZIwEOPkf9SDvqjWwAfbG8WMU=" + "rev": "2a7ca5404e136341b63a2c7608bd1f6924f09294", + "hash": "sha256-WglRBVPuUMskW0+bwV0sJiuHmXeWy1Nis0ln3KJlyKQ=" }, "src/third_party/breakpad/breakpad": { "url": "https://chromium.googlesource.com/breakpad/breakpad.git", - "rev": "bcf7b6f1596e52a8ff0bbd0c9e32a321380b3954", - "hash": "sha256-zvGySunmbqmX+0GG4fR+ZiH6P26Ez380OT7ok3hHcfo=" + "rev": "79099fdf668ae097c9eca7052fd5c4c5de6c9098", + "hash": "sha256-dtuBGcYwwaqSKiW7ASFveAeJqcdnFLeU97ip8D786/Q=" }, "src/third_party/cast_core/public/src": { "url": "https://chromium.googlesource.com/cast_core/public", @@ -202,8 +202,8 @@ }, "src/third_party/catapult": { "url": "https://chromium.googlesource.com/catapult.git", - "rev": "6a01cf2195fd7b356ee5fc505bd72d988ae873ec", - "hash": "sha256-2rcl1/Ez7G47bKn+e+eU/rBx4BxxfPnMuGgXSSmyVAc=" + "rev": "a476f554f8865b7d162ec9f1ad8aae1eab38e048", + "hash": "sha256-fdmcMUvK8h8q109tcwlOAD31lchNyTxkATfh1uRVDEA=" }, "src/third_party/ced/src": { "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git", @@ -227,8 +227,8 @@ }, "src/third_party/cpuinfo/src": { "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git", - "rev": "0fea7f5f88243ee354df0e0082b5f27d13fc9551", - "hash": "sha256-WDerJmNMy2Rjs/Xxx/quYX8Youq1BTzaDeHw/8BihrQ=" + "rev": "84818a41e074779dbb00521a4731d3e14160ff15", + "hash": "sha256-eXrfeFK0ADKAYoy/vESv7nQnH0oGpeZKlX8XEqPQspo=" }, "src/third_party/crc32c/src": { "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git", @@ -237,28 +237,28 @@ }, "src/third_party/cros_system_api": { "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git", - "rev": "3757fb80b4ba36fa44ce2d1e192d1164dc8627f2", - "hash": "sha256-F1+8NJkpuocpLIpbcHJ2cRbP0Xwpiaj430GozrMGcwM=" + "rev": "9cd08527738f3684f5f74053f4b6db6cb1a3b165", + "hash": "sha256-nmwwvdgVGzg4tiYPHYAPCdU/49Cw61+7oythtpuejHM=" }, "src/third_party/crossbench": { "url": "https://chromium.googlesource.com/crossbench.git", - "rev": "8f7c9b39f4c14b7a6a4b3b3006189bc81d9385b7", - "hash": "sha256-+1OQi7V1Z0f7J1fHkuj3Eg2DjTw8kEytm4YtEFHk4N8=" + "rev": "274eec196c5343b2059a29558396a8a54b3f0695", + "hash": "sha256-fwD0OMubN3MY1xAYrIfOSq75Os8Ct6+Ev6ld8j/tkZg=" }, "src/third_party/crossbench-web-tests": { "url": "https://chromium.googlesource.com/chromium/web-tests.git", - "rev": "3c76c8201f0732fe9781742229ab8ac43bf90cbf", - "hash": "sha256-yJmi1IpUiKhdoHAXyazkpm+Ezuc4Hp8pOIBntG5hN+U=" + "rev": "d2424bbd8125374af35f0b9fe9f70ec2e1277548", + "hash": "sha256-mowr2K6jMn5tOR1McTIYHPmL7Mhn0k4SXE+RVjTn/XU=" }, "src/third_party/depot_tools": { "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git", - "rev": "fb0b652edba70f5c4ac867f3beca9e535f905b4c", - "hash": "sha256-feguZuDeGytydebRiIK2FqxNStXFdXv191IDEuhag+o=" + "rev": "42786f6e46c25c30dd58f69283ab6fcd0c959f58", + "hash": "sha256-wI3L6w3G9QCWzvSSUXeLJFHZ+7iv01hs+ig12EXJFHk=" }, "src/third_party/devtools-frontend/src": { "url": "https://chromium.googlesource.com/devtools/devtools-frontend", - "rev": "b1eec47965f0f0bed968133496c5c097fb41cc0e", - "hash": "sha256-Ol7VWhAxk95jQE8umtvZxhJNtYIQDNj9DHSoEWs765I=" + "rev": "890a74027b0fdeaee6bbf0a0b9b108bbda7af5b9", + "hash": "sha256-k4k7r5wcgl6t13TsDTPCrYhgG44To+yvmvNsx0FPWZE=" }, "src/third_party/dom_distiller_js/dist": { "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git", @@ -272,8 +272,8 @@ }, "src/third_party/eigen3/src": { "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git", - "rev": "251bff28859af2ed2d5bdf14034175f03cafffc7", - "hash": "sha256-TPFCtsAO19suDfjJQmoJkVQllPK0Spz6ynQ/mvuDl2E=" + "rev": "afb43805349cf1cbec0083d94256bb8f72cbc53b", + "hash": "sha256-GpuSoq887Z1qGKsc4+Vz8X+Sx40P6UnWhaQgrmigkdQ=" }, "src/third_party/farmhash/src": { "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git", @@ -292,8 +292,8 @@ }, "src/third_party/ffmpeg": { "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git", - "rev": "fd8d327732d4c4a3ef831f4de49635e9528cb73e", - "hash": "sha256-yVhFttQOnuQAoOHt4crImcoFYmMvDz5b7Z6npqOKA/k=" + "rev": "ae11d2ba5c835b822a61d6a99eeb853ca30d41d8", + "hash": "sha256-j8d6N+qmBHvWiQNaXtdYRaRkEYVMAMU7J2CZVc+0hG0=" }, "src/third_party/flac": { "url": "https://chromium.googlesource.com/chromium/deps/flac.git", @@ -322,8 +322,8 @@ }, "src/third_party/freetype/src": { "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git", - "rev": "341049a95bacfc5debf6c9daf537b7acec27f3dd", - "hash": "sha256-8xzdxVv0pFCuW6tKgfsKkW1Rm5mZ1UZnB89LWiidCUU=" + "rev": "e3a0652b6d706ee1ce77d4dda606b6597dd8b5c4", + "hash": "sha256-CorCyTiS2fumIF0jhqQgw7VjGkjGXNVD8efdmfZ2wUo=" }, "src/third_party/fxdiv/src": { "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git", @@ -342,8 +342,8 @@ }, "src/third_party/ink_stroke_modeler/src": { "url": "https://chromium.googlesource.com/external/github.com/google/ink-stroke-modeler.git", - "rev": "2cd45e8683025c28fa2efcf672ad46607e8af869", - "hash": "sha256-h/xI/TPV2yiRLqrBgaDAkr8Nfg3RLkjHVuYX+nH99CQ=" + "rev": "278aacc769cd42e09e4d0cd4ac4dcff87fe32c20", + "hash": "sha256-z5heZU5X6CITxOTu92GwZjmsi30xcV93CUltCYnTL0o=" }, "src/third_party/instrumented_libs": { "url": "https://chromium.googlesource.com/chromium/third_party/instrumented_libraries.git", @@ -407,8 +407,8 @@ }, "src/third_party/fuzztest/src": { "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git", - "rev": "a72f099a943c257afe8d4d87c10a22b23e17786d", - "hash": "sha256-yanwxROo2cE8CntKWh4bcu1aNAlKVRqkowEc7nQlnYc=" + "rev": "54dfec04d5c9ad1f22b08002ab6a5e2d0de77671", + "hash": "sha256-CqJJ1hj9nQkGONB+5tJgafg1xvrPgTuE3tM8RjO2RY0=" }, "src/third_party/domato/src": { "url": "https://chromium.googlesource.com/external/github.com/googleprojectzero/domato.git", @@ -422,8 +422,8 @@ }, "src/third_party/libaom/source/libaom": { "url": "https://aomedia.googlesource.com/aom.git", - "rev": "e3d6ba6e5e9888a7ca69eb114c6eb913275f253c", - "hash": "sha256-XlTfcHKrT1kOF108WlBIIViM/5I2m1FWyaI+oSwz+aw=" + "rev": "4018d3b63456eb657475e66c352bfa86f321e0f5", + "hash": "sha256-RuCmzPIR6hW8znjQH4kQqSJmIIJWtMkUQjYEVn3B9AE=" }, "src/third_party/crabbyavif/src": { "url": "https://chromium.googlesource.com/external/github.com/webmproject/CrabbyAvif.git", @@ -442,8 +442,8 @@ }, "src/third_party/jetstream/main": { "url": "https://chromium.googlesource.com/external/github.com/WebKit/JetStream.git", - "rev": "181f3cc3eded22f2b6c0f086c334b27e91b58146", - "hash": "sha256-2raIaeYpN/2vgOjBYvw+N8vq9SZYyPwAGN6PS0PM5X0=" + "rev": "ad5e39771904b63750ae410fb00b71c9d2992b03", + "hash": "sha256-y3JKkY2tQ9rC9piFlWaUVmsSOfeWkyKFx2Qv9Lo6nrI=" }, "src/third_party/jetstream/v2.2": { "url": "https://chromium.googlesource.com/external/github.com/WebKit/JetStream.git", @@ -487,8 +487,8 @@ }, "src/third_party/libdrm/src": { "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git", - "rev": "ad78bb591d02162d3b90890aa4d0a238b2a37cde", - "hash": "sha256-woSYEDUfcEBpYOYnli13wLMt754A7KnUbmTEcFQdFGw=" + "rev": "369990d9660a387f618d0eedc341eb285016243b", + "hash": "sha256-kOaTjBeo4IsfWEk/JBTNId5ikrnpoc9DEjIl7DUd2yE=" }, "src/third_party/expat/src": { "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git", @@ -537,8 +537,8 @@ }, "src/third_party/libvpx/source/libvpx": { "url": "https://chromium.googlesource.com/webm/libvpx.git", - "rev": "d5f35ac8d93cba7f7a3f7ddb8f9dc8bd28f785e1", - "hash": "sha256-98VKR36hEmGJtI7B5u2RBoFVUINETRSVwzldVRGJge0=" + "rev": "e83e25f791932202256479052f18bdd03a091147", + "hash": "sha256-/FtYzbcOgOlaaWCoJfYns5oye7DoRZx1/xew3lN7tAM=" }, "src/third_party/libwebm/source": { "url": "https://chromium.googlesource.com/webm/libwebm.git", @@ -552,8 +552,8 @@ }, "src/third_party/libyuv": { "url": "https://chromium.googlesource.com/libyuv/libyuv.git", - "rev": "022efdb0b771f7353741dbe360b8bef4e0a874eb", - "hash": "sha256-Em/B9HMHFHGSMpvh/Nn96FCFIf9fQe0INfkzC/8o+cM=" + "rev": "917276084a49be726c90292ff0a6b0a3d571a6af", + "hash": "sha256-2lnobd22L9u+h6JGWJoWT/0gjhI5JImDsEjn+RRYzJg=" }, "src/third_party/lss": { "url": "https://chromium.googlesource.com/linux-syscall-support.git", @@ -587,8 +587,8 @@ }, "src/third_party/openscreen/src": { "url": "https://chromium.googlesource.com/openscreen", - "rev": "8fc39671507f53d4c81fee9f7880b55ce21d9b10", - "hash": "sha256-pRUcOu+HM1KUYAzcP8x8RVQevB3OWNxpjOozTQZFpvQ=" + "rev": "67cac118873cb41fd19e3fc8b1b4010b3eecf683", + "hash": "sha256-X2U179s+ZFUeazygFcCyu0/kskz0gORENXG/9NleCfQ=" }, "src/third_party/openscreen/src/buildtools": { "url": "https://chromium.googlesource.com/chromium/src/buildtools", @@ -602,13 +602,13 @@ }, "src/third_party/pdfium": { "url": "https://pdfium.googlesource.com/pdfium.git", - "rev": "004b47619573a582c076679764e07725ace3e497", - "hash": "sha256-PHu3v/ZeEa11/CTGJh8aJjV/lTIVSJ6W7uH2njsHj1w=" + "rev": "67cf48602b0c8aaa9807cd185212ee078eb30b21", + "hash": "sha256-jMoYwf63C0IHx/QcOT+LKCCYN3dJVUhC5COukkhwqx0=" }, "src/third_party/perfetto": { "url": "https://chromium.googlesource.com/external/github.com/google/perfetto.git", - "rev": "698c3b289159cf14ac110e21d5ed424c8a9f35b4", - "hash": "sha256-EV2b1B7oSUlzleQOna+e0m+i6h2dfnEqiyLrXiWZekQ=" + "rev": "436a00fb3edbec1ca5a12ea678a7ee81cf2b6f31", + "hash": "sha256-F3MmIOhwDGJnruz8nZNzbyElDZcpz6wEzLmoyehnvsU=" }, "src/third_party/protobuf-javascript/src": { "url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript", @@ -617,8 +617,8 @@ }, "src/third_party/pthreadpool/src": { "url": "https://chromium.googlesource.com/external/github.com/google/pthreadpool.git", - "rev": "d90cd6f1493e09d12c407243f7f331a8cda55efb", - "hash": "sha256-VdgC6LMzcfhH2Y65Gu+Osi6BXxIq01Fmw5AehsBlX70=" + "rev": "9003ee6c137cea3b94161bd5c614fb43be523ee1", + "hash": "sha256-Es9QNblzo5b+x4K7myQJwIiUKvqyP16QExWPhGqqDO8=" }, "src/third_party/pyelftools": { "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git", @@ -637,23 +637,23 @@ }, "src/third_party/re2/src": { "url": "https://chromium.googlesource.com/external/github.com/google/re2.git", - "rev": "e7aec5985072c1dbe735add802653ef4b36c231a", - "hash": "sha256-WOwDr0VEjvJyEmvrpw0YmlAnHJP0+0q28fUVpl4E7Eg=" + "rev": "972a15cedd008d846f1a39b2e88ce48d7f166cbd", + "hash": "sha256-oEU+dz8ax1S36+f9OysjB0GnQj8mjZx1VsZ/UgckdDI=" }, "src/third_party/ruy/src": { "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git", - "rev": "576e020f06334118994496b45f9796ed7fda3280", - "hash": "sha256-zJ7EYxIoZvN2uOfPscKzWycBO057g4bMnTys2sUrp2M=" + "rev": "de9b160a51ab3a06ce8505b96f7548fa09837a10", + "hash": "sha256-qa9x2n+2R4C9DhMY3ued4IWWY3lnE03/dZ6wYjeQsQk=" }, "src/third_party/search_engines_data/resources": { "url": "https://chromium.googlesource.com/external/search_engines_data.git", - "rev": "de5efa2da62237b03fad0775853b990f6b1ba307", - "hash": "sha256-1Usj0nS6pjFTpF1QDl+xsYsfogzUY8WK1Mto17kwzOM=" + "rev": "9be56ed146f8334c39cd70ab7434fdf726a4f4a4", + "hash": "sha256-PFALT2hhIUrDB1YS2tMq29z1xG9aXLZzJnGOk6RthxM=" }, "src/third_party/skia": { "url": "https://skia.googlesource.com/skia.git", - "rev": "fba326b8829e469ac02e5a68a0d36982ef1975bc", - "hash": "sha256-nh7zr1piXYNMyVcqswRqhepF89TF0rKASYM0QuJIof0=" + "rev": "50841da4a7b7064b3cea8a851e60ef921c87a103", + "hash": "sha256-RoLgaE5mj9UqePhnfH+BOTit04TyiAvgF7/2PLuBG4Y=" }, "src/third_party/smhasher/src": { "url": "https://chromium.googlesource.com/external/smhasher.git", @@ -672,8 +672,8 @@ }, "src/third_party/swiftshader": { "url": "https://swiftshader.googlesource.com/SwiftShader.git", - "rev": "76b5d96a9287a0ba62eaf407dc3e6bb3ba4781ca", - "hash": "sha256-JJNZvsL3UBWsWUTkZvtN5FigeztGHk71J0IkKkydaKU=" + "rev": "b7b7fd22e5f28079b92412f47f6da4df43e4cd37", + "hash": "sha256-ARFgIJvRzKWin1DJBr7xoeWCuLjuTEu/U0Fqbq8/ono=" }, "src/third_party/text-fragments-polyfill/src": { "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git", @@ -682,23 +682,23 @@ }, "src/third_party/tflite/src": { "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git", - "rev": "48401a9c25ddb7cb882074d48c79f91d1f6a89e0", - "hash": "sha256-O9ozY6eT5vMiLyt87/WP5MHtDEE338vVHUlYMakQMQU=" + "rev": "01e030d23d3b904d98cbf908da74d63b3c186949", + "hash": "sha256-pIhOSb9eLzel5oDPCpxCvI2XJ2jGLdLURCRkd1BbMkk=" }, "src/third_party/litert/src": { "url": "https://chromium.googlesource.com/external/github.com/google-ai-edge/LiteRT.git", - "rev": "ba80d53cf2e97763b48ebbd03120871b57820f99", - "hash": "sha256-RpJr48gUifdE4PxDcOYR7jh4iD5KeGK1X3Tf9Gs+/5g=" + "rev": "320c13c17b995e7ccd7b8d6560db255d2f994199", + "hash": "sha256-pttQPrsptpnLmycmburH3Zh4pvIFgRDudZa9qLC3vjc=" }, "src/third_party/vulkan-deps": { "url": "https://chromium.googlesource.com/vulkan-deps", - "rev": "6288ed7195cec9ae0fc04e2ffd81b642fa4afecf", - "hash": "sha256-fBYBYtfw8io7zghPJjBlqovNfIxKx8kt7e7OEMc1wRk=" + "rev": "2cb91a73a9fb82fb967b9432286e7882d791ae91", + "hash": "sha256-duQjSjwS8T6q+l5VEr8MT+LEQNJPROOhBt93myD+3II=" }, "src/third_party/glslang/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang", - "rev": "b937eae5e2ae1e29efe8f8775feaa434239806d2", - "hash": "sha256-PpVXGRzxmsfUpYCtqx31GPToUI64sHZNc558YGqWNjk=" + "rev": "e9c2cb495285706c6980932483e7fa9566107ac1", + "hash": "sha256-8sMsiLwOoEdgUsxwyZ6AoT7TAeC2/oApsQg8no1iNmQ=" }, "src/third_party/spirv-cross/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross", @@ -707,38 +707,38 @@ }, "src/third_party/spirv-headers/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers", - "rev": "babee77020ff82b571d723ce2c0262e2ec0ee3f1", - "hash": "sha256-GWcNNw08XoKaZs/BTW9nPAEMHL8wqbhbUm56PUtEan4=" + "rev": "f31ca173eff866369e54d35e53375fadbabd58f4", + "hash": "sha256-gND9ef2irqv3v79FSZcFElhiBC6jcKC4XSG6KP2mrFg=" }, "src/third_party/spirv-tools/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools", - "rev": "65b2ace21293057714b7fa1e87bd764d3dcef305", - "hash": "sha256-C+ftOmQgHBdDnaIvhJmsFBSxxUoGLTDKzF7ViC0mtrU=" + "rev": "f139c64525c7c449c83d299a9fda4e1657bf37ab", + "hash": "sha256-yDcOY2t8n9sUOLo03KGHN95SNfsctOfou1dJ/2R/njQ=" }, "src/third_party/vulkan-headers/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers", - "rev": "0777a3ad88bad5f4b11cfd509458bbc0ddadc773", - "hash": "sha256-F/dPxVemqinpd6P+XlEvM/B+nJtTbT3bVzyRf6pBCxg=" + "rev": "49f1a381e2aec33ef32adf4a377b5a39ec016ec4", + "hash": "sha256-K/8X9D7B0o6+osOzScplwea+OsfM3srAtDKCgfZpcJU=" }, "src/third_party/vulkan-loader/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader", - "rev": "255cef037950894f88f6e2b2f83a04c188661a95", - "hash": "sha256-Te8d4jrRZQ0EalxyIL8Rm0VcfHzPbOXwuz9yc2hkYYQ=" + "rev": "ab275e43c69f273185a72afa031c7e881b587a42", + "hash": "sha256-nQqF0ff9IoBWnrauMQ/9BoI3aWh5syyvzqTvH/3vTfw=" }, "src/third_party/vulkan-tools/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools", - "rev": "e8a4ce73f3244d814ccc84e723bb0442fab4dcf7", - "hash": "sha256-jdOQb0uJ630k4IsmJizALd20Pr2nMj1NaJDP2wr25VE=" + "rev": "39a19dccf79d28951516c3c7c9f1ee4a606fb733", + "hash": "sha256-TGgU9IIsuQKs7XKmnoOaD870aR8+txsRZu8nj//K+ks=" }, "src/third_party/vulkan-utility-libraries/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries", - "rev": "b4e9ebbfc779cba85f1efbe2f69fdfc5744ed5e5", - "hash": "sha256-aWbgeG7X498ctWCzzGw3HHQvkKjS6TxAooQVt+MpU1Y=" + "rev": "50af38b6cd43afb1462f9ad26b8d015382d11a3d", + "hash": "sha256-4i9+7BXmJHkDRzUE+gbwCNBcW2h0xDP7hcHH/DH2QZg=" }, "src/third_party/vulkan-validation-layers/src": { "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers", - "rev": "50d1012d9ce7f7b7d6c801f01e55e0373b1401bc", - "hash": "sha256-4S0AK6URyRzOGphrkoaClXda+WB9AsJD1ZVKXBHK53g=" + "rev": "cee14167434e805deb7010e1bbc1866a5f013d58", + "hash": "sha256-rCBqqcjGNjD8vIN/WSkxVLRRTxHnH+cAZTr87tuG2uU=" }, "src/third_party/vulkan_memory_allocator": { "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git", @@ -777,18 +777,18 @@ }, "src/third_party/webgpu-cts/src": { "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git", - "rev": "cf6c5cd8e96d97754daa78b9e63976f8f9d84624", - "hash": "sha256-kP/sWmijWt+fDEHdN6CuXBu5qGYV7nGW4gvU2nS4M8Y=" + "rev": "eb9091d141e126fd9479a62aeceb927b73b6af47", + "hash": "sha256-BJuBJGsP+rEzLDREo8pARqyX/DOQS9BcZ4KWnris/EM=" }, "src/third_party/webpagereplay": { "url": "https://chromium.googlesource.com/webpagereplay.git", - "rev": "2bfcbbe006bc877b35fe6bf5eb2fea96a0b0e33f", - "hash": "sha256-AzohiIs4Nu9rcxYJ+l+lnScgGU6xQ7HGE5lT6v8tv1E=" + "rev": "50c853586c642039992d9b0215f87072a0967bd8", + "hash": "sha256-yR5+CafUHiJAZC7940dBboOrUPoAId8FjcxB1nwPbHw=" }, "src/third_party/webrtc": { "url": "https://webrtc.googlesource.com/src.git", - "rev": "b47e68e6966d5a5a0e4bc861ff364221600f31c3", - "hash": "sha256-3pm524E7V9sOza8yOFEzIHUclJoY8ONhO3nTNVwrxUc=" + "rev": "d1972add2a63b2a528a6471d447f82e0010b5215", + "hash": "sha256-evtOzxwWgKUaJl9zwpQDqPp1wM7w3DzjRcLg29z9ELQ=" }, "src/third_party/wuffs/src": { "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git", @@ -797,8 +797,8 @@ }, "src/third_party/weston/src": { "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git", - "rev": "bdba2f9adaca673fd58339d8140bc04727ee279d", - "hash": "sha256-o49a3sp+D9FycxeB+uMcKouVvlKWoWpfws7FLEGJ/V8=" + "rev": "b65be9e699847c975440108a42f05412cc7fddac", + "hash": "sha256-PySen9syu0OshtlHAZw666FeSQXdnsV8nlW9RmxgapM=" }, "src/third_party/xdg-utils": { "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git", @@ -807,18 +807,18 @@ }, "src/third_party/xnnpack/src": { "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git", - "rev": "4574c4d9b00703c15f2218634ddf101597b22b18", - "hash": "sha256-OdrwYAazY0E3han/fpFjlAiguY4M/xnCMJjL3KAIhvw=" + "rev": "1154ae8178f0efc634cd1e8a681646dc22973255", + "hash": "sha256-chWb8gVyjdjJaXIbJzPLH9Bt9P7qkUNk4f0EeFePlSo=" }, "src/third_party/zstd/src": { "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git", - "rev": "ae9f20ca2716f2605822ca375995b7d876389b64", - "hash": "sha256-W39zzEag5ZdtQmFOeof3ROaonMoDhJWbGA/W8eDTPPc=" + "rev": "1168da0e567960d50cba1b58c9b0ba047ece4733", + "hash": "sha256-T2CwRpL/XT/OsBrRfxC8kNIm43U4qPMBju8Ug13Qebo=" }, "src/v8": { "url": "https://chromium.googlesource.com/v8/v8.git", - "rev": "1e1e0c88c55414e3ab7f98629a0233d3dc77fca0", - "hash": "sha256-iIrMXGer1CBX4MxOi56fKdzohiyv4bGKKnKOE3GZC1Y=" + "rev": "bc343986bd4cb17e49ef15b70c4bdac710e27167", + "hash": "sha256-dsjddO/LCNAYLJ1XyDkJLJ9TToiy7pENlBryF1VcmtY=" } } }, From 9b846c35633678211f0aea7c4fe0bfa87c938d8c Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 29 Jan 2026 20:15:25 +0700 Subject: [PATCH 48/86] inventree: 1.1.10 --- nixos/modules/services/misc/inventree.nix | 21 +++++---------------- pkgs/by-name/in/inventree/package.nix | 12 ++++++++---- pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 13 insertions(+), 22 deletions(-) diff --git a/nixos/modules/services/misc/inventree.nix b/nixos/modules/services/misc/inventree.nix index b5e5ecec9210..15476e20b167 100644 --- a/nixos/modules/services/misc/inventree.nix +++ b/nixos/modules/services/misc/inventree.nix @@ -35,6 +35,7 @@ let in { + meta.buildDocsInSandbox = false; meta.maintainers = with lib.maintainers; [ kurogeek ]; @@ -65,6 +66,7 @@ in secretKeyFile = mkOption { type = types.path; default = "${cfg.dataDir}/secret_key.txt"; + defaultText = lib.literalExpression ''"''${cfg.dataDir}/secret_key.txt"''; example = "/run/keys/inventree-secret-key"; description = '' Path to a file containing the secret key @@ -113,7 +115,6 @@ in dbuser = mkOption { type = types.str; default = "inventree"; - defaultText = lib.literalExpression "inventree"; description = "Database username."; }; passwordFile = mkOption { @@ -122,7 +123,7 @@ in example = "/run/keys/inventree-dbpassword"; description = '' A file containing the password corresponding to - . + . ''; }; createLocally = mkOption { @@ -136,7 +137,7 @@ in type = types.str; default = "localhost"; example = "inventree.example.com"; - description = mdDoc '' + description = '' The INVENTREE_SITE_URL option defines the base URL for the InvenTree server. This is a critical setting, and it is required for correct operation of the server. If not specified, the @@ -175,19 +176,7 @@ in str ]) ); - default = { - INVENTREE_CONFIG_FILE = lib.mkDefault "${cfg.dataDir}/config/config.yaml"; - INVENTREE_OIDC_PRIVATE_KEY_FILE = lib.mkDefault "${cfg.dataDir}/config/oidc_private_key.txt"; - INVENTREE_STATIC_ROOT = lib.mkDefault "${cfg.dataDir}/data/static_root"; - INVENTREE_MEDIA_ROOT = lib.mkDefault "${cfg.dataDir}/data/media"; - INVENTREE_BACKUP_DIR = lib.mkDefault "${cfg.dataDir}/data/backups"; - INVENTREE_SITE_URL = lib.mkDefault "http://${cfg.domain}"; - INVENTREE_PLUGIN_FILE = lib.mkDefault "${cfg.dataDir}/data/plugins/plugins.txt"; - INVENTREE_PLUGIN_DIR = lib.mkDefault "${cfg.dataDir}/data/plugins"; - INVENTREE_ADMIN_PASSWORD_FILE = lib.mkDefault cfg.adminPasswordFile; - INVENTREE_SECRET_KEY_FILE = lib.mkDefault cfg.secretKeyFile; - INVENTREE_AUTO_UPDATE = lib.mkDefault "false"; - }; + default = { }; description = '' InvenTree config options. diff --git a/pkgs/by-name/in/inventree/package.nix b/pkgs/by-name/in/inventree/package.nix index 109b4ad7550b..81b09762966a 100644 --- a/pkgs/by-name/in/inventree/package.nix +++ b/pkgs/by-name/in/inventree/package.nix @@ -17,12 +17,12 @@ let }; }; - version = "0.18.0"; + version = "1.1.10"; src = fetchFromGitHub { owner = "inventree"; repo = "inventree"; - rev = "d6c722041987d13a4e596711aafa0f30cde3f9a0"; - hash = "sha256-BnRE6BM6/LHUtP3H0L8qh3LAxFphNlpll+r1oH4sGuQ="; + tag = "${version}"; + hash = "sha256-TPB/3pFIU+ui4c+CbqIKTyAfJ/Xepm/RIhZeYhTrgI4="; }; frontend = @@ -38,7 +38,7 @@ let yarnOfflineCache = fetchYarnDeps { yarnLock = finalAttrs.src + "/yarn.lock"; - hash = "sha256-wXIVtW1dMxhyuZ1LmuYZ2IwUbRZwbYmdRkiribMbK20="; + hash = "sha256-Ijbkx+INZgsvMhkzo8h/FUY75W3UHnKAdUjQRD8kJZw="; }; nativeBuildInputs = [ @@ -93,6 +93,7 @@ python3.pkgs.buildPythonApplication rec { django-sql-utils django-sslserver django-stdimage + django-storages django-structlog django-taggit django-oauth-toolkit @@ -131,6 +132,7 @@ python3.pkgs.buildPythonApplication rec { ppf-datamatrix psycopg2 mysqlclient + requests-mock opentelemetry-api opentelemetry-sdk @@ -185,6 +187,8 @@ python3.pkgs.buildPythonApplication rec { "test_package_loading" "test_export" "test_users_exist" + "test_import_part" + "test_model_names" ]; skippedFuncScripts = builtins.map (funcName: '' grep -rlZ ${funcName} . | while IFS= read -r -d "" file; do diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dcab0bf56907..a74ca9d7fd5c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12517,6 +12517,4 @@ with pkgs; gpac-unstable = callPackage ../by-name/gp/gpac/package.nix { releaseChannel = "unstable"; }; - - inventree = callPackage ../by-name/in/inventree/package.nix { }; } From b505ce0af407ed582f6fc46cae07b4e05b230dcd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 04:20:38 +0000 Subject: [PATCH 49/86] terraform-providers.digitalocean_digitalocean: 2.78.0 -> 2.79.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 cb398f35984e..14ee1e9f6d14 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -310,11 +310,11 @@ "vendorHash": null }, "digitalocean_digitalocean": { - "hash": "sha256-lXPCwwGlGgddoCxTS5IgcZe26uSluNk+PZjopDY1jbc=", + "hash": "sha256-CNHGuChMDqSFz8YXETfQzgyQw8p8Ua6u3gevFFr69RI=", "homepage": "https://registry.terraform.io/providers/digitalocean/digitalocean", "owner": "digitalocean", "repo": "terraform-provider-digitalocean", - "rev": "v2.78.0", + "rev": "v2.79.0", "spdx": "MPL-2.0", "vendorHash": null }, From a186cd91b54a718ce03b0aad3463c372ba20e513 Mon Sep 17 00:00:00 2001 From: RoGreat Date: Tue, 10 Mar 2026 23:33:54 -0500 Subject: [PATCH 50/86] buildHomeAssistantComponent: fix ignoreVersionRequirement --- .../manifest-requirements-check-hook.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/home-assistant/build-custom-component/manifest-requirements-check-hook.sh b/pkgs/servers/home-assistant/build-custom-component/manifest-requirements-check-hook.sh index 3a96d75e2915..7bbf18628095 100644 --- a/pkgs/servers/home-assistant/build-custom-component/manifest-requirements-check-hook.sh +++ b/pkgs/servers/home-assistant/build-custom-component/manifest-requirements-check-hook.sh @@ -7,9 +7,12 @@ function manifestCheckPhase() { echo "Executing manifestCheckPhase" runHook preCheck + local -a ignoreVersionRequirementArray + concatTo ignoreVersionRequirementArray ignoreVersionRequirement + args="" # shellcheck disable=SC2154 - for package in "${ignoreVersionRequirement[@]}"; do + for package in "${ignoreVersionRequirementArray[@]}"; do args+=" --ignore-version-requirement ${package}" done From 6383409e23e8980b754b49507c12823e9de66d34 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 06:41:45 +0000 Subject: [PATCH 51/86] dnsproxy: 0.79.0 -> 0.80.0 --- pkgs/by-name/dn/dnsproxy/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/dn/dnsproxy/package.nix b/pkgs/by-name/dn/dnsproxy/package.nix index e333954dd742..67503bf30554 100644 --- a/pkgs/by-name/dn/dnsproxy/package.nix +++ b/pkgs/by-name/dn/dnsproxy/package.nix @@ -6,13 +6,13 @@ buildGoModule (finalAttrs: { pname = "dnsproxy"; - version = "0.79.0"; + version = "0.80.0"; src = fetchFromGitHub { owner = "AdguardTeam"; repo = "dnsproxy"; tag = "v${finalAttrs.version}"; - hash = "sha256-R/TBsge+Jd11EvDEx3B9FD/bHdi2BQZTpXLNlvEyERk="; + hash = "sha256-acgNACztAOudrtzh1MeSzJza+lH9V8s5AmHkyETpy0E="; }; vendorHash = "sha256-NS7MsK7QXg8tcAytYd9FGvaYZcReYkO5ESPpLbzL0IQ="; From c46d21e098ba70b55e049bb360c667cb67e50543 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 06:58:08 +0000 Subject: [PATCH 52/86] terraform-providers.hashicorp_awscc: 1.73.0 -> 1.74.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 cb398f35984e..abebfea5bf07 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -508,13 +508,13 @@ "vendorHash": "sha256-LAte9NffWqGiIimDRyuQCfOoTpThWWHjFc72HhssDC0=" }, "hashicorp_awscc": { - "hash": "sha256-nyHKE0bpu7vbOE8uDwqaFjeAdXeMf324FjPb6stRiFU=", + "hash": "sha256-DXjGZCaDFLnp2cNoexi3eL3c13PYe4uiUNr4wxwG+GY=", "homepage": "https://registry.terraform.io/providers/hashicorp/awscc", "owner": "hashicorp", "repo": "terraform-provider-awscc", - "rev": "v1.73.0", + "rev": "v1.74.0", "spdx": "MPL-2.0", - "vendorHash": "sha256-NKuuX63rVjUk/+cqR4o/nWIsyNS2uUrAu/9fG3aWBwc=" + "vendorHash": "sha256-/lITCpxw41IbRbyBj0OaeAo5Ldb2I6j2MUlaZ9OcG0U=" }, "hashicorp_azuread": { "hash": "sha256-BkQwLkGu8Xmb4laoXOLDbSPyya5v8HBBNIya5hUBlV8=", From ef98f25ba1acdf9acd432ba8b0ed531bd5e8ba1a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 07:32:56 +0000 Subject: [PATCH 53/86] acli: 1.3.13-stable -> 1.3.14-stable --- pkgs/by-name/ac/acli/sources.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/ac/acli/sources.json b/pkgs/by-name/ac/acli/sources.json index 251b88aa5dc8..462c923392b7 100644 --- a/pkgs/by-name/ac/acli/sources.json +++ b/pkgs/by-name/ac/acli/sources.json @@ -1,21 +1,21 @@ { - "version": "1.3.13-stable", + "version": "1.3.14-stable", "sources": { "aarch64-darwin": { - "url": "https://acli.atlassian.com/darwin/1.3.13-stable/acli_1.3.13-stable_darwin_arm64.tar.gz", - "sha256": "043c5422327610e82fd83ac79ca3ddf0c917611386f7527564db4c8bc99388b1" + "url": "https://acli.atlassian.com/darwin/1.3.14-stable/acli_1.3.14-stable_darwin_arm64.tar.gz", + "sha256": "1400b04908d4b099783dba261ba79ab6e09da67cf78d2ca35fb2456e99211634" }, "aarch64-linux": { - "url": "https://acli.atlassian.com/linux/1.3.13-stable/acli_1.3.13-stable_linux_arm64.tar.gz", - "sha256": "522da066d9a4bc357eaf8fcca763a0be3048fd0e5595aa433d6904065472dd56" + "url": "https://acli.atlassian.com/linux/1.3.14-stable/acli_1.3.14-stable_linux_arm64.tar.gz", + "sha256": "b8742f5c3d4f5e1d5f531c1e50bcc775f272b2909e481c43ddd615808c77f156" }, "x86_64-darwin": { - "url": "https://acli.atlassian.com/darwin/1.3.13-stable/acli_1.3.13-stable_darwin_amd64.tar.gz", - "sha256": "8cd7231e951222c0b75728359844a9c76238dcad31542d66226f08498b1da9aa" + "url": "https://acli.atlassian.com/darwin/1.3.14-stable/acli_1.3.14-stable_darwin_amd64.tar.gz", + "sha256": "0c66ff14f0db7a27a1d7e70ff03b8cbfde9bc019450539c0f6707de2dc908dd9" }, "x86_64-linux": { - "url": "https://acli.atlassian.com/linux/1.3.13-stable/acli_1.3.13-stable_linux_amd64.tar.gz", - "sha256": "1873a8b53123aec8a9c015707c89a49f7dbd8ac995113146841f29ea06259f9a" + "url": "https://acli.atlassian.com/linux/1.3.14-stable/acli_1.3.14-stable_linux_amd64.tar.gz", + "sha256": "2c76293e9ba9ce6a233756b13e9c3eea1fc3fce992fc0ccefe8c32f6dbf36f29" } } } From 099aa579cfe4420f0c28c9e20a1b2e9cc122c888 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 08:18:35 +0000 Subject: [PATCH 54/86] terraform-providers.grafana_grafana: 4.26.0 -> 4.27.1 --- .../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 cb398f35984e..04689ccc1312 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -472,13 +472,13 @@ "vendorHash": "sha256-mzDFyk2oImRXt72kFV5Ln++ScgoecpJEJtzUKjvCaws=" }, "grafana_grafana": { - "hash": "sha256-ski6B1mZCILcMM6JBWHx0IelYmx0UdDwPYi13PSgIAo=", + "hash": "sha256-ifE5W6sUo/BTxO+noss+nqw+LDPlkxdpySlJ08n7Kd4=", "homepage": "https://registry.terraform.io/providers/grafana/grafana", "owner": "grafana", "repo": "terraform-provider-grafana", - "rev": "v4.26.0", + "rev": "v4.27.1", "spdx": "MPL-2.0", - "vendorHash": "sha256-64XspOrtBa97fj9DXUQb6siecDfBQETqKvfwckjzU3c=" + "vendorHash": "sha256-OCdknvuL/+khhFdopVLKEYKBwLbyPnziKamHDUEX+Zk=" }, "gridscale_gridscale": { "hash": "sha256-FAKvQ/MEod5Ck0PG4ffQ+gQp6zZ0JDRXPOrOiDpWMls=", From 8b38a6956f812ad8e790d78a92beee2792e7decb Mon Sep 17 00:00:00 2001 From: "Can H. Tartanoglu" Date: Mon, 9 Mar 2026 12:52:57 +0100 Subject: [PATCH 55/86] python3Packages.{torch,torchaudio}: DRY shared ROCm infrastructure Expose `rocmtoolkit_joined` and `gpuTargetString` via torch's passthru; use them in torchaudio instead of duplicated local definitions. --- .../python-modules/torch/source/default.nix | 2 + .../python-modules/torchaudio/default.nix | 62 ++----------------- 2 files changed, 6 insertions(+), 58 deletions(-) diff --git a/pkgs/development/python-modules/torch/source/default.nix b/pkgs/development/python-modules/torch/source/default.nix index f16d1cb2cc82..75b4719302a1 100644 --- a/pkgs/development/python-modules/torch/source/default.nix +++ b/pkgs/development/python-modules/torch/source/default.nix @@ -746,6 +746,8 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: { rocmSupport rocmPackages unroll-src + gpuTargetString + rocmtoolkit_joined ; cudaCapabilities = if cudaSupport then supportedCudaCapabilities else [ ]; # At least for 1.10.2 `torch.fft` is unavailable unless BLAS provider is MKL. This attribute allows for easy detection of its availability. diff --git a/pkgs/development/python-modules/torchaudio/default.nix b/pkgs/development/python-modules/torchaudio/default.nix index 0245755df3e6..3defcf6014cd 100644 --- a/pkgs/development/python-modules/torchaudio/default.nix +++ b/pkgs/development/python-modules/torchaudio/default.nix @@ -1,6 +1,5 @@ { lib, - symlinkJoin, buildPythonPackage, fetchFromGitHub, @@ -19,62 +18,9 @@ cudaPackages, rocmSupport ? torch.rocmSupport, rocmPackages, - - gpuTargets ? [ ], }: -let - # TODO: Reuse one defined in torch? - # Some of those dependencies are probably not required, - # but it breaks when the store path is different between torch and torchaudio - rocmtoolkit_joined = symlinkJoin { - name = "rocm-merged"; - - paths = with rocmPackages; [ - rocm-core - clr - rccl - miopen - rocrand - rocblas - rocsparse - hipsparse - rocthrust - rocprim - hipcub - roctracer - rocfft - rocsolver - hipfft - hipsolver - hipblas-common - hipblas - rocminfo - rocm-comgr - rocm-device-libs - rocm-runtime - clr.icd - hipify - ]; - - # Fix `setuptools` not being found - postBuild = '' - rm -rf $out/nix-support - ''; - }; - # Only used for ROCm - gpuTargetString = lib.strings.concatStringsSep ";" ( - if gpuTargets != [ ] then - # If gpuTargets is specified, it always takes priority. - gpuTargets - else if rocmSupport then - rocmPackages.clr.gpuTargets - else - throw "No GPU targets specified" - ); - stdenv = torch.stdenv; -in -buildPythonPackage.override { inherit stdenv; } (finalAttrs: { +buildPythonPackage.override { stdenv = torch.stdenv; } (finalAttrs: { pname = "torchaudio"; version = "2.10.0"; pyproject = true; @@ -124,13 +70,13 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: { sox torch.cxxdev ] - ++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ]; + ++ lib.optionals torch.stdenv.cc.isClang [ llvmPackages.openmp ]; dependencies = [ torch ]; preConfigure = lib.optionalString rocmSupport '' - export ROCM_PATH=${rocmtoolkit_joined} - export PYTORCH_ROCM_ARCH="${gpuTargetString}" + export ROCM_PATH=${torch.rocmtoolkit_joined} + export PYTORCH_ROCM_ARCH="${torch.gpuTargetString}" ''; dontUseCmakeConfigure = true; From d6d107c79080b3b6cd576347612485309e3b6607 Mon Sep 17 00:00:00 2001 From: "Can H. Tartanoglu" Date: Tue, 10 Mar 2026 09:39:09 +0100 Subject: [PATCH 56/86] python3Packages.torchaudio: add caniko as maintainer --- pkgs/development/python-modules/torchaudio/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/torchaudio/default.nix b/pkgs/development/python-modules/torchaudio/default.nix index 3defcf6014cd..aa0235b46c4f 100644 --- a/pkgs/development/python-modules/torchaudio/default.nix +++ b/pkgs/development/python-modules/torchaudio/default.nix @@ -94,6 +94,7 @@ buildPythonPackage.override { stdenv = torch.stdenv; } (finalAttrs: { lib.platforms.linux ++ lib.optionals (!cudaSupport && !rocmSupport) lib.platforms.darwin; maintainers = with lib.maintainers; [ GaetanLepage + caniko junjihashimoto ]; }; From 8e4abd737e47057e280ea76d4bfc2aa62e1dd1cd Mon Sep 17 00:00:00 2001 From: "Can H. Tartanoglu" Date: Tue, 10 Mar 2026 09:41:18 +0100 Subject: [PATCH 57/86] python3Packages.torch: add caniko as maintainer --- pkgs/development/python-modules/torch/source/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/torch/source/default.nix b/pkgs/development/python-modules/torch/source/default.nix index 75b4719302a1..ed985066ba62 100644 --- a/pkgs/development/python-modules/torch/source/default.nix +++ b/pkgs/development/python-modules/torch/source/default.nix @@ -764,6 +764,7 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: { homepage = "https://pytorch.org/"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ + caniko GaetanLepage LunNova # esp. for ROCm teh From d380a147a6726101fb40ae1ba4d8e2769226c1bf Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 08:55:36 +0000 Subject: [PATCH 58/86] buildstream: 2.6.0 -> 2.7.0 --- pkgs/by-name/bu/buildstream/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/bu/buildstream/package.nix b/pkgs/by-name/bu/buildstream/package.nix index 134d77e4c660..55fe57411dfd 100644 --- a/pkgs/by-name/bu/buildstream/package.nix +++ b/pkgs/by-name/bu/buildstream/package.nix @@ -24,14 +24,14 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "buildstream"; - version = "2.6.0"; + version = "2.7.0"; pyproject = true; src = fetchFromGitHub { owner = "apache"; repo = "buildstream"; tag = finalAttrs.version; - hash = "sha256-2Z+s0dQB85MBO06llhIEO3jwWfL53n74S28ENHcbe/Q="; + hash = "sha256-eHZmimuwOo3ZHZw5QF94B6wkso1+QbZIcgpDgsw1hiM="; }; build-system = with python3Packages; [ From 226f5940d016eff91d9f300aca67863d9addabd5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 09:07:55 +0000 Subject: [PATCH 59/86] _1password-gui: 8.12.5 -> 8.12.6 --- pkgs/by-name/_1/_1password-gui/sources.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/_1/_1password-gui/sources.json b/pkgs/by-name/_1/_1password-gui/sources.json index 0ae0524731ed..71ad2494231e 100644 --- a/pkgs/by-name/_1/_1password-gui/sources.json +++ b/pkgs/by-name/_1/_1password-gui/sources.json @@ -1,28 +1,28 @@ { "stable": { "linux": { - "version": "8.12.5", + "version": "8.12.6", "sources": { "x86_64": { - "url": "https://downloads.1password.com/linux/tar/stable/x86_64/1password-8.12.5.x64.tar.gz", - "hash": "sha256-oa94KXgl4R/HElxSs8CLI5mvpT/4AYHfvODkGr3itJU=" + "url": "https://downloads.1password.com/linux/tar/stable/x86_64/1password-8.12.6.x64.tar.gz", + "hash": "sha256-OLAPOgt5xgHudTUbu+XjpiN1lACWHZ86rYPZeX2idaw=" }, "aarch64": { - "url": "https://downloads.1password.com/linux/tar/stable/aarch64/1password-8.12.5.arm64.tar.gz", - "hash": "sha256-/y8pU8iXLgKGq2tcIMIiRnO4hiXR6rTPp8jTI43St5g=" + "url": "https://downloads.1password.com/linux/tar/stable/aarch64/1password-8.12.6.arm64.tar.gz", + "hash": "sha256-dhSn/wPzny7eO2/5huEqBfus/TIkVAei7eqJVY0HdPI=" } } }, "darwin": { - "version": "8.12.5", + "version": "8.12.6", "sources": { "x86_64": { - "url": "https://downloads.1password.com/mac/1Password-8.12.5-x86_64.zip", - "hash": "sha256-jAaCSPpm3T7uC6y0A5BF821Q050f/P00kWlvYa0Hn5s=" + "url": "https://downloads.1password.com/mac/1Password-8.12.6-x86_64.zip", + "hash": "sha256-fL0KXi4+4fZfLX0sChWz7T//AdW9SCQF3mZvd92brIE=" }, "aarch64": { - "url": "https://downloads.1password.com/mac/1Password-8.12.5-aarch64.zip", - "hash": "sha256-G4IOVxfaEyzhe74e/IbNt2TSPAgNcF1wri/Pbi4Xr7I=" + "url": "https://downloads.1password.com/mac/1Password-8.12.6-aarch64.zip", + "hash": "sha256-1N5bKMFSuyZ5KHXhmLevewsCLZvjunWTObBw5QMfbcY=" } } } From 0d61b7fbc837c38f0612826cf5fed988578be3ab Mon Sep 17 00:00:00 2001 From: bas Date: Wed, 11 Mar 2026 10:19:36 +0100 Subject: [PATCH 60/86] nemorosa: 0.4.1 -> 0.4.3 --- pkgs/by-name/ne/nemorosa/package.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ne/nemorosa/package.nix b/pkgs/by-name/ne/nemorosa/package.nix index 2e86c2076505..821853c9b45f 100644 --- a/pkgs/by-name/ne/nemorosa/package.nix +++ b/pkgs/by-name/ne/nemorosa/package.nix @@ -6,14 +6,14 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "nemorosa"; - version = "0.4.1"; + version = "0.4.3"; pyproject = true; src = fetchFromGitHub { owner = "KyokoMiki"; repo = "nemorosa"; tag = finalAttrs.version; - hash = "sha256-AqFjpEakEZ21iXmIIxhX+ez2aI/RMsLaUoECipQcaM4="; + hash = "sha256-1mP+sdAScXAFp4wjPiSCez6BvzCDgOt/MtGWQv0PD0E="; }; # Upstream uses overly strict, fresh version specifiers @@ -29,24 +29,29 @@ python3Packages.buildPythonApplication (finalAttrs: { dependencies = with python3Packages; [ + aiohttp aiolimiter + anyio + apprise apscheduler + asyncer beautifulsoup4 defusedxml deluge-client fastapi - httpx humanfriendly msgspec platformdirs qbittorrent-api reflink-copy sqlalchemy + tenacity torf transmission-rpc uvicorn uvloop ] + ++ aiohttp.optional-dependencies.speedups ++ beautifulsoup4.optional-dependencies.lxml ++ msgspec.optional-dependencies.yaml ++ sqlalchemy.optional-dependencies.aiosqlite From c32c200aa720a3563f33b6f163afb2c45743e585 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 09:20:03 +0000 Subject: [PATCH 61/86] codebook: 0.3.31 -> 0.3.32 --- pkgs/by-name/co/codebook/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/co/codebook/package.nix b/pkgs/by-name/co/codebook/package.nix index c9a6312c1f5f..53ca36de1b89 100644 --- a/pkgs/by-name/co/codebook/package.nix +++ b/pkgs/by-name/co/codebook/package.nix @@ -8,17 +8,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "codebook"; - version = "0.3.31"; + version = "0.3.32"; src = fetchFromGitHub { owner = "blopker"; repo = "codebook"; tag = "v${finalAttrs.version}"; - hash = "sha256-pe+u4scmoVgKJupqXejwq1mDpaq5QrTozVcbGfUkXJk="; + hash = "sha256-UkE1ND1ditGIlplHG6EslK2uDvRWz7jmn2UmUhlYbdE="; }; buildAndTestSubdir = "crates/codebook-lsp"; - cargoHash = "sha256-T6MCQZ8mWMMsI7+LoHTHZZyMaEq8taME3vWtrfKlzAY="; + cargoHash = "sha256-27+9vjTHBxJ3WM2e3xmTO2CmJvsmqN4nhqD0Sf0YtEw="; env = { CARGO_PROFILE_RELEASE_LTO = "fat"; From 6e30bbb59fb7d1bfc4a8f86a28e5a796d482c325 Mon Sep 17 00:00:00 2001 From: liberodark Date: Mon, 2 Mar 2026 14:28:25 +0100 Subject: [PATCH 62/86] seaweedfs: 4.12 -> 4.16 --- pkgs/by-name/se/seaweedfs/package.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/se/seaweedfs/package.nix b/pkgs/by-name/se/seaweedfs/package.nix index b080ce99fb39..6527f487b69a 100644 --- a/pkgs/by-name/se/seaweedfs/package.nix +++ b/pkgs/by-name/se/seaweedfs/package.nix @@ -11,23 +11,22 @@ buildGoModule (finalAttrs: { pname = "seaweedfs"; - version = "4.12"; + version = "4.16"; src = fetchFromGitHub { owner = "seaweedfs"; repo = "seaweedfs"; tag = finalAttrs.version; - hash = "sha256-AiNtGepaNZ/1cGWp3SFQ7l4+mjpag9MNZb2IXKar9Qo="; + hash = "sha256-BRdI/50YxwdCdBj91w6OPgTcOb7JkshkVSD8b8bHcYA="; }; - vendorHash = "sha256-P2wbXslmHF2dwNoXemuOscKUHrPrypRR+Ehv89tlVUM="; + vendorHash = "sha256-XbfKYftKfbJDkbp9DwVAs56w5lMvqdlW5cwhhivniBM="; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libredirect.hook ]; subPackages = [ "weed" ]; ldflags = [ - "-w" "-s" "-X github.com/seaweedfs/seaweedfs/weed/util.COMMIT=N/A" ]; @@ -48,7 +47,7 @@ buildGoModule (finalAttrs: { # Test all targets. unset subPackages # Remove unmaintained tests and those that require additional services. - rm -rf unmaintained test/s3 test/fuse_integration test/kafka test/sftp + rm -rf unmaintained test/s3 test/fuse_integration test/kafka test/sftp test/tus test/volume_server # TestECEncodingVolumeLocationTimingBug, TestECEncodingMasterTimingRaceCondition: weed binary not found export PATH=$PATH:$NIX_BUILD_TOP/go/bin '' From cab53f2f8adb61a352ffdae35e70c9117f767d0e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 10:19:06 +0000 Subject: [PATCH 63/86] remnote: 1.23.10 -> 1.24.0 --- pkgs/by-name/re/remnote/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/re/remnote/package.nix b/pkgs/by-name/re/remnote/package.nix index 55b4b322f336..2dad794d5ad4 100644 --- a/pkgs/by-name/re/remnote/package.nix +++ b/pkgs/by-name/re/remnote/package.nix @@ -6,10 +6,10 @@ }: let pname = "remnote"; - version = "1.23.10"; + version = "1.24.0"; src = fetchurl { url = "https://download2.remnote.io/remnote-desktop2/RemNote-${version}.AppImage"; - hash = "sha256-EOmsV9tsp3fKH6Ktwx3O/Mk5XBq4byY19cCA7/JOWj8="; + hash = "sha256-OV8o2AOoDXdz02tXbtelcIOVOT3PIiBYJf38mRuvWdM="; }; appimageContents = appimageTools.extractType2 { inherit pname version src; }; in From 6ab55f6fdb140dba85c0c5c1c8b3b52c0046efb9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 10:26:09 +0000 Subject: [PATCH 64/86] terraform-providers.auth0_auth0: 1.40.0 -> 1.41.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 cb398f35984e..82dfcb4ed872 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -73,13 +73,13 @@ "vendorHash": "sha256-CO09y7rdbY27VFX85pV2ocnO0rvhGJg3hXfLWaF+HTI=" }, "auth0_auth0": { - "hash": "sha256-7xAQGsDkw0JYP1Q+cEMHezNmQzccRyiwtUXKgJfnI6k=", + "hash": "sha256-JQC8532P5+PXCzqzxl9YUjhuEbd07WzJv7tfhJWyk3c=", "homepage": "https://registry.terraform.io/providers/auth0/auth0", "owner": "auth0", "repo": "terraform-provider-auth0", - "rev": "v1.40.0", + "rev": "v1.41.0", "spdx": "MPL-2.0", - "vendorHash": "sha256-57To9XMBDp6VQKXEU7TzkRHebCUUzlHWHV8+QU9PoI8=" + "vendorHash": "sha256-JPgRr5DcAOkzUy24aUAjqhW6VhpITKxDA+55dNKrGu4=" }, "aviatrixsystems_aviatrix": { "hash": "sha256-46djOfAj/5kfeoKLQHbeKefzdGbmlBATR+uN/IaAn8I=", From ad0e41a014a6b19e83afa1ba85f8a58ffd8e2aaa Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 10:59:17 +0000 Subject: [PATCH 65/86] zettlr: 4.2.0 -> 4.2.1 --- pkgs/by-name/ze/zettlr/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ze/zettlr/package.nix b/pkgs/by-name/ze/zettlr/package.nix index 1d63c7e4f438..b5cc73403da5 100644 --- a/pkgs/by-name/ze/zettlr/package.nix +++ b/pkgs/by-name/ze/zettlr/package.nix @@ -9,11 +9,11 @@ # Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs. let pname = "zettlr"; - version = "4.2.0"; + version = "4.2.1"; src = fetchurl { url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage"; - hash = "sha256-csGQcOhV/NaFgAqfH2ZFP7ZOYIHKBnvscZ4Sy6GJuvc="; + hash = "sha256-/gRAfZhnYeHrZvpB/7bDuOxuwOphFLJOmn+HRBf0arQ="; }; appimageContents = appimageTools.extractType2 { inherit pname version src; From 1529ead684f0f5755b553a77a03c2cb18bc9258b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 11:16:28 +0000 Subject: [PATCH 66/86] xremap: 0.14.17 -> 0.14.18 --- pkgs/by-name/xr/xremap/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/xr/xremap/package.nix b/pkgs/by-name/xr/xremap/package.nix index 54933655472f..2f09df50a061 100644 --- a/pkgs/by-name/xr/xremap/package.nix +++ b/pkgs/by-name/xr/xremap/package.nix @@ -43,13 +43,13 @@ assert ( ); rustPlatform.buildRustPackage (finalAttrs: { pname = "xremap${variant.suffix or ""}"; - version = "0.14.17"; + version = "0.14.18"; src = fetchFromGitHub { owner = "xremap"; repo = "xremap"; tag = "v${finalAttrs.version}"; - hash = "sha256-4WRJqRxfQ2udOo/U/iVoY9IB1XbDKH9yaSeOQAGciRM="; + hash = "sha256-bn5Qq3pcrxTKUBfMkoK1xtLl4c4tHafe74REMQS+cz8="; }; nativeBuildInputs = [ pkg-config ]; @@ -57,7 +57,7 @@ rustPlatform.buildRustPackage (finalAttrs: { buildNoDefaultFeatures = true; buildFeatures = variant.features; - cargoHash = "sha256-8zVUA2tpFe0MKzhu188FdQ/uAqffbaXkNh9Sl7XlI1E="; + cargoHash = "sha256-MJ41A8hUurevmy9MX1qB32T8J4KaZO/gDA96CmTuIBU="; passthru = lib.mapAttrs (name: lib.const (xremap.override { withVariant = name; })) variants; From 3f5fc1c0a298b6112706326d52aa639f6fedf4af Mon Sep 17 00:00:00 2001 From: misuzu Date: Wed, 11 Mar 2026 14:11:53 +0200 Subject: [PATCH 67/86] qsv: do not update child packages --- pkgs/by-name/qs/qsvlite/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/qs/qsvlite/package.nix b/pkgs/by-name/qs/qsvlite/package.nix index 9e82c69730f2..d53edb8b1aac 100644 --- a/pkgs/by-name/qs/qsvlite/package.nix +++ b/pkgs/by-name/qs/qsvlite/package.nix @@ -1,3 +1,5 @@ +# nixpkgs-update: no auto update +# updated via the parent 'qsv' derivation { qsv }: qsv.override { buildFeatures = [ "lite" ]; From 224a35bda29e3915223a3048da7f21e47cd194cd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 12:17:59 +0000 Subject: [PATCH 68/86] python3Packages.onedrive-personal-sdk: 0.1.5 -> 0.1.6 --- .../python-modules/onedrive-personal-sdk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/onedrive-personal-sdk/default.nix b/pkgs/development/python-modules/onedrive-personal-sdk/default.nix index 2195282a0b3f..ee2fbd18f4a8 100644 --- a/pkgs/development/python-modules/onedrive-personal-sdk/default.nix +++ b/pkgs/development/python-modules/onedrive-personal-sdk/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "onedrive-personal-sdk"; - version = "0.1.5"; + version = "0.1.6"; pyproject = true; src = fetchFromGitHub { owner = "zweckj"; repo = "onedrive-personal-sdk"; tag = "v${version}"; - hash = "sha256-l4cfSxF0D/qJPtA2YYcRfxMFL3TumfJw0jMQPoeIKGA="; + hash = "sha256-vNC7fXsTVCYizQnucyWOanYRoDCTfCfGD0zxGyigizk="; }; build-system = [ setuptools ]; From c6b4be19290b8076c3b08e6a4ad7511a8079696d Mon Sep 17 00:00:00 2001 From: Yureka Date: Wed, 11 Mar 2026 13:20:37 +0100 Subject: [PATCH 69/86] gitlab: 18.9.1 -> 18.9.2 https://gitlab.com/gitlab-org/gitlab/-/blob/v18.9.2-ee/CHANGELOG.md --- pkgs/by-name/gi/gitaly/package.nix | 4 ++-- pkgs/by-name/gi/gitlab-pages/package.nix | 4 ++-- pkgs/by-name/gi/gitlab/data.json | 14 +++++++------- .../by-name/gi/gitlab/gitlab-workhorse/default.nix | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/gi/gitaly/package.nix b/pkgs/by-name/gi/gitaly/package.nix index 7391a3941048..a8649a6870a9 100644 --- a/pkgs/by-name/gi/gitaly/package.nix +++ b/pkgs/by-name/gi/gitaly/package.nix @@ -7,7 +7,7 @@ }: let - version = "18.9.1"; + version = "18.9.2"; package_version = "v${lib.versions.major version}"; gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}"; @@ -21,7 +21,7 @@ let owner = "gitlab-org"; repo = "gitaly"; rev = "v${version}"; - hash = "sha256-H5zAd5/sHrRuEp1v/gMDY/9DyCMWmzpb3Ws6aTfX2k8="; + hash = "sha256-qCOcy7JOR7OeY5uPZE6xo6NRi5OhVKdl5Q4n36S5XyI="; }; vendorHash = "sha256-lK0fNBhDGFOZ+sCm1VuvN4CpAb0nAkUl4yL/30tZKBY="; diff --git a/pkgs/by-name/gi/gitlab-pages/package.nix b/pkgs/by-name/gi/gitlab-pages/package.nix index 9805ffc6d3b6..005dcd1e8464 100644 --- a/pkgs/by-name/gi/gitlab-pages/package.nix +++ b/pkgs/by-name/gi/gitlab-pages/package.nix @@ -6,14 +6,14 @@ buildGoModule (finalAttrs: { pname = "gitlab-pages"; - version = "18.9.1"; + version = "18.9.2"; # nixpkgs-update: no auto update src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitlab-pages"; rev = "v${finalAttrs.version}"; - hash = "sha256-DYifmE0vuJFTCCJiEDcOHOKJA3suEAJ89Ecy/fkcwf4="; + hash = "sha256-sOJNwCcIAuLywL9r9c0RUqqtLbNmaaJ6ZMVBLQgus8k="; }; vendorHash = "sha256-AZIv/CU01OAbn5faE4EkSuDCakYzDjRprB5ox5tIlck="; diff --git a/pkgs/by-name/gi/gitlab/data.json b/pkgs/by-name/gi/gitlab/data.json index cc52f5f6df93..60b6e2d50087 100644 --- a/pkgs/by-name/gi/gitlab/data.json +++ b/pkgs/by-name/gi/gitlab/data.json @@ -1,17 +1,17 @@ { - "version": "18.9.1", - "repo_hash": "sha256-Yq8G1gRA+p3Na3smPsMARj4w+cR2kvKjjffEwrR42vY=", + "version": "18.9.2", + "repo_hash": "sha256-0ax0wYOEiL9Vl/cw9DaoyhROehZjrtv7KIKmOWrrJY8=", "yarn_hash": "sha256-uXyUJS4+YIRB3pPezVbj5u1fytOo+/bNR18Kq6FAKSQ=", "frontend_islands_yarn_hash": "sha256-OkCoiyL9FFJcWcNUbeRSBGGSauYIm7l+yxNfA0CsNEQ=", "owner": "gitlab-org", "repo": "gitlab", - "rev": "v18.9.1-ee", + "rev": "v18.9.2-ee", "passthru": { - "GITALY_SERVER_VERSION": "18.9.1", - "GITLAB_KAS_VERSION": "18.9.1", - "GITLAB_PAGES_VERSION": "18.9.1", + "GITALY_SERVER_VERSION": "18.9.2", + "GITLAB_KAS_VERSION": "18.9.2", + "GITLAB_PAGES_VERSION": "18.9.2", "GITLAB_SHELL_VERSION": "14.45.6", "GITLAB_ELASTICSEARCH_INDEXER_VERSION": "5.13.3", - "GITLAB_WORKHORSE_VERSION": "18.9.1" + "GITLAB_WORKHORSE_VERSION": "18.9.2" } } diff --git a/pkgs/by-name/gi/gitlab/gitlab-workhorse/default.nix b/pkgs/by-name/gi/gitlab/gitlab-workhorse/default.nix index 1d3f16e79eed..ca942fc4ec80 100644 --- a/pkgs/by-name/gi/gitlab/gitlab-workhorse/default.nix +++ b/pkgs/by-name/gi/gitlab/gitlab-workhorse/default.nix @@ -10,7 +10,7 @@ in buildGoModule (finalAttrs: { pname = "gitlab-workhorse"; - version = "18.9.1"; + version = "18.9.2"; # nixpkgs-update: no auto update src = fetchFromGitLab { From 19d42114484a28d676353a6c4837d32d5b4d79e9 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Tue, 10 Mar 2026 16:30:00 +0100 Subject: [PATCH 70/86] =?UTF-8?q?coqPackages.mathcomp-word:=203.3=20?= =?UTF-8?q?=E2=86=92=203.4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../coq-modules/mathcomp-word/default.nix | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/pkgs/development/coq-modules/mathcomp-word/default.nix b/pkgs/development/coq-modules/mathcomp-word/default.nix index 2d69086f1d03..236960194607 100644 --- a/pkgs/development/coq-modules/mathcomp-word/default.nix +++ b/pkgs/development/coq-modules/mathcomp-word/default.nix @@ -27,19 +27,12 @@ let let prefix = "https://${domain}/${owner}/${repo}/"; in - if sha256 != null then + if hash != null || sha256 != null then fetchurl { url = "${prefix}releases/download/${rev}/${ lib.concatStringsSep "-" (namePrefix ++ [ pname ]) }-${rev}.tbz"; - inherit sha256; - } - else if hash != null then - fetchurl { - url = "${prefix}releases/download/v${rev}/${ - lib.concatStringsSep "-" (namePrefix ++ [ pname ]) - }-${rev}.tbz"; - inherit hash; + hash = if hash != null then hash else sha256; } else fetchTarball { url = "${prefix}archive/refs/heads/${rev}.tar.gz"; }; @@ -51,9 +44,10 @@ mkCoqDerivation { repo = "coqword"; useDune = true; - releaseRev = v: if lib.versionAtLeast v "3.3" then v else "v${v}"; + releaseRev = v: "v${v}"; - release."3.3".hash = "sha256-z+2eerYZbaEytg3A00GQ12wpj4IjKLJYf6Ny5cARwog="; + release."3.4".hash = "sha256-AnyiM5B7JJZI5LR0vSi6baVIx9SibYRiho7UBg1uV5w="; + release."3.3".hash = "sha256-Zn9245fr0OhgaXjWlIO1QwSxrQYetj7qPHwZAXTdqNc="; release."3.2".sha256 = "sha256-4HOFFQzKbHIq+ktjJaS5b2Qr8WL1eQ26YxF4vt1FdWM="; release."3.1".sha256 = "sha256-qQHis6554sG7NpCpWhT2wvelnxsrbEPVNv3fpxwxHMU="; release."3.0".sha256 = "sha256-xEgx5HHDOimOJbNMtIVf/KG3XBemOS9XwoCoW6btyJ4="; @@ -78,7 +72,7 @@ mkCoqDerivation { lib.switch [ coq.coq-version mathcomp.version ] [ - (case (range "8.16" "9.1") (isGe "2.0") "3.3") + (case (range "8.16" "9.1") (isGe "2.0") "3.4") (case (range "8.12" "8.20") (range "1.12" "1.19") "2.4") ] null; From eb50eb46785252ba28049eeee18ebdbac463f138 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 11 Mar 2026 14:10:58 +0100 Subject: [PATCH 71/86] python315: 3.15.0a6 -> 3.15.0a7 https://docs.python.org/3.15/whatsnew/changelog.html#python-3-15-0-alpha-7 --- pkgs/development/interpreters/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index ea11b6058949..4e1c533bfea9 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -92,9 +92,9 @@ major = "3"; minor = "15"; patch = "0"; - suffix = "a6"; + suffix = "a7"; }; - hash = "sha256-jipOGyr7k6hNZZ1DGx84RUSz2gCkuP9b81gPB61P+Yk="; + hash = "sha256-j1kMQot/DUBt+Si4Vzfno6+ijt3U0UGUEOqAloftHqc="; inherit passthruFun; }; From cc3dc6be390e66e0b4001fea6adb3c8f55509f86 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 14:25:31 +0000 Subject: [PATCH 72/86] avml: 0.15.0 -> 0.17.0 --- pkgs/by-name/av/avml/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/av/avml/package.nix b/pkgs/by-name/av/avml/package.nix index 06b496066b28..35bbf219cdb2 100644 --- a/pkgs/by-name/av/avml/package.nix +++ b/pkgs/by-name/av/avml/package.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "avml"; - version = "0.15.0"; + version = "0.17.0"; src = fetchFromGitHub { owner = "microsoft"; repo = "avml"; tag = "v${finalAttrs.version}"; - hash = "sha256-QN9GLrs0wjlEdkNnN7Q4Uqu1yJlxD7Dx0SnHJnfV/so="; + hash = "sha256-G+0Q4V+7K6GuMc7c1s7DYSrV9l+deu0+KYAWZYdxNU0="; }; - cargoHash = "sha256-u9oYchTvSvlth/Kn6SYuuP2VDVWQDNqueUsKumPooFU="; + cargoHash = "sha256-a6mCdhi2pBc+YE3iJnjjog37lZh/a2TQRihZc0X0M8g="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ]; From 11c65128e7216f50e31165c8be2ac2717947ca31 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 14:41:55 +0000 Subject: [PATCH 73/86] vivaldi: 7.8.3925.74 -> 7.8.3925.76 --- pkgs/by-name/vi/vivaldi/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/vi/vivaldi/package.nix b/pkgs/by-name/vi/vivaldi/package.nix index 9c5e3c1e384f..f3e2f8732125 100644 --- a/pkgs/by-name/vi/vivaldi/package.nix +++ b/pkgs/by-name/vi/vivaldi/package.nix @@ -66,7 +66,7 @@ stdenv.mkDerivation rec { pname = "vivaldi"; - version = "7.8.3925.74"; + version = "7.8.3925.76"; suffix = { @@ -79,8 +79,8 @@ stdenv.mkDerivation rec { url = "https://downloads.vivaldi.com/stable/vivaldi-stable_${version}-1_${suffix}.deb"; hash = { - aarch64-linux = "sha256-mjincXiugFWW4dnJEWC3AnBc7bk+pGmxS8w9kUJhTpM="; - x86_64-linux = "sha256-v7fAE8iUVYJCHnURD/XLpMz83X0RDK0IYrKmSMUtmxA="; + aarch64-linux = "sha256-gXbJyWY6demWPkOS+LIY87K4gbO2uOVM5JvPpW4YnSc="; + x86_64-linux = "sha256-BIlOykKzEbCoNryziVGppcoreTGt9xgkOmJbVd5zwAM="; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); }; From edd91951c48b344a22db93b0a079526383b217c9 Mon Sep 17 00:00:00 2001 From: John Titor <50095635+JohnRTitor@users.noreply.github.com> Date: Wed, 11 Mar 2026 14:42:20 +0000 Subject: [PATCH 74/86] hyprlandPlugins.hy3: 0.53.0.1 -> 0.54.2 --- .../window-managers/hyprwm/hyprland-plugins/hy3.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/window-managers/hyprwm/hyprland-plugins/hy3.nix b/pkgs/applications/window-managers/hyprwm/hyprland-plugins/hy3.nix index cf4145e5fc3d..0ebd85cf26ac 100644 --- a/pkgs/applications/window-managers/hyprwm/hyprland-plugins/hy3.nix +++ b/pkgs/applications/window-managers/hyprwm/hyprland-plugins/hy3.nix @@ -8,13 +8,13 @@ }: mkHyprlandPlugin (finalAttrs: { pluginName = "hy3"; - version = "0.53.0.1"; + version = "0.54.2"; src = fetchFromGitHub { owner = "outfoxxed"; repo = "hy3"; tag = "hl${finalAttrs.version}"; - hash = "sha256-0gUgUk8XFtu8HWZySFgb4bzvn+MHK9ZEZ1trVU8YfPw="; + hash = "sha256-ceT6njnsCLefWhn5C6FYdp68Te9UfcQLAaYIHGjt8bk="; }; nativeBuildInputs = [ cmake ]; From 7a35fd886d35e1fe30e69b3a8d0255c4d9323393 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 14:53:39 +0000 Subject: [PATCH 75/86] cook-cli: 0.24.0 -> 0.26.0 --- pkgs/by-name/co/cook-cli/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/co/cook-cli/package.nix b/pkgs/by-name/co/cook-cli/package.nix index 2443e96504c2..86b2f070ee2c 100644 --- a/pkgs/by-name/co/cook-cli/package.nix +++ b/pkgs/by-name/co/cook-cli/package.nix @@ -10,16 +10,16 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "cook-cli"; - version = "0.24.0"; + version = "0.26.0"; src = fetchFromGitHub { owner = "cooklang"; repo = "cookcli"; rev = "v${finalAttrs.version}"; - hash = "sha256-ZRUnbhHXOl1FTvaMKzDxP7f7AkqTDfWjhVbBOdNsCvg="; + hash = "sha256-UIhecZu2iHOwuHSwoWpMKQ1LrEH5ryZZTZV5hMp+UHo="; }; - cargoHash = "sha256-9FgCYHqcTyroTCDHhYXm9w+BBu8Hr8bWlvcqMU0O5TU="; + cargoHash = "sha256-UcrrFYst6E31bgjknRBugBWBm/4w96u8Yl0UPCyfRX8="; # Build without the self-updating feature buildNoDefaultFeatures = true; From a98abbe1cf3b65213d5a6442598a14c5d943c5b4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 14:55:51 +0000 Subject: [PATCH 76/86] awakened-poe-trade: 3.27.106 -> 3.28.102 --- pkgs/by-name/aw/awakened-poe-trade/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/aw/awakened-poe-trade/package.nix b/pkgs/by-name/aw/awakened-poe-trade/package.nix index fcc8d734b5f3..05aa4b5550c5 100644 --- a/pkgs/by-name/aw/awakened-poe-trade/package.nix +++ b/pkgs/by-name/aw/awakened-poe-trade/package.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "awakened-poe-trade"; - version = "3.27.106"; + version = "3.28.102"; src = fetchurl { url = "https://github.com/SnosMe/awakened-poe-trade/releases/download/v${finalAttrs.version}/Awakened-PoE-Trade-${finalAttrs.version}.AppImage"; - hash = "sha256-8L5Szn0KYfUMaTe+yyhJV1YZspmJCSlXSHXLPoiRhjE="; + hash = "sha256-tej1rjkrpAXmQ8ZzvlAuxHkMGAuRpPqg1TlBoWhorIE="; }; passthru = { From 966f889beca38c1dc9c4d9a4448a83f583f31f7c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 15:08:47 +0000 Subject: [PATCH 77/86] watchlog: 1.254.0 -> 1.257.0 --- pkgs/by-name/wa/watchlog/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/wa/watchlog/package.nix b/pkgs/by-name/wa/watchlog/package.nix index bdc12d03c02a..6badec6a8e10 100644 --- a/pkgs/by-name/wa/watchlog/package.nix +++ b/pkgs/by-name/wa/watchlog/package.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "watchlog"; - version = "1.254.0"; + version = "1.257.0"; src = fetchFromGitLab { owner = "kevincox"; repo = "watchlog"; rev = "v${finalAttrs.version}"; - hash = "sha256-gXglNyeIrLCarHwn0shSAOEcoVOW9yaCuXA/KGB1pdo="; + hash = "sha256-KesYMimT6GMo5HK7rsasgfylM0F98bZcqCEsJdNPgaM="; }; - cargoHash = "sha256-aw5WRBnQJqn9zUzXir4HNNywcwX3yZW5RKkPZBa5XD0="; + cargoHash = "sha256-y0U+AQ8a7SEyUl6LtGzD61ArJUx3GU19dnk6KHVaXxM="; meta = { description = "Easier monitoring of live logs"; From 14408975a50a9e6b60f8737c149a0ae39f31b57a Mon Sep 17 00:00:00 2001 From: Charlotte Hartmann Paludo Date: Wed, 11 Mar 2026 15:59:12 +0100 Subject: [PATCH 78/86] envoy-bin: 1.37.0 -> 1.37.1 https://github.com/envoyproxy/envoy/releases/tag/v1.37.1 Fixes: CVE-2026-26330 Fixes: CVE-2026-26308 Fixes: CVE-2026-26310 Fixes: CVE-2026-26309 Fixes: CVE-2026-26311 --- pkgs/by-name/en/envoy-bin/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/en/envoy-bin/package.nix b/pkgs/by-name/en/envoy-bin/package.nix index 3518a68cb700..248d400b58c4 100644 --- a/pkgs/by-name/en/envoy-bin/package.nix +++ b/pkgs/by-name/en/envoy-bin/package.nix @@ -7,7 +7,7 @@ versionCheckHook, }: let - version = "1.37.0"; + version = "1.37.1"; inherit (stdenvNoCC.hostPlatform) system; throwSystem = throw "envoy-bin is not available for ${system}."; @@ -20,8 +20,8 @@ let hash = { - aarch64-linux = "sha256-9KEqySEbwO53yN2oaXIrbSih6dm2LNuX7I8g3oIA+ig="; - x86_64-linux = "sha256-Clcp7k6YDTRuvO6A8Y5+/lIyuRFBu0x3bsOtzKeG5gw="; + aarch64-linux = "sha256-ZYEeEq6PedT09kGNJ6LTL+vEzIpSM9Wuik2g4+Dz/nU="; + x86_64-linux = "sha256-jbkO4KoIWuaHPb8hISgW0p9sRV1HYMSuz01lk3Y9sYw="; } .${system} or throwSystem; in From a719d3899f39d82312cfc74cc945954c098facf8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 15:33:00 +0000 Subject: [PATCH 79/86] pt2-clone: 1.81 -> 1.83 --- pkgs/by-name/pt/pt2-clone/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pt/pt2-clone/package.nix b/pkgs/by-name/pt/pt2-clone/package.nix index 219b993ce993..a8daab8af3e6 100644 --- a/pkgs/by-name/pt/pt2-clone/package.nix +++ b/pkgs/by-name/pt/pt2-clone/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "pt2-clone"; - version = "1.81"; + version = "1.83"; src = fetchFromGitHub { owner = "8bitbubsy"; repo = "pt2-clone"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-+Dm++OHrgrZmAaYJdCCQJ8Chc5y6KdHajH6gDOAg3Do="; + sha256 = "sha256-jA3cFn5q7ceLIgu42Ir1HdXdSqgm8mcdR35CJdqQP+I="; }; nativeBuildInputs = [ cmake ]; From 85744ca11da6366062eded33b106160ac326f829 Mon Sep 17 00:00:00 2001 From: Myles Wirth Date: Mon, 23 Feb 2026 22:03:55 -0500 Subject: [PATCH 80/86] lakefs: init at 1.79.0 --- pkgs/by-name/la/lakefs/package.nix | 82 ++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 pkgs/by-name/la/lakefs/package.nix diff --git a/pkgs/by-name/la/lakefs/package.nix b/pkgs/by-name/la/lakefs/package.nix new file mode 100644 index 000000000000..1ad8c3fbc909 --- /dev/null +++ b/pkgs/by-name/la/lakefs/package.nix @@ -0,0 +1,82 @@ +{ + lib, + stdenv, + buildGoModule, + buildNpmPackage, + fetchFromGitHub, + nodejs_22, + installShellFiles, + nix-update-script, + versionCheckHook, +}: + +buildGoModule (finalAttrs: { + pname = "lakefs"; + version = "1.79.0"; + + src = fetchFromGitHub { + owner = "treeverse"; + repo = "lakeFS"; + tag = "v${finalAttrs.version}"; + hash = "sha256-UL9JvrNvtHADI0POguLXMDNNvO1oKHXXwfr8tOyvFYc="; + }; + + webui = buildNpmPackage { + pname = "lakefs-webui"; + + inherit (finalAttrs) version src; + + sourceRoot = "${finalAttrs.src.name}/webui"; + + nodejs = nodejs_22; + + npmDepsHash = "sha256-Z9oOIKK6Hm/Bg3E37f4FqFFL1exMIf0KNEHQXIyox+Q="; + + installPhase = '' + runHook preInstall + cp -r dist $out + runHook postInstall + ''; + }; + + subPackages = [ "cmd/lakefs" ]; + proxyVendor = true; + vendorHash = "sha256-6XOJBDdAERD6mcneQ7UFqAPGq+pXroNlzQGNvycpVBc="; + + ldflags = [ + "-s" + "-w" + "-X github.com/treeverse/lakefs/pkg/version.Version=${finalAttrs.version}" + ]; + + nativeBuildInputs = [ installShellFiles ]; + + preBuild = '' + mkdir -p webui/dist + cp -r ${finalAttrs.webui}/* webui/dist/ + go generate ./pkg/api/apigen ./pkg/auth ./pkg/authentication + ''; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd lakefs \ + --bash <($out/bin/lakefs completion bash) \ + --fish <($out/bin/lakefs completion fish) \ + --zsh <($out/bin/lakefs completion zsh) + ''; + + doInstallCheck = true; + nativeInstallCheckInputs = [ versionCheckHook ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Data version control for object storage (Git for data)"; + homepage = "https://lakefs.io/"; + downloadPage = "https://github.com/treeverse/lakeFS"; + changelog = "https://github.com/treeverse/lakeFS/blob/v${finalAttrs.version}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ philocalyst ]; + mainProgram = "lakefs"; + platforms = lib.platforms.unix; + }; +}) From fd4dd63b4effafe22f4bf06871736237d27039f2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 15:48:49 +0000 Subject: [PATCH 81/86] serie: 0.6.1 -> 0.7.0 --- pkgs/by-name/se/serie/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/se/serie/package.nix b/pkgs/by-name/se/serie/package.nix index 336a8e65d1bc..9c94811f00d7 100644 --- a/pkgs/by-name/se/serie/package.nix +++ b/pkgs/by-name/se/serie/package.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "serie"; - version = "0.6.1"; + version = "0.7.0"; src = fetchFromGitHub { owner = "lusingander"; repo = "serie"; rev = "v${finalAttrs.version}"; - hash = "sha256-cnuQ6gAL0YRv0DIjuXstPmFRyfQh7c+MHZkc3lzRcRo="; + hash = "sha256-J84xop9QGRa9pgHGF8ioLwmnXu1t5iO9ZLV2MoYRdEI="; }; - cargoHash = "sha256-SavJ6OsTxWUWFWxyfq3B/maqqTRIRiBmwIeXAH3+ZCw="; + cargoHash = "sha256-B9Fn4okfS/OwhR34YwyjhPvpK6DLFuVY0BRubj4Y4MA="; nativeCheckInputs = [ gitMinimal ]; From d162d7f3128bf3500fa67d3ffadfb8c32299f75e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 15:54:13 +0000 Subject: [PATCH 82/86] yewtube: 2.12.1 -> 2.13.1 --- pkgs/by-name/ye/yewtube/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ye/yewtube/package.nix b/pkgs/by-name/ye/yewtube/package.nix index f19f8d3f3c16..60ffe1bc4506 100644 --- a/pkgs/by-name/ye/yewtube/package.nix +++ b/pkgs/by-name/ye/yewtube/package.nix @@ -6,14 +6,14 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "yewtube"; - version = "2.12.1"; + version = "2.13.1"; format = "setuptools"; src = fetchFromGitHub { owner = "mps-youtube"; repo = "yewtube"; tag = "v${finalAttrs.version}"; - hash = "sha256-+V9t71Z8PKioM7HWlzTB6X7EokAWgqC3fQJr5tkPdq8="; + hash = "sha256-aRJQMm1Ykn6bs6OTSEGMTc5N8pinuRQQ+m54XpT45As="; }; postPatch = '' From a154794cfa85204e4af92b409227c20dcca3fcc6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 15:58:12 +0000 Subject: [PATCH 83/86] python3Packages.hueble: 2.1.0 -> 2.1.1 --- pkgs/development/python-modules/hueble/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/hueble/default.nix b/pkgs/development/python-modules/hueble/default.nix index f21782994f9f..c7d168fddc34 100644 --- a/pkgs/development/python-modules/hueble/default.nix +++ b/pkgs/development/python-modules/hueble/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "hueble"; - version = "2.1.0"; + version = "2.1.1"; pyproject = true; src = fetchFromGitHub { owner = "flip-dots"; repo = "HueBLE"; tag = "v${version}"; - hash = "sha256-1KDKfmP7fNe66ZMHbOsNvnikkm1/AGQPBKTh7h9ku6Y="; + hash = "sha256-CMipY44tfuOQE2P77mH44stevg1IOd0MeF+cS6jkPnw="; }; build-system = [ setuptools ]; From a806c94cd608b70c6b728f61e3a2e0200c45f7ad Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 16:00:15 +0000 Subject: [PATCH 84/86] python3Packages.pyanglianwater: 3.1.0 -> 3.1.1 --- pkgs/development/python-modules/pyanglianwater/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyanglianwater/default.nix b/pkgs/development/python-modules/pyanglianwater/default.nix index 20d43a8ade68..cc19ede851c5 100644 --- a/pkgs/development/python-modules/pyanglianwater/default.nix +++ b/pkgs/development/python-modules/pyanglianwater/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "pyanglianwater"; - version = "3.1.0"; + version = "3.1.1"; pyproject = true; src = fetchFromGitHub { owner = "pantherale0"; repo = "pyanglianwater"; tag = version; - hash = "sha256-NlAntGrc42jMxjaimG4AVvpsmDZfju9tHt3pZ8rldV0="; + hash = "sha256-iMUrX6tyPVf/L/kUymmrqUO4JOaQUhWdrkRPiOBIVGg="; }; build-system = [ setuptools ]; From 93c83de2fa28236bc77ae3d8090b43cf6b429e13 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 16:20:25 +0000 Subject: [PATCH 85/86] python3Packages.pepit: 0.4.0 -> 0.5.0 --- pkgs/development/python-modules/pepit/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pepit/default.nix b/pkgs/development/python-modules/pepit/default.nix index 2a8579500a07..73209de67941 100644 --- a/pkgs/development/python-modules/pepit/default.nix +++ b/pkgs/development/python-modules/pepit/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "pepit"; - version = "0.4.0"; + version = "0.5.0"; pyproject = true; src = fetchFromGitHub { owner = "PerformanceEstimation"; repo = "PEPit"; tag = version; - hash = "sha256-6HF/BkDFUvui7CaVfOeJUQhl3QLLyE7aabDWcZ4tgXc="; + hash = "sha256-JwJGJhBC7fS10D6cUkQwhwoT932Pi4oPTtNLNwyM3Q4="; }; postPatch = '' From 50b55726a04dcc49ca630263ffd5df5904aa1075 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 11 Mar 2026 16:29:59 +0000 Subject: [PATCH 86/86] lintspec: 0.15.0 -> 0.16.0 --- pkgs/by-name/li/lintspec/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/li/lintspec/package.nix b/pkgs/by-name/li/lintspec/package.nix index 60cf0a1b0837..e6ddec6fea02 100644 --- a/pkgs/by-name/li/lintspec/package.nix +++ b/pkgs/by-name/li/lintspec/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "lintspec"; - version = "0.15.0"; + version = "0.16.0"; src = fetchFromGitHub { owner = "beeb"; repo = "lintspec"; tag = "v${finalAttrs.version}"; - hash = "sha256-giCPigyLkWv2d8hdXT3ZmYjl7mYRlTxua0N0JpeC/kc="; + hash = "sha256-hMBDOpmz8EMSWPKU16EleSxVZbLSbZPynqhrJifgt04="; }; - cargoHash = "sha256-XsGkEy/uNmd2Em+ypDAAVKDeioaGafzFFHVL18Z0pdg="; + cargoHash = "sha256-WaMuHTvadj1GoFyT0p4II6EFp7nmN5LJN3SOO2kYujM="; cargoBuildFlags = [ "--package" "lintspec"