From dfb143ed84e029c8300e586c412f9bfb4f9659de Mon Sep 17 00:00:00 2001 From: Stel Clementine Date: Wed, 9 Jul 2025 11:46:29 -0700 Subject: [PATCH 001/115] tlp: add missing runtime dependency usbutils (#423866) --- pkgs/tools/misc/tlp/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/misc/tlp/default.nix b/pkgs/tools/misc/tlp/default.nix index ad8c677ea5b6..79598e9df1bc 100644 --- a/pkgs/tools/misc/tlp/default.nix +++ b/pkgs/tools/misc/tlp/default.nix @@ -19,6 +19,7 @@ smartmontools, systemd, udevCheckHook, + usbutils, util-linux, x86_energy_perf_policy, # RDW only works with NetworkManager, and thus is optional with default off @@ -104,6 +105,7 @@ stdenv.mkDerivation rec { perl smartmontools systemd + usbutils util-linux ] ++ lib.optional enableRDW networkmanager From 8bd1c57a61c5346a2c3d93c65e5af0611a20be5d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 19 Nov 2025 06:54:25 +0000 Subject: [PATCH 002/115] spiffe-helper: 0.10.1 -> 0.11.0 --- pkgs/by-name/sp/spiffe-helper/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/sp/spiffe-helper/package.nix b/pkgs/by-name/sp/spiffe-helper/package.nix index df54bd74a6ab..6a0cbe84fe57 100644 --- a/pkgs/by-name/sp/spiffe-helper/package.nix +++ b/pkgs/by-name/sp/spiffe-helper/package.nix @@ -7,16 +7,16 @@ buildGoModule (finalAttrs: { pname = "spiffe-helper"; - version = "0.10.1"; + version = "0.11.0"; src = fetchFromGitHub { owner = "spiffe"; repo = "spiffe-helper"; tag = "v${finalAttrs.version}"; - hash = "sha256-rP0qXSut+9m8wCzByO0CO6IobC1lphK/3Y1OhPgiAOw="; + hash = "sha256-akuq5qqL+B4kyZ7EuBYOPYQ15/hUsUPTmewgQWYTXos="; }; - vendorHash = "sha256-sAcmJNry3nuWyzt0Ee05JjROR/pDXxu2NVmltotSD0U="; + vendorHash = "sha256-32ArgWgQFHPyA/wqbcuIZ77HCCsh+V3QFw/8YrPJZww="; ldflags = [ "-s" From 8f05b9313aeb791410c2852ef078a0b9dc54681d Mon Sep 17 00:00:00 2001 From: jaanonim Date: Fri, 21 Nov 2025 12:46:08 +0100 Subject: [PATCH 003/115] maintainers: add jaanonim --- maintainers/maintainer-list.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4c9c963d7a66..8f6394d80d58 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -11498,6 +11498,13 @@ githubId = 49811314; keys = [ { fingerprint = "CC36 4CF4 32DD 443F 27FC 033C 3475 AA20 D72F 6A93"; } ]; }; + jaanonim = { + name = "Jaanonim"; + email = "mat8mro@gmail.com"; + github = "jaanonim"; + githubId = 28810058; + keys = [ { fingerprint = "5C4A 273F 5F11 3DF7 ECDF 0AD7 933A F32D 3ABD 5CAF"; } ]; + }; jab = { name = "Joshua Bronson"; email = "jabronson@gmail.com"; From 2a4cf2bdd13c16d5901923530c8f1ad60b5eef42 Mon Sep 17 00:00:00 2001 From: jaanonim Date: Fri, 21 Nov 2025 12:46:19 +0100 Subject: [PATCH 004/115] chuffed: init at 0.13.2 --- pkgs/by-name/ch/chuffed/package.nix | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 pkgs/by-name/ch/chuffed/package.nix diff --git a/pkgs/by-name/ch/chuffed/package.nix b/pkgs/by-name/ch/chuffed/package.nix new file mode 100644 index 000000000000..bfa411a1e8fd --- /dev/null +++ b/pkgs/by-name/ch/chuffed/package.nix @@ -0,0 +1,28 @@ +{ + stdenv, + cmake, + fetchFromGitHub, + lib, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "chuffed"; + version = "0.13.2"; + + src = fetchFromGitHub { + owner = "chuffed"; + repo = "chuffed"; + tag = finalAttrs.version; + hash = "sha256-D4HEcCDcJi05AL9suc7Twtf/wjpwBkLEeumGY3nNi5g="; + }; + + nativeBuildInputs = [ cmake ]; + + meta = { + homepage = "https://github.com/chuffed/chuffed"; + description = "The Chuffed CP solver"; + longDescription = "Chuffed is a state of the art lazy clause solver designed from the ground up with lazy clause generation in mind."; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ jaanonim ]; + platforms = lib.platforms.all; + }; +}) From 1bb71bca9f43ec0ba793ccbb799083e584aa93ec Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Mon, 17 Nov 2025 15:57:18 +0100 Subject: [PATCH 005/115] nixos/tests/acl: init Adds a NixOS test for the package check phase, because they depend on ACLs and users, which are not available in the sandbox. --- nixos/tests/acl.nix | 33 +++++++++++++++++++++++++++++++++ nixos/tests/all-tests.nix | 1 + 2 files changed, 34 insertions(+) create mode 100644 nixos/tests/acl.nix diff --git a/nixos/tests/acl.nix b/nixos/tests/acl.nix new file mode 100644 index 000000000000..189abc08f420 --- /dev/null +++ b/nixos/tests/acl.nix @@ -0,0 +1,33 @@ +{ + vmTools, + perl, + coreutils, + acl, +}: +# Can't run this within a VM because tests require root access +# Can't easily use a standard VM test because we need to have access to intermediate build results +vmTools.runInLinuxVM ( + acl.overrideAttrs (old: { + postPatch = old.postPatch or "" + '' + # The runwrapper uses LD_PRELOAD to override available user/groups + substituteInPlace Makefile.in --replace-fail \ + 'TEST_LOG_COMPILER = $(srcdir)/test/runwrapper' \ + 'TEST_LOG_COMPILER = $(srcdir)/test/run' + ''; + nativeCheckInputs = old.nativeCheckInputs or [ ] ++ [ + perl + # By default `ls` would come from bootstrap tools, + # which doesn't support showing ACLs, which the tests rely on + coreutils + ]; + preCheck = '' + cp test/test.passwd /etc/passwd + cp test/test.group /etc/group + ''; + doCheck = true; + outputs = [ "out" ]; + installPhase = '' + touch $out + ''; + }) +) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index ac16eaf315a7..bd0bbbaff891 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -188,6 +188,7 @@ in # keep-sorted start case=no numeric=no block=yes _3proxy = runTest ./3proxy.nix; aaaaxy = runTest ./aaaaxy.nix; + acl = pkgs.callPackage ./acl.nix { }; acme = import ./acme/default.nix { inherit runTest; inherit (pkgs) lib; From b707bde4ea0f55a65af4ce54c24bad912ac1b192 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 21:58:32 -0700 Subject: [PATCH 006/115] minimal-bootstrap.coreutils-static: init at 9.4 --- .../minimal-bootstrap/coreutils/common.nix | 10 +++ .../minimal-bootstrap/coreutils/default.nix | 11 +-- .../minimal-bootstrap/coreutils/musl.nix | 11 +-- .../minimal-bootstrap/coreutils/static.nix | 78 ++++++++++++++++++ .../linux/minimal-bootstrap/default.nix | 81 ++++++++++--------- 5 files changed, 135 insertions(+), 56 deletions(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/coreutils/common.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/common.nix b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/common.nix new file mode 100644 index 000000000000..1f8ba9c08883 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/common.nix @@ -0,0 +1,10 @@ +{ lib }: +{ + meta = { + description = "The GNU Core Utilities"; + homepage = "https://www.gnu.org/software/coreutils"; + license = lib.licenses.gpl3Plus; + teams = [ lib.teams.minimal-bootstrap ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/default.nix index 2ddcbd247434..5f5c58c00a4d 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/default.nix @@ -7,6 +7,7 @@ gnupatch, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "bootstrap-coreutils"; version = "5.0"; @@ -73,21 +74,13 @@ let in kaem.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler gnumake gnupatch ]; - - meta = { - description = "GNU Core Utilities"; - homepage = "https://www.gnu.org/software/coreutils"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/musl.nix b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/musl.nix index 11778bb35833..bf6506d422ba 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/musl.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/musl.nix @@ -13,6 +13,7 @@ gzip, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "bootstrap-coreutils-musl"; version = "9.4"; @@ -36,7 +37,7 @@ let in bash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler @@ -54,14 +55,6 @@ bash.runCommand "${pname}-${version}" ${result}/bin/cat --version mkdir $out ''; - - meta = { - description = "GNU Core Utilities"; - homepage = "https://www.gnu.org/software/coreutils"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix new file mode 100644 index 000000000000..97dfa7642ce1 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/coreutils/static.nix @@ -0,0 +1,78 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + gzip, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "coreutils-static"; + version = "9.4"; + + src = fetchurl { + url = "mirror://gnu/coreutils/coreutils-${version}.tar.gz"; + hash = "sha256-X2ANkJOXOwr+JTk9m8GMRPIjJlf0yg2V6jHHAutmtzk="; + }; + + configureFlags = [ + "--prefix=${placeholder "out"}" + "--build=${buildPlatform.config}" + "--host=${hostPlatform.config}" + # libstdbuf.so fails in static builds + "--enable-no-install-program=stdbuf" + "--enable-single-binary=symlinks" + "CC=musl-gcc" + "CFLAGS=-static" + ]; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/coreutils --version + mkdir $out + ''; + } + '' + # Unpack + tar xzf ${src} + cd coreutils-${version} + + # Configure + bash ./configure ${lib.concatStringsSep " " configureFlags} + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index cc469eb20c24..c2d78e1e079e 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -52,13 +52,18 @@ lib.makeScope gnutar = gnutar-musl; }; - coreutils = callPackage ./coreutils { tinycc = tinycc-mes; }; - coreutils-musl = callPackage ./coreutils/musl.nix { - bash = bash_2_05; - tinycc = tinycc-musl; - gnumake = gnumake-musl; - gnutar = gnutar-musl; - }; + coreutils = callPackage ./coreutils { tinycc = tinycc-mes; }; + coreutils-musl = callPackage ./coreutils/musl.nix { + bash = bash_2_05; + tinycc = tinycc-musl; + gnumake = gnumake-musl; + gnutar = gnutar-musl; + }; + coreutils-static = callPackage ./coreutils/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; diffutils = callPackage ./diffutils { bash = bash_2_05; @@ -234,34 +239,34 @@ lib.makeScope inherit (callPackage ./utils.nix { }) derivationWithMeta writeTextFile writeText; - test = kaem.runCommand "minimal-bootstrap-test" { } '' - echo ${bash.tests.get-version} - echo ${bash_2_05.tests.get-version} - echo ${binutils.tests.get-version} - echo ${bzip2.tests.get-version} - echo ${coreutils-musl.tests.get-version} - echo ${diffutils.tests.get-version} - echo ${findutils.tests.get-version} - echo ${gawk-mes.tests.get-version} - echo ${gawk.tests.get-version} - echo ${gcc46.tests.get-version} - echo ${gcc46-cxx.tests.hello-world} - echo ${gcc8.tests.hello-world} - echo ${gcc-latest.tests.hello-world} - echo ${gnugrep.tests.get-version} - echo ${gnused.tests.get-version} - echo ${gnused-mes.tests.get-version} - echo ${gnutar.tests.get-version} - echo ${gnutar-musl.tests.get-version} - echo ${gnutar-latest.tests.get-version} - echo ${gzip.tests.get-version} - echo ${heirloom.tests.get-version} - echo ${mes.compiler.tests.get-version} - echo ${musl.tests.hello-world} - echo ${tinycc-mes.compiler.tests.chain} - echo ${tinycc-musl.compiler.tests.hello-world} - echo ${xz.tests.get-version} - mkdir ''${out} - ''; - } - ) + test = kaem.runCommand "minimal-bootstrap-test" {} '' + echo ${bash.tests.get-version} + echo ${bash_2_05.tests.get-version} + echo ${binutils.tests.get-version} + echo ${bzip2.tests.get-version} + echo ${coreutils-musl.tests.get-version} + echo ${coreutils-static.tests.get-version} + echo ${diffutils.tests.get-version} + echo ${findutils.tests.get-version} + echo ${gawk-mes.tests.get-version} + echo ${gawk.tests.get-version} + echo ${gcc46.tests.get-version} + echo ${gcc46-cxx.tests.hello-world} + echo ${gcc8.tests.hello-world} + echo ${gcc-latest.tests.hello-world} + echo ${gnugrep.tests.get-version} + echo ${gnused.tests.get-version} + echo ${gnused-mes.tests.get-version} + echo ${gnutar.tests.get-version} + echo ${gnutar-musl.tests.get-version} + echo ${gnutar-latest.tests.get-version} + echo ${gzip.tests.get-version} + echo ${heirloom.tests.get-version} + echo ${mes.compiler.tests.get-version} + echo ${musl.tests.hello-world} + echo ${tinycc-mes.compiler.tests.chain} + echo ${tinycc-musl.compiler.tests.hello-world} + echo ${xz.tests.get-version} + mkdir ''${out} + ''; + }) From 5e289682c9775860abc75d32c33ebb9b4b4a8693 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 22:06:38 -0700 Subject: [PATCH 007/115] minimal-bootstrap.gnutar-static: init at 1.35 --- .../linux/minimal-bootstrap/default.nix | 102 ++++++++++-------- .../linux/minimal-bootstrap/gnutar/common.nix | 11 ++ .../linux/minimal-bootstrap/gnutar/latest.nix | 12 +-- .../linux/minimal-bootstrap/gnutar/mes.nix | 12 +-- .../linux/minimal-bootstrap/gnutar/musl.nix | 12 +-- .../linux/minimal-bootstrap/gnutar/static.nix | 72 +++++++++++++ 6 files changed, 144 insertions(+), 77 deletions(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnutar/common.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index c2d78e1e079e..5caa3759a537 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -52,18 +52,18 @@ lib.makeScope gnutar = gnutar-musl; }; - coreutils = callPackage ./coreutils { tinycc = tinycc-mes; }; - coreutils-musl = callPackage ./coreutils/musl.nix { - bash = bash_2_05; - tinycc = tinycc-musl; - gnumake = gnumake-musl; - gnutar = gnutar-musl; - }; - coreutils-static = callPackage ./coreutils/static.nix { - gcc = gcc-latest; - gnumake = gnumake-musl; - gnutar = gnutar-latest; - }; + coreutils = callPackage ./coreutils { tinycc = tinycc-mes; }; + coreutils-musl = callPackage ./coreutils/musl.nix { + bash = bash_2_05; + tinycc = tinycc-musl; + gnumake = gnumake-musl; + gnutar = gnutar-musl; + }; + coreutils-static = callPackage ./coreutils/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; diffutils = callPackage ./diffutils { bash = bash_2_05; @@ -155,17 +155,23 @@ lib.makeScope gnused = gnused-mes; }; + # FIXME: better package naming scheme + gnutar-latest = callPackage ./gnutar/latest.nix { + gcc = gcc46; + gnumake = gnumake-musl; + gnutarBoot = gnutar-musl; + }; + gnutar-musl = callPackage ./gnutar/musl.nix { bash = bash_2_05; tinycc = tinycc-musl; gnused = gnused-mes; }; - # FIXME: better package naming scheme - gnutar-latest = callPackage ./gnutar/latest.nix { - gcc = gcc46; + gnutar-static = callPackage ./gnutar/static.nix { + gcc = gcc-latest; gnumake = gnumake-musl; - gnutarBoot = gnutar-musl; + gnutarBoot = gnutar-latest; }; gzip = callPackage ./gzip { @@ -239,34 +245,36 @@ lib.makeScope inherit (callPackage ./utils.nix { }) derivationWithMeta writeTextFile writeText; - test = kaem.runCommand "minimal-bootstrap-test" {} '' - echo ${bash.tests.get-version} - echo ${bash_2_05.tests.get-version} - echo ${binutils.tests.get-version} - echo ${bzip2.tests.get-version} - echo ${coreutils-musl.tests.get-version} - echo ${coreutils-static.tests.get-version} - echo ${diffutils.tests.get-version} - echo ${findutils.tests.get-version} - echo ${gawk-mes.tests.get-version} - echo ${gawk.tests.get-version} - echo ${gcc46.tests.get-version} - echo ${gcc46-cxx.tests.hello-world} - echo ${gcc8.tests.hello-world} - echo ${gcc-latest.tests.hello-world} - echo ${gnugrep.tests.get-version} - echo ${gnused.tests.get-version} - echo ${gnused-mes.tests.get-version} - echo ${gnutar.tests.get-version} - echo ${gnutar-musl.tests.get-version} - echo ${gnutar-latest.tests.get-version} - echo ${gzip.tests.get-version} - echo ${heirloom.tests.get-version} - echo ${mes.compiler.tests.get-version} - echo ${musl.tests.hello-world} - echo ${tinycc-mes.compiler.tests.chain} - echo ${tinycc-musl.compiler.tests.hello-world} - echo ${xz.tests.get-version} - mkdir ''${out} - ''; - }) + test = kaem.runCommand "minimal-bootstrap-test" { } '' + echo ${bash.tests.get-version} + echo ${bash_2_05.tests.get-version} + echo ${binutils.tests.get-version} + echo ${bzip2.tests.get-version} + echo ${coreutils-musl.tests.get-version} + echo ${coreutils-static.tests.get-version} + echo ${diffutils.tests.get-version} + echo ${findutils.tests.get-version} + echo ${gawk-mes.tests.get-version} + echo ${gawk.tests.get-version} + echo ${gcc46.tests.get-version} + echo ${gcc46-cxx.tests.hello-world} + echo ${gcc8.tests.hello-world} + echo ${gcc-latest.tests.hello-world} + echo ${gnugrep.tests.get-version} + echo ${gnused.tests.get-version} + echo ${gnused-mes.tests.get-version} + echo ${gnutar.tests.get-version} + echo ${gnutar-latest.tests.get-version} + echo ${gnutar-musl.tests.get-version} + echo ${gnutar-static.tests.get-version} + echo ${gzip.tests.get-version} + echo ${heirloom.tests.get-version} + echo ${mes.compiler.tests.get-version} + echo ${musl.tests.hello-world} + echo ${tinycc-mes.compiler.tests.chain} + echo ${tinycc-musl.compiler.tests.hello-world} + echo ${xz.tests.get-version} + mkdir ''${out} + ''; + } + ) diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/common.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/common.nix new file mode 100644 index 000000000000..7301d47a01de --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/common.nix @@ -0,0 +1,11 @@ +{ lib }: +{ + meta = { + description = "GNU implementation of the `tar' archiver"; + homepage = "https://www.gnu.org/software/tar"; + license = lib.licenses.gpl3Plus; + teams = [ lib.teams.minimal-bootstrap ]; + mainProgram = "tar"; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/latest.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/latest.nix index 094e1c1250d1..c52636ca0273 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/latest.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/latest.nix @@ -15,6 +15,7 @@ gnutarBoot, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "gnutar"; version = "1.35"; @@ -25,7 +26,7 @@ let in bash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ gcc @@ -45,15 +46,6 @@ bash.runCommand "${pname}-${version}" ${result}/bin/tar --version mkdir $out ''; - - meta = { - description = "GNU implementation of the `tar' archiver"; - homepage = "https://www.gnu.org/software/tar"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - mainProgram = "tar"; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/mes.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/mes.nix index 96df8b509185..4cad3b1abf14 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/mes.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/mes.nix @@ -10,6 +10,7 @@ gnugrep, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "gnutar"; # >= 1.13 is incompatible with mes-libc version = "1.12"; @@ -21,7 +22,7 @@ let in bash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler @@ -36,15 +37,6 @@ bash.runCommand "${pname}-${version}" ${result}/bin/tar --version mkdir $out ''; - - meta = { - description = "GNU implementation of the `tar' archiver"; - homepage = "https://www.gnu.org/software/tar"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - mainProgram = "tar"; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/musl.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/musl.nix index 97900363d6c7..08d77ab5d1ae 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/musl.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/musl.nix @@ -12,6 +12,7 @@ let # gnutar with musl preserves modify times, allowing make to not try # rebuilding pregenerated files + inherit (import ./common.nix { inherit lib; }) meta; pname = "gnutar-musl"; version = "1.12"; @@ -22,7 +23,7 @@ let in bash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler @@ -37,15 +38,6 @@ bash.runCommand "${pname}-${version}" ${result}/bin/tar --version mkdir $out ''; - - meta = { - description = "GNU implementation of the `tar' archiver"; - homepage = "https://www.gnu.org/software/tar"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - mainProgram = "tar"; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix new file mode 100644 index 000000000000..ec325ad8895d --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnutar/static.nix @@ -0,0 +1,72 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutarBoot, + gzip, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "gnutar-static"; + version = "1.35"; + + src = fetchurl { + url = "mirror://gnu/tar/tar-${version}.tar.gz"; + hash = "sha256-FNVeMgY+qVJuBX+/Nfyr1TN452l4fv95GcN1WwLStX4="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutarBoot + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/tar --version + mkdir $out + ''; + } + '' + # Unpack + tar xzf ${src} + cd tar-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From f50c0e7c8c4210436b8795b5b2f8cdec16215388 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 22:55:29 -0700 Subject: [PATCH 008/115] minimal-bootstrap.binutils-static: init at 2.41 --- .../minimal-bootstrap/binutils/common.nix | 10 ++ .../minimal-bootstrap/binutils/default.nix | 11 +- .../minimal-bootstrap/binutils/static.nix | 101 ++++++++++++++++++ .../linux/minimal-bootstrap/default.nix | 7 ++ 4 files changed, 120 insertions(+), 9 deletions(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/binutils/common.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/binutils/common.nix b/pkgs/os-specific/linux/minimal-bootstrap/binutils/common.nix new file mode 100644 index 000000000000..64982339f3fc --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/binutils/common.nix @@ -0,0 +1,10 @@ +{ lib }: +{ + meta = { + description = "Tools for manipulating binaries (linker, assembler, etc.)"; + homepage = "https://www.gnu.org/software/binutils"; + license = lib.licenses.gpl3Plus; + teams = [ lib.teams.minimal-bootstrap ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/binutils/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/binutils/default.nix index 8cee29b10634..a84d35f09b56 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/binutils/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/binutils/default.nix @@ -18,6 +18,7 @@ let # Based on https://github.com/ZilchOS/bootstrap-from-tcc/blob/2e0c68c36b3437386f786d619bc9a16177f2e149/using-nix/2a1-static-binutils.nix + inherit (import ./common.nix { inherit lib; }) meta; pname = "binutils"; version = "2.41"; @@ -53,7 +54,7 @@ let in bash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler @@ -73,14 +74,6 @@ bash.runCommand "${pname}-${version}" ${result}/bin/ld --version mkdir $out ''; - - meta = { - description = "Tools for manipulating binaries (linker, assembler, etc.)"; - homepage = "https://www.gnu.org/software/binutils"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix new file mode 100644 index 000000000000..b33f296e89a5 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/binutils/static.nix @@ -0,0 +1,101 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnupatch, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "binutils-static"; + version = "2.41"; + + src = fetchurl { + url = "mirror://gnu/binutils/binutils-${version}.tar.xz"; + hash = "sha256-rppXieI0WeWWBuZxRyPy0//DHAMXQZHvDQFb3wYAdFA="; + }; + + patches = [ + # Make binutils output deterministic by default. + ./deterministic.patch + ]; + + configureFlags = [ + "CC=musl-gcc" + "LDFLAGS=--static" + "--prefix=${placeholder "out"}" + "--build=${buildPlatform.config}" + "--host=${hostPlatform.config}" + + "--with-sysroot=/" + "--enable-deterministic-archives" + # depends on bison + "--disable-gprofng" + + # Turn on --enable-new-dtags by default to make the linker set + # RUNPATH instead of RPATH on binaries. This is important because + # RUNPATH can be overridden using LD_LIBRARY_PATH at runtime. + "--enable-new-dtags" + + # By default binutils searches $libdir for libraries. This brings in + # libbfd and libopcodes into a default visibility. Drop default lib + # path to force users to declare their use of these libraries. + "--with-lib-path=:" + ]; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnupatch + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/ld --version + mkdir $out + ''; + } + '' + # Unpack + tar xf ${src} + cd binutils-${version} + + # Patch + ${lib.concatMapStringsSep "\n" (f: "patch -Np1 -i ${f}") patches} + + # Configure + bash ./configure ${lib.concatStringsSep " " configureFlags} + + # Build + make -j $NIX_BUILD_CORES + + # Install + # strip to remove build dependency store path references + make -j $NIX_BUILD_CORES install-strip + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 5caa3759a537..c8e502c7b7be 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -46,6 +46,12 @@ lib.makeScope gnutar = gnutar-musl; }; + binutils-static = callPackage ./binutils/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + bzip2 = callPackage ./bzip2 { tinycc = tinycc-musl; gnumake = gnumake-musl; @@ -249,6 +255,7 @@ lib.makeScope echo ${bash.tests.get-version} echo ${bash_2_05.tests.get-version} echo ${binutils.tests.get-version} + echo ${binutils-static.tests.get-version} echo ${bzip2.tests.get-version} echo ${coreutils-musl.tests.get-version} echo ${coreutils-static.tests.get-version} From 43b2d79f7ad725f6976e9e31378377c3ce5855a8 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 23:37:56 -0700 Subject: [PATCH 009/115] minimal-bootstrap.zlib: init at 1.3.1 --- .../linux/minimal-bootstrap/default.nix | 6 ++ .../linux/minimal-bootstrap/zlib/default.nix | 60 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index c8e502c7b7be..5d56248c3c7d 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -249,6 +249,12 @@ lib.makeScope gnutar = gnutar-musl; }; + zlib = callPackage ./zlib { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + inherit (callPackage ./utils.nix { }) derivationWithMeta writeTextFile writeText; test = kaem.runCommand "minimal-bootstrap-test" { } '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix new file mode 100644 index 000000000000..b91645e9c5d4 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/zlib/default.nix @@ -0,0 +1,60 @@ +{ + lib, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gnutar, + xz, +}: +let + pname = "zlib"; + version = "1.3.1"; + + src = fetchurl { + url = "https://github.com/madler/zlib/releases/download/v${version}/zlib-${version}.tar.xz"; + hash = "sha256-OO+WuN/lENQnB9nHgYd5FHklQRM+GHCEFGO/pz+IPjI="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gnutar + xz + ]; + + meta = { + description = "Lossless data-compression library"; + homepage = "https://zlib.net"; + license = lib.licenses.zlib; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd zlib-${version} + + # Configure + export CC=musl-gcc + bash ./configure --prefix=$out + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From 62d8287bcf145db0769d407095523ee16938cf22 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 23:40:43 -0700 Subject: [PATCH 010/115] minimal-bootstrap.python: init at 3.13.7 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../minimal-bootstrap/python/default.nix | 98 ++++++++++++++++ .../python/no-ldconfig.patch | 107 ++++++++++++++++++ 3 files changed, 212 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/python/default.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/python/no-ldconfig.patch diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 5d56248c3c7d..67a4c3db5acf 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -216,6 +216,12 @@ lib.makeScope gnumake = gnumake-musl; }; + python = callPackage ./python { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + stage0-posix = callPackage ./stage0-posix { }; inherit (self.stage0-posix) @@ -284,6 +290,7 @@ lib.makeScope echo ${heirloom.tests.get-version} echo ${mes.compiler.tests.get-version} echo ${musl.tests.hello-world} + echo ${python.tests.get-version} echo ${tinycc-mes.compiler.tests.chain} echo ${tinycc-musl.compiler.tests.hello-world} echo ${xz.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix new file mode 100644 index 000000000000..68c55142e525 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/python/default.nix @@ -0,0 +1,98 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnupatch, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, + zlib, +}: +let + pname = "python"; + version = "3.13.7"; + + src = fetchurl { + url = "https://www.python.org/ftp/python/${version}/Python-${version}.tar.xz"; + hash = "sha256-VGL5CZ39MOI43vg8cdkYl9jKpf9uvHpQ8U1IAs2qp5o="; + }; + + patches = [ + # Disable the use of ldconfig in ctypes.util.find_library (since + # ldconfig doesn't work on NixOS), and don't use + # ctypes.util.find_library during the loading of the uuid module + # (since it will do a futile invocation of gcc (!) to find + # libuuid, slowing down program startup a lot). + ./no-ldconfig.patch + ]; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnupatch + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/python3 --version + mkdir $out + ''; + + meta = { + description = "A high-level dynamically-typed programming language"; + homepage = "https://www.python.org"; + license = lib.licenses.psfl; + mainProgram = "python3"; + platforms = lib.platforms.linux; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd Python-${version} + + # Patch + ${lib.concatMapStringsSep "\n" (f: "patch -Np1 -i ${f}") patches} + + # Configure + export CC=musl-gcc + export C_INCLUDE_PATH="${zlib}/include" + export LIBRARY_PATH="${zlib}/lib" + export LDFLAGS="-Wl,-rpath,${zlib}/lib -L${zlib}/lib" + export LD_LIBRARY_PATH="$LIBRARY_PATH" + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/python/no-ldconfig.patch b/pkgs/os-specific/linux/minimal-bootstrap/python/no-ldconfig.patch new file mode 100644 index 000000000000..ca6a76d0ffd9 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/python/no-ldconfig.patch @@ -0,0 +1,107 @@ +From 5330b6af9f832af59aa5c61d9ef6971053a8e709 Mon Sep 17 00:00:00 2001 +From: Jonathan Ringer +Date: Mon, 9 Nov 2020 10:24:35 -0800 +Subject: [PATCH] CPython: Don't use ldconfig + +--- + Lib/ctypes/util.py | 77 ++-------------------------------------------- + 1 file changed, 2 insertions(+), 75 deletions(-) + +diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py +index 0c2510e161..7fb98af308 100644 +--- a/Lib/ctypes/util.py ++++ b/Lib/ctypes/util.py +@@ -100,53 +100,7 @@ def _is_elf(filename): + return thefile.read(4) == elf_header + + def _findLib_gcc(name): +- # Run GCC's linker with the -t (aka --trace) option and examine the +- # library name it prints out. The GCC command will fail because we +- # haven't supplied a proper program with main(), but that does not +- # matter. +- expr = os.fsencode(r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name)) +- +- c_compiler = shutil.which('gcc') +- if not c_compiler: +- c_compiler = shutil.which('cc') +- if not c_compiler: +- # No C compiler available, give up +- return None +- +- temp = tempfile.NamedTemporaryFile() +- try: +- args = [c_compiler, '-Wl,-t', '-o', temp.name, '-l' + name] +- +- env = dict(os.environ) +- env['LC_ALL'] = 'C' +- env['LANG'] = 'C' +- try: +- proc = subprocess.Popen(args, +- stdout=subprocess.PIPE, +- stderr=subprocess.STDOUT, +- env=env) +- except OSError: # E.g. bad executable +- return None +- with proc: +- trace = proc.stdout.read() +- finally: +- try: +- temp.close() +- except FileNotFoundError: +- # Raised if the file was already removed, which is the normal +- # behaviour of GCC if linking fails +- pass +- res = re.findall(expr, trace) +- if not res: +- return None +- +- for file in res: +- # Check if the given file is an elf file: gcc can report +- # some files that are linker scripts and not actual +- # shared objects. See bpo-41976 for more details +- if not _is_elf(file): +- continue +- return os.fsdecode(file) ++ return None + + + if sys.platform == "sunos5": +@@ -268,34 +222,7 @@ def find_library(name, is64 = False): + else: + + def _findSoname_ldconfig(name): +- import struct +- if struct.calcsize('l') == 4: +- machine = os.uname().machine + '-32' +- else: +- machine = os.uname().machine + '-64' +- mach_map = { +- 'x86_64-64': 'libc6,x86-64', +- 'ppc64-64': 'libc6,64bit', +- 'sparc64-64': 'libc6,64bit', +- 's390x-64': 'libc6,64bit', +- 'ia64-64': 'libc6,IA-64', +- } +- abi_type = mach_map.get(machine, 'libc6') +- +- # XXX assuming GLIBC's ldconfig (with option -p) +- regex = r'\s+(lib%s\.[^\s]+)\s+\(%s' +- regex = os.fsencode(regex % (re.escape(name), abi_type)) +- try: +- with subprocess.Popen(['/sbin/ldconfig', '-p'], +- stdin=subprocess.DEVNULL, +- stderr=subprocess.DEVNULL, +- stdout=subprocess.PIPE, +- env={'LC_ALL': 'C', 'LANG': 'C'}) as p: +- res = re.search(regex, p.stdout.read()) +- if res: +- return os.fsdecode(res.group(1)) +- except OSError: +- pass ++ return None + + def _findLib_ld(name): + # See issue #9998 for why this is needed +-- +2.33.1 + From 7337fbcf70b920bacabf58c3c1614186b3132bd4 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 23:51:15 -0700 Subject: [PATCH 011/115] minimal-bootstrap.gnum4: init at 1.4.20 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../linux/minimal-bootstrap/gnum4/default.nix | 79 +++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 67a4c3db5acf..81ec77e88f89 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -134,6 +134,12 @@ lib.makeScope tinycc = tinycc-mes; }; + gnum4 = callPackage ./gnum4 { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + gnumake = callPackage ./gnumake { tinycc = tinycc-bootstrappable; }; gnumake-musl = callPackage ./gnumake/musl.nix { @@ -280,6 +286,7 @@ lib.makeScope echo ${gcc8.tests.hello-world} echo ${gcc-latest.tests.hello-world} echo ${gnugrep.tests.get-version} + echo ${gnum4.tests.get-version} echo ${gnused.tests.get-version} echo ${gnused-mes.tests.get-version} echo ${gnutar.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix new file mode 100644 index 000000000000..b999ce6369bf --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnum4/default.nix @@ -0,0 +1,79 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + pname = "gnum4"; + version = "1.4.20"; + + src = fetchurl { + url = "mirror://gnu/m4/m4-${version}.tar.xz"; + hash = "sha256-4jbqOhzPX2wnCxxLtgcm83H6SUWajqrryQshazKNrys="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/m4 --version + mkdir $out + ''; + + meta = { + description = "GNU M4, a macro processor"; + homepage = "https://www.gnu.org/software/m4/"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.unix; + mainProgram = "m4"; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd m4-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From ab71959982153e8e311e89409e1f365a31188126 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 23:53:00 -0700 Subject: [PATCH 012/115] minimal-bootstrap.bison: init at 3.8.2 --- .../linux/minimal-bootstrap/bison/default.nix | 80 +++++++++++++++++++ .../linux/minimal-bootstrap/default.nix | 7 ++ 2 files changed, 87 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix new file mode 100644 index 000000000000..c13629ad99c7 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/bison/default.nix @@ -0,0 +1,80 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, + gnum4, +}: +let + pname = "bison"; + version = "3.8.2"; + + src = fetchurl { + url = "mirror://gnu/bison/bison-${version}.tar.xz"; + hash = "sha256-m7oCFMz38QecXVkhAEUie89hlRmEDr+oDNOEnP9aW/I="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + gnum4 + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/bison --version + mkdir $out + ''; + + meta = { + description = "Yacc-compatible parser generator"; + homepage = "https://www.gnu.org/software/bison/"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd bison-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 81ec77e88f89..6994d980b51a 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -52,6 +52,12 @@ lib.makeScope gnutar = gnutar-latest; }; + bison = callPackage ./bison { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + bzip2 = callPackage ./bzip2 { tinycc = tinycc-musl; gnumake = gnumake-musl; @@ -274,6 +280,7 @@ lib.makeScope echo ${bash_2_05.tests.get-version} echo ${binutils.tests.get-version} echo ${binutils-static.tests.get-version} + echo ${bison.tests.get-version} echo ${bzip2.tests.get-version} echo ${coreutils-musl.tests.get-version} echo ${coreutils-static.tests.get-version} From d5454dc3f2b04e211c3e1cc420a5b3b6eced8104 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 21:42:55 -0700 Subject: [PATCH 013/115] minimal-bootstrap.linux-headers: 4.14.67 -> 6.5.6, build from source --- .../linux/minimal-bootstrap/default.nix | 6 ++- .../linux-headers/default.nix | 49 ++++++++++++------- 2 files changed, 35 insertions(+), 20 deletions(-) diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 6994d980b51a..70c374e96a3f 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -205,7 +205,11 @@ lib.makeScope heirloom-devtools = callPackage ./heirloom-devtools { tinycc = tinycc-mes; }; - linux-headers = callPackage ./linux-headers { bash = bash_2_05; }; + linux-headers = callPackage ./linux-headers { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; ln-boot = callPackage ./ln-boot { }; diff --git a/pkgs/os-specific/linux/minimal-bootstrap/linux-headers/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/linux-headers/default.nix index 255e6c1ee62a..7fa036e53b2c 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/linux-headers/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/linux-headers/default.nix @@ -2,26 +2,25 @@ lib, fetchurl, bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, gnutar, xz, }: let - # WARNING: You probably don't want to use this package outside minimal-bootstrap - # - # We need some set of Linux kernel headers to build our bootstrap packages - # (gcc/binutils/glibc etc.) against. As long as it compiles it is "good enough". - # Therefore the requirement for correctness, completeness, platform-specific - # features, and being up-to-date, are very loose. - # - # Rebuilding the Linux headers from source correctly is something we can defer - # till we have access to gcc/binutils/perl. For now we can use Guix's assembled - # kernel header distribution and assume it's good enough. pname = "linux-headers"; - version = "4.14.67"; + version = "6.5.6"; src = fetchurl { - url = "mirror://gnu/gnu/guix/bootstrap/i686-linux/20190815/linux-libre-headers-stripped-4.14.67-i686-linux.tar.xz"; - sha256 = "0sm2z9x4wk45bh6qfs94p0w1d6hsy6dqx9sw38qsqbvxwa1qzk8s"; + url = "mirror://kernel/linux/kernel/v${lib.versions.major version}.x/linux-${version}.tar.xz"; + hash = "sha256-eONtQhRUcFHCTfIUD0zglCjWxRWtmnGziyjoCUqV0vY="; }; in bash.runCommand "${pname}-${version}" @@ -29,6 +28,15 @@ bash.runCommand "${pname}-${version}" inherit pname version; nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils gnutar xz ]; @@ -36,17 +44,20 @@ bash.runCommand "${pname}-${version}" meta = { description = "Header files and scripts for Linux kernel"; license = lib.licenses.gpl2Only; - teams = [ lib.teams.minimal-bootstrap ]; platforms = lib.platforms.linux; + teams = [ lib.teams.minimal-bootstrap ]; }; } '' # Unpack - cp ${src} linux-headers.tar.xz - unxz linux-headers.tar.xz - tar xf linux-headers.tar + tar xf ${src} + cd linux-${version} + + # Build + make -j $NIX_BUILD_CORES CC=musl-gcc HOSTCC=musl-gcc ARCH=x86 headers # Install - mkdir $out - cp -r include $out + find usr/include -name '.*' -exec rm {} + + mkdir -p $out + cp -rv usr/include $out/ '' From 298517c1d6d6c68fccb8fb7bc8a77ad7271e2826 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Sun, 8 Oct 2023 21:46:19 -0700 Subject: [PATCH 014/115] minimal-bootstrap.busybox-static: init at 1.36.1 --- .../busybox/busybox-in-store.patch | 23 +++++ .../minimal-bootstrap/busybox/static.nix | 92 +++++++++++++++++++ .../linux/minimal-bootstrap/default.nix | 7 ++ 3 files changed, 122 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/busybox/busybox-in-store.patch create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/busybox/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/busybox/busybox-in-store.patch b/pkgs/os-specific/linux/minimal-bootstrap/busybox/busybox-in-store.patch new file mode 100644 index 000000000000..2d356b66b3ae --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/busybox/busybox-in-store.patch @@ -0,0 +1,23 @@ +Allow BusyBox to be invoked as "-busybox". This is +necessary when it's run from the Nix store as -busybox during +stdenv bootstrap. +--- a/libbb/appletlib.c ++++ b/libbb/appletlib.c +@@ -947,7 +947,7 @@ void FAST_FUNC run_applet_no_and_exit(int applet_no, const char *name, char **ar + static NORETURN void run_applet_and_exit(const char *name, char **argv) + { + # if ENABLE_BUSYBOX +- if (is_prefixed_with(name, "busybox")) ++ if (strstr(name, "busybox") != 0) + exit(busybox_main(/*unused:*/ 0, argv)); + # endif + # if NUM_APPLETS > 0 +@@ -1045,7 +1045,7 @@ int main(int argc UNUSED_PARAM, char **argv) + + lbb_prepare("busybox" IF_FEATURE_INDIVIDUAL(, argv)); + # if !ENABLE_BUSYBOX +- if (argv[1] && is_prefixed_with(bb_basename(argv[0]), "busybox")) ++ if (argv[1] && strstr(bb_basename(argv[0]), "busybox") != 0) + argv++; + # endif + applet_name = argv[0]; diff --git a/pkgs/os-specific/linux/minimal-bootstrap/busybox/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/busybox/static.nix new file mode 100644 index 000000000000..6fc7b19dd3ae --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/busybox/static.nix @@ -0,0 +1,92 @@ +{ + lib, + fetchurl, + bash, + gcc, + musl, + binutils, + linux-headers, + gnumake, + gnupatch, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + bzip2, +}: +let + pname = "busybox-static"; + version = "1.36.1"; + + src = fetchurl { + url = "https://busybox.net/downloads/busybox-${version}.tar.bz2"; + hash = "sha256-uMwkyVdNgJ5yecO+NJeVxdXOtv3xnKcJ+AzeUOR94xQ="; + }; + + patches = [ + ./busybox-in-store.patch + ]; + + busyboxConfig = [ + "CC=musl-gcc" + "HOSTCC=musl-gcc" + "CFLAGS=-I${linux-headers}/include" + "KCONFIG_NOTIMESTAMP=y" + "CONFIG_PREFIX=${placeholder "out"}" + "CONFIG_STATIC=y" + ]; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnupatch + gnused + gnugrep + gawk + diffutils + findutils + gnutar + bzip2 + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result} + mkdir $out + ''; + + meta = { + description = "Tiny versions of common UNIX utilities in a single small executable"; + homepage = "https://busybox.net/"; + license = lib.licenses.gpl2Only; + platforms = lib.platforms.linux; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd busybox-${version} + + # Patch + ${lib.concatMapStringsSep "\n" (f: "patch -Np1 -i ${f}") patches} + + # Configure + BUSYBOX_FLAGS="${lib.concatStringsSep " " busyboxConfig}" + make -j $NIX_BUILD_CORES $BUSYBOX_FLAGS defconfig + + # Build + make -j $NIX_BUILD_CORES $BUSYBOX_FLAGS + + # Install + cp busybox $out + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 70c374e96a3f..22e9e8e4249f 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -58,6 +58,12 @@ lib.makeScope gnutar = gnutar-latest; }; + busybox-static = callPackage ./busybox/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + bzip2 = callPackage ./bzip2 { tinycc = tinycc-musl; gnumake = gnumake-musl; @@ -285,6 +291,7 @@ lib.makeScope echo ${binutils.tests.get-version} echo ${binutils-static.tests.get-version} echo ${bison.tests.get-version} + echo ${busybox-static.tests.get-version} echo ${bzip2.tests.get-version} echo ${coreutils-musl.tests.get-version} echo ${coreutils-static.tests.get-version} From 58ed7d66a68538a50e2a923b208877acf71db6b1 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 21:06:42 -0700 Subject: [PATCH 015/115] minimal-bootstrap.gnugrep-static: init at 3.11 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../minimal-bootstrap/gnugrep/static.nix | 81 +++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 22e9e8e4249f..132ac09afbe1 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -146,6 +146,12 @@ lib.makeScope tinycc = tinycc-mes; }; + gnugrep-static = callPackage ./gnugrep/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + gnum4 = callPackage ./gnum4 { gcc = gcc-latest; gnumake = gnumake-musl; @@ -304,6 +310,7 @@ lib.makeScope echo ${gcc8.tests.hello-world} echo ${gcc-latest.tests.hello-world} echo ${gnugrep.tests.get-version} + echo ${gnugrep-static.tests.get-version} echo ${gnum4.tests.get-version} echo ${gnused.tests.get-version} echo ${gnused-mes.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix new file mode 100644 index 000000000000..696a70a3faff --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnugrep/static.nix @@ -0,0 +1,81 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + pname = "gnugrep-static"; + version = "3.11"; + + src = fetchurl { + url = "mirror://gnu/grep/grep-${version}.tar.xz"; + hash = "sha256-HbKu3eidDepCsW2VKPiUyNFdrk4ZC1muzHj1qVEnbqs="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/grep --version + mkdir $out + ''; + + meta = { + description = "GNU implementation of the Unix grep command"; + homepage = "https://www.gnu.org/software/grep"; + license = lib.licenses.gpl3Plus; + mainProgram = "grep"; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd grep-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + rm $out/bin/{egrep,fgrep} + '' From 395cfc24a6f4b08cc1ef811cfd1bd58b2abd4a77 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 21:14:13 -0700 Subject: [PATCH 016/115] minimal-bootstrap.gawk-static: init at 5.3.2 --- .../linux/minimal-bootstrap/default.nix | 16 +++- .../linux/minimal-bootstrap/gawk/static.nix | 73 +++++++++++++++++++ 2 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 132ac09afbe1..f7607633618b 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -117,6 +117,7 @@ lib.makeScope # FIXME: not sure why new gawk doesn't work gawk = gawk-mes; }; + gcc46-cxx = callPackage ./gcc/4.6.cxx.nix { gcc = gcc46; gnumake = gnumake-musl; @@ -174,6 +175,7 @@ lib.makeScope tinycc = tinycc-musl; gnused = gnused-mes; }; + gnused-mes = callPackage ./gnused/mes.nix { bash = bash_2_05; tinycc = tinycc-bootstrappable; @@ -226,6 +228,7 @@ lib.makeScope ln-boot = callPackage ./ln-boot { }; mes = callPackage ./mes { }; + mes-libc = callPackage ./mes/libc.nix { }; musl11-intermediate = callPackage ./musl/1.1.nix { @@ -233,6 +236,7 @@ lib.makeScope tinycc = tinycc-mes; gnused = gnused-mes; }; + musl11 = callPackage ./musl/1.1.nix { bash = bash_2_05; tinycc = tinycc-musl-intermediate; @@ -260,7 +264,9 @@ lib.makeScope ; tinycc-bootstrappable = lib.recurseIntoAttrs (callPackage ./tinycc/bootstrappable.nix { }); + tinycc-mes = lib.recurseIntoAttrs (callPackage ./tinycc/mes.nix { }); + tinycc-musl-intermediate = lib.recurseIntoAttrs ( callPackage ./tinycc/musl.nix { bash = bash_2_05; @@ -268,6 +274,7 @@ lib.makeScope tinycc = tinycc-mes; } ); + tinycc-musl = lib.recurseIntoAttrs ( callPackage ./tinycc/musl.nix { bash = bash_2_05; @@ -276,6 +283,12 @@ lib.makeScope } ); + gawk-static = callPackage ./gawk/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + xz = callPackage ./xz { bash = bash_2_05; tinycc = tinycc-musl; @@ -303,8 +316,9 @@ lib.makeScope echo ${coreutils-static.tests.get-version} echo ${diffutils.tests.get-version} echo ${findutils.tests.get-version} - echo ${gawk-mes.tests.get-version} echo ${gawk.tests.get-version} + echo ${gawk-mes.tests.get-version} + echo ${gawk-static.tests.get-version} echo ${gcc46.tests.get-version} echo ${gcc46-cxx.tests.hello-world} echo ${gcc8.tests.hello-world} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix new file mode 100644 index 000000000000..e468b9c3e704 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gawk/static.nix @@ -0,0 +1,73 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + gzip, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "gawk-static"; + version = "5.3.2"; + + src = fetchurl { + url = "mirror://gnu/gawk/gawk-${version}.tar.gz"; + hash = "sha256-hjmhqI+0EaG+AmY3OdA+kCptMTtcb+Ak0L/rM0GhmhE="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/awk --version + mkdir $out + ''; + } + '' + # Unpack + tar xf ${src} + cd gawk-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + rm $out/bin/gawkbug + '' From bac6125f3e896bbd683f9a88aca1487a3602c076 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 21:36:00 -0700 Subject: [PATCH 017/115] minimal-bootstrap.glibc: init at 2.38 --- .../linux/minimal-bootstrap/default.nix | 9 ++ .../linux/minimal-bootstrap/glibc/default.nix | 112 ++++++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/glibc/default.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index f7607633618b..d96df87c32bc 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -142,6 +142,14 @@ lib.makeScope gawk = gawk-mes; }; + glibc = callPackage ./glibc { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + gnugrep = gnugrep-static; + gawk = gawk-static; + }; + gnugrep = callPackage ./gnugrep { bash = bash_2_05; tinycc = tinycc-mes; @@ -323,6 +331,7 @@ lib.makeScope echo ${gcc46-cxx.tests.hello-world} echo ${gcc8.tests.hello-world} echo ${gcc-latest.tests.hello-world} + echo ${glibc.tests.hello-world} echo ${gnugrep.tests.get-version} echo ${gnugrep-static.tests.get-version} echo ${gnum4.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/glibc/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/glibc/default.nix new file mode 100644 index 000000000000..c2cfa6fc018c --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/glibc/default.nix @@ -0,0 +1,112 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + binutils, + linux-headers, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + python, + bison, + gnutar, + xz, +}: +let + pname = "glibc"; + version = "2.38"; + + src = fetchurl { + url = "mirror://gnu/libc/glibc-${version}.tar.xz"; + hash = "sha256-+4KZiZiyspllRnvBtp0VLpwwfSzzAcnq+0VVt3DvP9I="; + }; + + linkerFile = + { + x86_64-linux = "ld-linux-x86-64"; + i686-linux = "ld-linux"; + } + .${buildPlatform.system}; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + python + bison + gnutar + xz + ]; + + passthru.tests.hello-world = + result: + bash.runCommand "${pname}-simple-program-${version}" + { + nativeBuildInputs = [ + gcc + binutils + ]; + } + '' + cat <> test.c + #include + int main() { + printf("Hello World!\n"); + return 0; + } + EOF + gcc \ + -Wl,--dynamic-linker=${result}/lib/${linkerFile}.so.2 \ + -B${result}/lib \ + -I${result}/include \ + -o test test.c + ./test + mkdir $out + ''; + + meta = { + description = "The GNU C Library"; + homepage = "https://www.gnu.org/software/libc/"; + license = lib.licenses.lgpl2Plus; + platforms = lib.platforms.linux; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd glibc-${version} + + # Configure + mkdir build + cd build + # libstdc++.so is built against musl and fails to link + export CXX=false + bash ../configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + --with-headers=${linux-headers}/include + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES INSTALL_UNCOMPRESSED=yes install + find $out/{bin,sbin,lib,libexec} -type f -exec strip --strip-unneeded {} + || true + '' From e336b7c768c5196244b05a12e0149af4d901b532 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 21:40:19 -0700 Subject: [PATCH 018/115] minimal-bootstrap.gnused-static: init at 4.9 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../linux/minimal-bootstrap/gnused/static.nix | 72 +++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index d96df87c32bc..94e4a5176154 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -189,6 +189,12 @@ lib.makeScope tinycc = tinycc-bootstrappable; }; + gnused-static = callPackage ./gnused/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + gnutar = callPackage ./gnutar/mes.nix { bash = bash_2_05; tinycc = tinycc-mes; @@ -337,6 +343,7 @@ lib.makeScope echo ${gnum4.tests.get-version} echo ${gnused.tests.get-version} echo ${gnused-mes.tests.get-version} + echo ${gnused-static.tests.get-version} echo ${gnutar.tests.get-version} echo ${gnutar-latest.tests.get-version} echo ${gnutar-musl.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix new file mode 100644 index 000000000000..ef6d510ce804 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnused/static.nix @@ -0,0 +1,72 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "gnused-static"; + version = "4.9"; + + src = fetchurl { + url = "mirror://gnu/sed/sed-${version}.tar.xz"; + hash = "sha256-biJrcy4c1zlGStaGK9Ghq6QteYKSLaelNRljHSSXUYE="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/sed --version + mkdir $out + ''; + } + '' + # Unpack + tar xf ${src} + cd sed-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From 5d403f7f0d34060f1c383a3c95ca012fb44dcae5 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 22:16:39 -0700 Subject: [PATCH 019/115] minimal-bootstrap.diffutils-static: init at 3.12 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../minimal-bootstrap/diffutils/static.nix | 80 +++++++++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 94e4a5176154..6e3eef9d712d 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -90,6 +90,12 @@ lib.makeScope gnutar = gnutar-musl; }; + diffutils-static = callPackage ./diffutils/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + findutils = callPackage ./findutils { tinycc = tinycc-musl; gnumake = gnumake-musl; @@ -329,6 +335,7 @@ lib.makeScope echo ${coreutils-musl.tests.get-version} echo ${coreutils-static.tests.get-version} echo ${diffutils.tests.get-version} + echo ${diffutils-static.tests.get-version} echo ${findutils.tests.get-version} echo ${gawk.tests.get-version} echo ${gawk-mes.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix new file mode 100644 index 000000000000..632c02a687d7 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/diffutils/static.nix @@ -0,0 +1,80 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + pname = "diffutils-static"; + version = "3.12"; + + src = fetchurl { + url = "mirror://gnu/diffutils/diffutils-${version}.tar.xz"; + hash = "sha256-fIt/n8hgkUH96pzs6FJJ0whiQ5H/Yd7a9Sj8szdyff0="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/diff --version + mkdir $out + ''; + + meta = { + description = "Commands for showing the differences between files (diff, cmp, etc.)"; + homepage = "https://www.gnu.org/software/diffutils/diffutils.html"; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd diffutils-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static \ + ac_cv_path_PR_PROGRAM=pr + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From e20d10e02b446f72910c6a590cba5f6a309aaf05 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 22:25:51 -0700 Subject: [PATCH 020/115] minimal-bootstrap.findutils-static: init at 4.9.0 --- .../linux/minimal-bootstrap/default.nix | 6 ++ .../minimal-bootstrap/findutils/static.nix | 80 +++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 6e3eef9d712d..3b1b73ed8170 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -107,6 +107,11 @@ lib.makeScope tinycc = tinycc-mes; gnused = gnused-mes; }; + findutils-static = callPackage ./findutils/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; gawk = callPackage ./gawk { bash = bash_2_05; @@ -337,6 +342,7 @@ lib.makeScope echo ${diffutils.tests.get-version} echo ${diffutils-static.tests.get-version} echo ${findutils.tests.get-version} + echo ${findutils-static.tests.get-version} echo ${gawk.tests.get-version} echo ${gawk-mes.tests.get-version} echo ${gawk-static.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix new file mode 100644 index 000000000000..cdace49dd296 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/findutils/static.nix @@ -0,0 +1,80 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + pname = "findutils-static"; + version = "4.9.0"; + + src = fetchurl { + url = "mirror://gnu/findutils/findutils-${version}.tar.xz"; + hash = "sha256-or+4wJ1DZ3DtxZ9Q+kg+eFsWGjt7nVR1c8sIBl/UYv4="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/find --version + mkdir $out + ''; + + meta = { + description = "GNU Find Utilities, the basic directory searching utilities of the GNU operating system"; + homepage = "https://www.gnu.org/software/findutils"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd findutils-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + rm $out/bin/updatedb + '' From 12fbd92c7ed8d496df1848e8f5619bf0cfd68b5a Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 22:32:13 -0700 Subject: [PATCH 021/115] minimal-bootstrap.gnumake-static: init at 4.4.1 --- .../linux/minimal-bootstrap/default.nix | 8 ++ .../minimal-bootstrap/gnumake/common.nix | 11 +++ .../minimal-bootstrap/gnumake/default.nix | 12 +-- .../linux/minimal-bootstrap/gnumake/musl.nix | 12 +-- .../minimal-bootstrap/gnumake/static.nix | 86 +++++++++++++++++++ 5 files changed, 109 insertions(+), 20 deletions(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnumake/common.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 3b1b73ed8170..2e421222d5b1 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -187,6 +187,12 @@ lib.makeScope gnumakeBoot = gnumake; }; + gnumake-static = callPackage ./gnumake/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + gnupatch = callPackage ./gnupatch { tinycc = tinycc-mes; }; gnused = callPackage ./gnused { @@ -354,6 +360,8 @@ lib.makeScope echo ${gnugrep.tests.get-version} echo ${gnugrep-static.tests.get-version} echo ${gnum4.tests.get-version} + echo ${gnumake-musl.tests.get-version} + echo ${gnumake-static.tests.get-version} echo ${gnused.tests.get-version} echo ${gnused-mes.tests.get-version} echo ${gnused-static.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/common.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/common.nix new file mode 100644 index 000000000000..959fc2a63a32 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/common.nix @@ -0,0 +1,11 @@ +{ lib }: +{ + meta = { + description = "A tool to control the generation of non-source files from sources"; + homepage = "https://www.gnu.org/software/make"; + license = lib.licenses.gpl3Plus; + teams = [ lib.teams.minimal-bootstrap ]; + mainProgram = "make"; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix index 04690844d911..5297dacbd253 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix @@ -6,6 +6,7 @@ gnupatch, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "gnumake"; version = "4.4.1"; @@ -156,21 +157,12 @@ let in kaem.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler gnupatch ]; - - meta = { - description = "Tool to control the generation of non-source files from sources"; - homepage = "https://www.gnu.org/software/make"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - mainProgram = "make"; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/musl.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/musl.nix index b5d18e61e156..1af7ce5b0fd6 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/musl.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/musl.nix @@ -14,6 +14,7 @@ gzip, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "gnumake-musl"; version = "4.4.1"; @@ -33,7 +34,7 @@ let in bash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler @@ -52,15 +53,6 @@ bash.runCommand "${pname}-${version}" ${result}/bin/make --version mkdir $out ''; - - meta = { - description = "Tool to control the generation of non-source files from sources"; - homepage = "https://www.gnu.org/software/make"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - mainProgram = "make"; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix new file mode 100644 index 000000000000..1a641352f2e0 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/static.nix @@ -0,0 +1,86 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnupatch, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + gzip, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "gnumake-static"; + version = "4.4.1"; + + src = fetchurl { + url = "mirror://gnu/make/make-${version}.tar.gz"; + hash = "sha256-3Rb7HWe/q3mnL16DkHNcSePo5wtJRaFasfgd23hlj7M="; + }; + + patches = [ + # Replaces /bin/sh with sh, see patch file for reasoning + ./0001-No-impure-bin-sh.patch + # Purity: don't look for library dependencies (of the form `-lfoo') in /lib + # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for + # included Makefiles, don't look in /usr/include and friends. + ./0002-remove-impure-dirs.patch + ]; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnupatch + gnused + gnugrep + gawk + diffutils + findutils + gnutar + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/make --version + mkdir $out + ''; + } + '' + # Unpack + tar xf ${src} + cd make-${version} + + # Patch + ${lib.concatMapStringsSep "\n" (f: "patch -Np1 -i ${f}") patches} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From ba4c121062afb361ed037a2839093d5048db0606 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 22:36:45 -0700 Subject: [PATCH 022/115] minimal-bootstrap.gnupatch-static: init at 2.8 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../minimal-bootstrap/gnupatch/static.nix | 80 +++++++++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 2e421222d5b1..47ddd502a726 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -195,6 +195,12 @@ lib.makeScope gnupatch = callPackage ./gnupatch { tinycc = tinycc-mes; }; + gnupatch-static = callPackage ./gnupatch/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + gnused = callPackage ./gnused { bash = bash_2_05; tinycc = tinycc-musl; @@ -362,6 +368,7 @@ lib.makeScope echo ${gnum4.tests.get-version} echo ${gnumake-musl.tests.get-version} echo ${gnumake-static.tests.get-version} + echo ${gnupatch-static.tests.get-version} echo ${gnused.tests.get-version} echo ${gnused-mes.tests.get-version} echo ${gnused-static.tests.get-version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix new file mode 100644 index 000000000000..7dcd3798c26a --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/static.nix @@ -0,0 +1,80 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + pname = "gnupatch-static"; + version = "2.8"; + + src = fetchurl { + url = "mirror://gnu/patch/patch-${version}.tar.xz"; + hash = "sha256-+Hzuae7CtPy/YKOWsDCtaqNBXxkqpffuhMrV4R9/WuM="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/patch --version + mkdir $out + ''; + + meta = { + description = "GNU Patch, a program to apply differences to files"; + homepage = "https://www.gnu.org/software/patch"; + license = lib.licenses.gpl3Plus; + mainProgram = "patch"; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd patch-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install + '' From 97370d4eabfae8f4f65ac9c043e4783fbf99e60d Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Mon, 9 Oct 2023 22:46:25 -0700 Subject: [PATCH 023/115] minimal-bootstrap.gzip-static: init at 1.13 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../linux/minimal-bootstrap/gzip/static.nix | 79 +++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 47ddd502a726..4582a932aa51 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -243,6 +243,12 @@ lib.makeScope gnutarBoot = gnutar-latest; }; + gzip-static = callPackage ./gzip/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + gzip = callPackage ./gzip { bash = bash_2_05; tinycc = tinycc-bootstrappable; @@ -377,6 +383,7 @@ lib.makeScope echo ${gnutar-musl.tests.get-version} echo ${gnutar-static.tests.get-version} echo ${gzip.tests.get-version} + echo ${gzip-static.tests.get-version} echo ${heirloom.tests.get-version} echo ${mes.compiler.tests.get-version} echo ${musl.tests.hello-world} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix new file mode 100644 index 000000000000..c3d266748670 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/gzip/static.nix @@ -0,0 +1,79 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + xz, +}: +let + pname = "gzip-static"; + version = "1.13"; + + src = fetchurl { + url = "mirror://gnu/gzip/gzip-${version}.tar.xz"; + hash = "sha256-dFTraTXbF8ZlVXbC4bD6vv04tNCTbg+H9IzQYs6RoFc="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + xz + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/gzip --version + mkdir $out + ''; + + meta = { + description = "GNU zip compression program"; + homepage = "https://www.gnu.org/software/gzip"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd gzip-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES bin_SCRIPTS= + + # Install + make -j $NIX_BUILD_CORES bin_SCRIPTS= install + '' From eb6206413b48238df799bc1d0c4f8ea99f9e4323 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Tue, 10 Oct 2023 00:02:38 -0700 Subject: [PATCH 024/115] minimal-bootstrap.bzip2-static: init at 1.0.8 --- .../linux/minimal-bootstrap/bzip2/static.nix | 63 +++++++++++++++++++ .../linux/minimal-bootstrap/default.nix | 8 +++ 2 files changed, 71 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix new file mode 100644 index 000000000000..a597724c871a --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/bzip2/static.nix @@ -0,0 +1,63 @@ +{ + lib, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnutar, + gzip, +}: +let + pname = "bzip2-static"; + version = "1.0.8"; + + src = fetchurl { + url = "https://sourceware.org/pub/bzip2/bzip2-${version}.tar.gz"; + sha256 = "0s92986cv0p692icqlw1j42y9nld8zd83qwhzbqd61p1dqbh6nmb"; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnutar + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/bzip2 --help + mkdir $out + ''; + + meta = { + description = "High-quality data compression program"; + homepage = "https://www.sourceware.org/bzip2"; + license = lib.licenses.bsdOriginal; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd bzip2-${version} + + # Build + make \ + -j $NIX_BUILD_CORES \ + CC=musl-gcc \ + CFLAGS=-static \ + bzip2 bzip2recover + + # Install + make install -j $NIX_BUILD_CORES PREFIX=$out + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 4582a932aa51..d016e9ae87ad 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -70,7 +70,14 @@ lib.makeScope gnutar = gnutar-musl; }; + bzip2-static = callPackage ./bzip2/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + coreutils = callPackage ./coreutils { tinycc = tinycc-mes; }; + coreutils-musl = callPackage ./coreutils/musl.nix { bash = bash_2_05; tinycc = tinycc-musl; @@ -355,6 +362,7 @@ lib.makeScope echo ${bison.tests.get-version} echo ${busybox-static.tests.get-version} echo ${bzip2.tests.get-version} + echo ${bzip2-static.tests.get-version} echo ${coreutils-musl.tests.get-version} echo ${coreutils-static.tests.get-version} echo ${diffutils.tests.get-version} From 4049a1478fb22e1a34e0816014fda9311c74217b Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Tue, 10 Oct 2023 00:11:52 -0700 Subject: [PATCH 025/115] minimal-bootstrap.patchelf-static: init at 0.18.0 --- .../linux/minimal-bootstrap/default.nix | 7 ++ .../minimal-bootstrap/patchelf/static.nix | 79 +++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index d016e9ae87ad..750a841f272b 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -298,6 +298,12 @@ lib.makeScope gnumake = gnumake-musl; }; + patchelf-static = callPackage ./patchelf/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + python = callPackage ./python { gcc = gcc-latest; gnumake = gnumake-musl; @@ -395,6 +401,7 @@ lib.makeScope echo ${heirloom.tests.get-version} echo ${mes.compiler.tests.get-version} echo ${musl.tests.hello-world} + echo ${patchelf-static.tests.get-version} echo ${python.tests.get-version} echo ${tinycc-mes.compiler.tests.chain} echo ${tinycc-musl.compiler.tests.hello-world} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix new file mode 100644 index 000000000000..bbc7ea0c6319 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/patchelf/static.nix @@ -0,0 +1,79 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + gzip, +}: +let + pname = "patchelf-static"; + version = "0.18.0"; + + src = fetchurl { + url = "https://github.com/NixOS/patchelf/releases/download/${version}/patchelf-${version}.tar.gz"; + sha256 = "sha256-ZN4Q5Ma4uDedt+h/WAMPM26nR8BRXzgRMugQ2/hKhuc="; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/patchelf --version + mkdir $out + ''; + + meta = { + description = "A small utility to modify the dynamic linker and RPATH of ELF executables"; + homepage = "https://github.com/NixOS/patchelf"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.unix; + teams = [ lib.teams.minimal-bootstrap ]; + }; + } + '' + # Unpack + tar xf ${src} + cd patchelf-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + CC=musl-gcc \ + CXXFLAGS=-static + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install-strip + '' From f2d79303957db2f5fe9262913a9b69b436ba25f2 Mon Sep 17 00:00:00 2001 From: Emily Trau Date: Tue, 10 Oct 2023 00:29:01 -0700 Subject: [PATCH 026/115] minimal-bootstrap.bash-static: init at 5.2.15 --- .../linux/minimal-bootstrap/bash/2.nix | 11 +-- .../linux/minimal-bootstrap/bash/common.nix | 10 +++ .../linux/minimal-bootstrap/bash/default.nix | 14 +--- .../linux/minimal-bootstrap/bash/static.nix | 75 +++++++++++++++++++ .../linux/minimal-bootstrap/default.nix | 8 +- 5 files changed, 97 insertions(+), 21 deletions(-) create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/bash/common.nix create mode 100644 pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bash/2.nix b/pkgs/os-specific/linux/minimal-bootstrap/bash/2.nix index b569dde98187..9b51f93799d4 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/bash/2.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/bash/2.nix @@ -11,6 +11,7 @@ bash_2_05, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "bash"; version = "2.05b"; @@ -69,7 +70,7 @@ let in kaem.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ tinycc.compiler @@ -124,14 +125,6 @@ kaem.runCommand "${pname}-${version}" ${result}/bin/bash --version mkdir ''${out} ''; - - meta = { - description = "GNU Bourne-Again Shell, the de facto standard shell on Linux"; - homepage = "https://www.gnu.org/software/bash"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - platforms = lib.platforms.unix; - }; } '' # Unpack diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bash/common.nix b/pkgs/os-specific/linux/minimal-bootstrap/bash/common.nix new file mode 100644 index 000000000000..5746075ff687 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/bash/common.nix @@ -0,0 +1,10 @@ +{ lib }: +{ + meta = { + description = "GNU Bourne-Again Shell, the de facto standard shell on Linux"; + homepage = "https://www.gnu.org/software/bash"; + license = lib.licenses.gpl3Plus; + teams = [ lib.teams.minimal-bootstrap ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bash/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/bash/default.nix index 5dc5bbcd8369..aa414c9479cc 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/bash/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/bash/default.nix @@ -18,6 +18,7 @@ coreutils, }: let + inherit (import ./common.nix { inherit lib; }) meta; pname = "bash"; version = "5.2.37"; @@ -33,7 +34,7 @@ let in bootBash.runCommand "${pname}-${version}" { - inherit pname version; + inherit pname version meta; nativeBuildInputs = [ coreutils @@ -85,24 +86,15 @@ bootBash.runCommand "${pname}-${version}" } // (removeAttrs env [ "nativeBuildInputs" ]) ); - passthru.tests.get-version = result: bootBash.runCommand "${pname}-get-version-${version}" { } '' ${result}/bin/bash --version mkdir $out ''; - - meta = { - description = "GNU Bourne-Again Shell, the de facto standard shell on Linux"; - homepage = "https://www.gnu.org/software/bash"; - license = lib.licenses.gpl3Plus; - teams = [ lib.teams.minimal-bootstrap ]; - platforms = lib.platforms.unix; - }; } '' - # Unpack + # unpack tar xzf ${src} cd bash-${version} diff --git a/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix b/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix new file mode 100644 index 000000000000..dff88a1aee20 --- /dev/null +++ b/pkgs/os-specific/linux/minimal-bootstrap/bash/static.nix @@ -0,0 +1,75 @@ +{ + lib, + buildPlatform, + hostPlatform, + fetchurl, + bash, + gcc, + musl, + binutils, + gnumake, + gnused, + gnugrep, + gawk, + diffutils, + findutils, + gnutar, + gzip, +}: +let + inherit (import ./common.nix { inherit lib; }) meta; + pname = "bash-static"; + version = "5.2.15"; + + src = fetchurl { + url = "mirror://gnu/bash/bash-${version}.tar.gz"; + sha256 = "132qng0jy600mv1fs95ylnlisx2wavkkgpb19c6kmz7lnmjhjwhk"; + }; +in +bash.runCommand "${pname}-${version}" + { + inherit pname version meta; + + nativeBuildInputs = [ + gcc + musl + binutils + gnumake + gnused + gnugrep + gawk + diffutils + findutils + gnutar + gzip + ]; + + passthru.tests.get-version = + result: + bash.runCommand "${pname}-get-version-${version}" { } '' + ${result}/bin/bash --version + mkdir $out + ''; + } + '' + # Unpack + tar xf ${src} + cd bash-${version} + + # Configure + bash ./configure \ + --prefix=$out \ + --build=${buildPlatform.config} \ + --host=${hostPlatform.config} \ + --without-bash-malloc \ + --enable-static-link \ + bash_cv_func_strtoimax=y \ + CC=musl-gcc + + # Build + make -j $NIX_BUILD_CORES + + # Install + make -j $NIX_BUILD_CORES install-strip + rm $out/bin/bashbug + '' diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix index 750a841f272b..2720e1d2d4bb 100644 --- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix +++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix @@ -40,6 +40,12 @@ lib.makeScope gnutar = gnutar-musl; }; + bash-static = callPackage ./bash/static.nix { + gcc = gcc-latest; + gnumake = gnumake-musl; + gnutar = gnutar-latest; + }; + binutils = callPackage ./binutils { tinycc = tinycc-musl; gnumake = gnumake-musl; @@ -359,9 +365,9 @@ lib.makeScope }; inherit (callPackage ./utils.nix { }) derivationWithMeta writeTextFile writeText; - test = kaem.runCommand "minimal-bootstrap-test" { } '' echo ${bash.tests.get-version} + echo ${bash-static.tests.get-version} echo ${bash_2_05.tests.get-version} echo ${binutils.tests.get-version} echo ${binutils-static.tests.get-version} From 9f9d0e6402d32edf03576267b1607f66fe00b1f1 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Wed, 17 Dec 2025 12:58:45 +0000 Subject: [PATCH 027/115] brioche: init at 0.1.6 --- pkgs/by-name/br/brioche/fetchers.nix | 20 ++++++ pkgs/by-name/br/brioche/librusty_v8.nix | 13 ++++ pkgs/by-name/br/brioche/package.nix | 76 ++++++++++++++++++++++ pkgs/by-name/br/brioche/update-librusty.sh | 47 +++++++++++++ 4 files changed, 156 insertions(+) create mode 100644 pkgs/by-name/br/brioche/fetchers.nix create mode 100644 pkgs/by-name/br/brioche/librusty_v8.nix create mode 100644 pkgs/by-name/br/brioche/package.nix create mode 100755 pkgs/by-name/br/brioche/update-librusty.sh diff --git a/pkgs/by-name/br/brioche/fetchers.nix b/pkgs/by-name/br/brioche/fetchers.nix new file mode 100644 index 000000000000..41b800a6e63c --- /dev/null +++ b/pkgs/by-name/br/brioche/fetchers.nix @@ -0,0 +1,20 @@ +# not a stable interface, do not reference outside the windmill package but make a copy if you need +{ + lib, + stdenv, + fetchurl, +}: + +{ + fetchLibrustyV8 = + args: + fetchurl { + name = "librusty_v8-${args.version}"; + url = "https://github.com/denoland/rusty_v8/releases/download/v${args.version}/librusty_v8_release_${stdenv.hostPlatform.rust.rustcTarget}.a.gz"; + sha256 = args.shas.${stdenv.hostPlatform.system}; + meta = { + inherit (args) version; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; + }; +} diff --git a/pkgs/by-name/br/brioche/librusty_v8.nix b/pkgs/by-name/br/brioche/librusty_v8.nix new file mode 100644 index 000000000000..a3a91c5cc15a --- /dev/null +++ b/pkgs/by-name/br/brioche/librusty_v8.nix @@ -0,0 +1,13 @@ +# auto-generated file -- DO NOT EDIT! +{ fetchLibrustyV8 }: + +fetchLibrustyV8 { + version = "140.2.0"; + shas = { + # NOTE; Follows supported platforms of package (see meta.platforms attribute)! + x86_64-linux = "0xgkyjx4vhi001p8iv0wqjpal4nl0vj65fnhp5x8ckss6mhanymg"; + aarch64-linux = "1gal8sylc0k9x37m4lrlncmcfaxn5bdizgi9rhyfb9da9wi41n9f"; + x86_64-darwin = "0y117lgc1d90f3z285ljazacscs02mmk9b57h403ilgqfly8dzh7"; + aarch64-darwin = "106n64mrmwk0jzm8zy891kjjbxrr7yggj7m986pxinf8igvab7br"; + }; +} diff --git a/pkgs/by-name/br/brioche/package.nix b/pkgs/by-name/br/brioche/package.nix new file mode 100644 index 000000000000..3106d86f80fe --- /dev/null +++ b/pkgs/by-name/br/brioche/package.nix @@ -0,0 +1,76 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + callPackage, + librusty_v8 ? ( + callPackage ./librusty_v8.nix { + inherit (callPackage ./fetchers.nix { }) fetchLibrustyV8; + } + ), + openssl, + tzdata, + versionCheckHook, + _experimental-update-script-combinators, + nix-update-script, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "brioche"; + version = "0.1.6"; + + src = fetchFromGitHub { + owner = "brioche-dev"; + repo = "brioche"; + tag = "v${finalAttrs.version}"; + hash = "sha256-tMVBpFCTxesrkj7Z3huVD86baw1tYAtPdPAzYJzTCnA="; + }; + + cargoHash = "sha256-LPHJHS69oUvmTaYoMSINCcyYIHYMq++UCUMh9KrCm/0="; + + env = { + OPENSSL_NO_VENDOR = true; + RUSTY_V8_ARCHIVE = librusty_v8; + }; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + openssl + ]; + + checkFlags = [ + # Require internet access + "--skip=test_bake_process" + ]; + + nativeCheckInputs = [ + # Otherwise, some tests fail with: + # Error: failed to find time zone `Etc/Unknown` since there is no time zone database configured at line 1 column 415 + tzdata + ]; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgramArg = "--version"; + doInstallCheck = true; + + passthru.updateScript = _experimental-update-script-combinators.sequence [ + (nix-update-script { }) + ./update-librusty.sh + ]; + + meta = { + description = "Package manager for building and running complex software projects"; + homepage = "https://brioche.dev/"; + downloadPage = "https://github.com/brioche-dev/brioche"; + changelog = "https://github.com/brioche-dev/brioche/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + mainProgram = "brioche"; + }; +}) diff --git a/pkgs/by-name/br/brioche/update-librusty.sh b/pkgs/by-name/br/brioche/update-librusty.sh new file mode 100755 index 000000000000..0ba452c803f5 --- /dev/null +++ b/pkgs/by-name/br/brioche/update-librusty.sh @@ -0,0 +1,47 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p gnugrep gnused nix jq +# shellcheck shell=bash + +set -eu -o pipefail + +echo "librusty_v8: UPDATING" + +# ASSUMES; The Cargo.lock file is located at /backend/Cargo.toml + +BRIOCHE_LATEST_VERSION=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} --silent --fail --location "https://api.github.com/repos/brioche-dev/brioche/releases/latest" | jq --raw-output .tag_name) +CARGO_LOCK=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} --silent --fail --location "https://github.com/brioche-dev/brioche/raw/$BRIOCHE_LATEST_VERSION/Cargo.lock") + +PACKAGE_DIR=$(dirname "$(readlink --canonicalize-existing "${BASH_SOURCE[0]}")") +OUTPUT_FILE="$PACKAGE_DIR/librusty_v8.nix" +NEW_VERSION=$(echo "$CARGO_LOCK" | grep --after-context 5 'name = "v8"' | grep 'version =' | sed -E 's/version = "//;s/"//') + +CURRENT_VERSION="" +if [ -f "$OUTPUT_FILE" ]; then + CURRENT_VERSION="$(grep 'version =' "$OUTPUT_FILE" | sed -E 's/version = "//;s/"//')" +fi + +if [ "$CURRENT_VERSION" == "$NEW_VERSION" ]; then + echo "No update needed, $CURRENT_VERSION is already latest" + exit 0 +fi + +TEMP_FILE="$OUTPUT_FILE.tmp" +cat >"$TEMP_FILE" < Date: Fri, 19 Dec 2025 09:53:14 +0000 Subject: [PATCH 028/115] doc2go: 0.9.1 -> 0.12.0 --- pkgs/by-name/do/doc2go/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/do/doc2go/package.nix b/pkgs/by-name/do/doc2go/package.nix index 77281c9843df..8c7bb01fef15 100644 --- a/pkgs/by-name/do/doc2go/package.nix +++ b/pkgs/by-name/do/doc2go/package.nix @@ -6,15 +6,15 @@ buildGoModule rec { pname = "doc2go"; - version = "0.9.1"; + version = "0.12.0"; src = fetchFromGitHub { owner = "abhinav"; repo = "doc2go"; rev = "v${version}"; - hash = "sha256-vxGzDHTtA6GgyAq1bcXL1Jrn4H6ug/ZeHl+aWezOYGo="; + hash = "sha256-gJQ0cs8R1fbGpFd9k2L53khnQ9M5U18DOtS2bn0lGig="; }; - vendorHash = "sha256-GuBjImliR3iOthOL1/4AtH2ldf5AecYXPoexHGxm4zs="; + vendorHash = "sha256-lMoEbNeSQFrMG8hCMaFRvyzt6kaPVP7Kse0i7NJY10I="; ldflags = [ "-s" From 4fd687f41531c82eacc23ea5d51be31bbde55e43 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 26 Dec 2025 06:55:36 +0000 Subject: [PATCH 029/115] nerdctl: 2.2.0 -> 2.2.1 --- pkgs/by-name/ne/nerdctl/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ne/nerdctl/package.nix b/pkgs/by-name/ne/nerdctl/package.nix index 739d361a97c9..1a0dfeb143c1 100644 --- a/pkgs/by-name/ne/nerdctl/package.nix +++ b/pkgs/by-name/ne/nerdctl/package.nix @@ -14,16 +14,16 @@ buildGoModule (finalAttrs: { pname = "nerdctl"; - version = "2.2.0"; + version = "2.2.1"; src = fetchFromGitHub { owner = "containerd"; repo = "nerdctl"; tag = "v${finalAttrs.version}"; - hash = "sha256-M3np4NfzEfMt4ii7Fdbdt+y1K7lSTWrqA9Bl+zpzxog="; + hash = "sha256-KD7wXU3RSWJWLSOd7ZFEAfETezb/5ijWPyxXMjIeX6E="; }; - vendorHash = "sha256-cnusyughQitdvYhHtuvCGS9/LdI/ku7DETBdAWttKsY="; + vendorHash = "sha256-vq4NpKS8JvsOGK25fksjsqdNS6H/B1VPqTYwqYv2blc="; nativeBuildInputs = [ makeWrapper From 4ae87c9bb63a151ff9c51d1b15a1c9d048e046ba Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Tue, 5 Mar 2024 14:01:21 +0100 Subject: [PATCH 030/115] mvapich: 2.3.7 -> 4.1 --- pkgs/by-name/mv/mvapich/package.nix | 97 +++++++++++++++-------------- 1 file changed, 50 insertions(+), 47 deletions(-) diff --git a/pkgs/by-name/mv/mvapich/package.nix b/pkgs/by-name/mv/mvapich/package.nix index e26377ee8125..ed7b23248174 100644 --- a/pkgs/by-name/mv/mvapich/package.nix +++ b/pkgs/by-name/mv/mvapich/package.nix @@ -3,8 +3,9 @@ stdenv, fetchurl, pkg-config, + removeReferencesTo, bison, - numactl, + rdma-core, libxml2, perl, gfortran, @@ -13,37 +14,35 @@ hwloc, zlib, makeWrapper, + python3, # InfiniBand dependencies - opensm, - rdma-core, + ucx, # OmniPath dependencies - libpsm2, libfabric, # Compile with slurm as a process manager useSlurm ? false, - # Network type for MVAPICH2 - network ? "ethernet", + # Network backend for MVAPICH2 + network ? "ucx", }: assert builtins.elem network [ - "ethernet" - "infiniband" - "omnipath" + "ucx" + "ofi" ]; stdenv.mkDerivation rec { pname = "mvapich"; - version = "2.3.7"; + version = "4.1"; src = fetchurl { - url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-${version}.tar.gz"; - sha256 = "sha256-w5pEkvS+UN9hAHhXSLoolOI85FCpQSgYHVFtpXV3Ua4="; + url = "https://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich-${version}.tar.gz"; + sha256 = "sha256-JaU9NyW2aeLGSBWPt8n8WxOIlT86L5SXSFhsRH0OQ+4="; }; outputs = [ "out" - "doc" - "man" + "dev" + "benchmarks" ]; nativeBuildInputs = [ @@ -51,26 +50,22 @@ stdenv.mkDerivation rec { bison makeWrapper gfortran + python3 + removeReferencesTo ]; - propagatedBuildInputs = [ - numactl - rdma-core - zlib - opensm - ]; + buildInputs = [ - numactl libxml2 perl openssh hwloc + zlib ] - ++ lib.optionals (network == "infiniband") [ + ++ lib.optionals (network == "ucx") [ + ucx + ] + ++ lib.optionals (network == "ofi") [ rdma-core - opensm - ] - ++ lib.optionals (network == "omnipath") [ - libpsm2 libfabric ] ++ lib.optional useSlurm slurm; @@ -82,39 +77,47 @@ stdenv.mkDerivation rec { "--enable-threads=multiple" "--enable-hybrid" "--enable-shared" - "FFLAGS=-fallow-argument-mismatch" # fix build with gfortran 10 ] - ++ lib.optional useSlurm "--with-pm=slurm" - ++ lib.optional (network == "ethernet") "--with-device=ch3:sock" - ++ lib.optionals (network == "infiniband") [ - "--with-device=ch3:mrail" - "--with-rdma=gen2" - "--disable-ibv-dlopen" + ++ lib.optionals (network == "ucx") [ + "--with-device=ch4:ucx" ] - ++ lib.optionals (network == "omnipath") [ - "--with-device=ch3:psm" - "--with-psm2=${libpsm2}" + ++ lib.optionals (network == "ofi") [ + "--with-device=ch4:ofi" ]; - doCheck = true; + doCheck = false; # requries bindir/bin/mpicc before install is run - preFixup = '' - # /tmp/nix-build... ends up in the RPATH, fix it manually - for entry in $out/bin/mpichversion $out/bin/mpivars; do - echo "fix rpath: $entry" - patchelf --allowed-rpath-prefixes ${builtins.storeDir} --shrink-rpath $entry + postInstall = '' + for e in mpif77 mpif90 mpifort mpichversion mpic++ mpicxx mpicc mpivars; do + moveToOutput "bin/$e" "''${!outputDev}" done - # Ensure the default compilers are the ones mvapich was built with - substituteInPlace $out/bin/mpicc --replace 'CC="gcc"' 'CC=${stdenv.cc}/bin/cc' - substituteInPlace $out/bin/mpicxx --replace 'CXX="g++"' 'CXX=${stdenv.cc}/bin/c++' - substituteInPlace $out/bin/mpifort --replace 'FC="gfortran"' 'FC=${gfortran}/bin/gfortran' + mkdir -p $benchmarks + moveToOutput "libexec/osu-micro-benchmarks/" $benchmarks + ''; + + # Ensure the default compilers are the ones mvapich was built with + preFixup = '' + substituteInPlace $dev/bin/mpicc --replace-fail 'CC="gcc"' 'CC=${stdenv.cc}/bin/cc' + substituteInPlace $dev/bin/mpicxx --replace-fail 'CXX="g++"' 'CXX=${stdenv.cc}/bin/c++' + substituteInPlace $dev/bin/mpifort --replace-fail 'FC="gfortran"' 'FC=${gfortran}/bin/gfortran' + + ''; + + postFixup = '' + for e in mpi mpifort mpicxx; do + remove-references-to -t "''${!outputDev}" $(readlink -f $out/lib/lib$e${stdenv.hostPlatform.extensions.library}) + done + + if [ -e $out/bin/mpiexec.hydra ]; then + remove-references-to -t "''${!outputDev}" $out/bin/mpiexec.hydra + fi ''; enableParallelBuilding = true; meta = { - description = "MPI-3.1 implementation optimized for Infiband transport"; + description = "MPI-3.1 implementation optimized for Infiband and OmniPath transport"; homepage = "https://mvapich.cse.ohio-state.edu"; license = lib.licenses.bsd3; maintainers = [ lib.maintainers.markuskowa ]; From ab4d4e0e1e70ce6de779b10e11b9f21a90c6bd3a Mon Sep 17 00:00:00 2001 From: Hugo Renard Date: Sat, 3 Jan 2026 15:09:46 +0000 Subject: [PATCH 031/115] listmonk: 5.1.0 -> 6.0.0 --- pkgs/by-name/li/listmonk/frontend.nix | 2 +- pkgs/by-name/li/listmonk/package.nix | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/li/listmonk/frontend.nix b/pkgs/by-name/li/listmonk/frontend.nix index 53edf18c3608..0125cc5e8c63 100644 --- a/pkgs/by-name/li/listmonk/frontend.nix +++ b/pkgs/by-name/li/listmonk/frontend.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation (finalAttrs: { offlineCache = fetchYarnDeps { yarnLock = "${src}/frontend/yarn.lock"; - hash = "sha256-pOBW3E3Nw+4IEwnNxNjZ+QfR7IF9Zk6MxnD8pFzssro="; + hash = "sha256-FVnODCSLJYXb9KO2nNV52Z6hza+1619KjXNtXqmZv8o="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/li/listmonk/package.nix b/pkgs/by-name/li/listmonk/package.nix index cc7b83e15737..06c74debd822 100644 --- a/pkgs/by-name/li/listmonk/package.nix +++ b/pkgs/by-name/li/listmonk/package.nix @@ -11,16 +11,16 @@ buildGoModule (finalAttrs: { pname = "listmonk"; - version = "5.1.0"; + version = "6.0.0"; src = fetchFromGitHub { owner = "knadh"; repo = "listmonk"; rev = "v${finalAttrs.version}"; - hash = "sha256-rb0/T7I6yLGJBXikOHuXwDdW20nFXpssXfgViHSIIOU="; + hash = "sha256-qfFspzAbb+wCv0rVasfgEVUgbFuFLR1ouT3LeWyKShQ="; }; - vendorHash = "sha256-bFUWjaaFHB2pnGHBsvUBS2icQkMrB/CfXFa+3vGFFvU="; + vendorHash = "sha256-R4chuOzpy/aEB5i5owZV3M7ByqnrXzxLaCeUOcjzQKE="; nativeBuildInputs = [ stuffbin @@ -43,7 +43,7 @@ buildGoModule (finalAttrs: { vfsMappings = [ "config.toml.sample" "schema.sql" - "queries.sql" + "queries" "permissions.json" "static/public:/public" "${finalAttrs.passthru.frontend}/altcha.umd.js:/public/static/altcha.umd.js" From 27208affe763b543dbe9579863ae4e52b0c90688 Mon Sep 17 00:00:00 2001 From: matthewcroughan Date: Sun, 4 Jan 2026 04:46:12 +0000 Subject: [PATCH 032/115] badgemagic-app: init at v1.18.15 --- pkgs/by-name/ba/badgemagic-app/package.nix | 34 + .../ba/badgemagic-app/pubspec.lock.json | 1126 +++++++++++++++++ 2 files changed, 1160 insertions(+) create mode 100644 pkgs/by-name/ba/badgemagic-app/package.nix create mode 100644 pkgs/by-name/ba/badgemagic-app/pubspec.lock.json diff --git a/pkgs/by-name/ba/badgemagic-app/package.nix b/pkgs/by-name/ba/badgemagic-app/package.nix new file mode 100644 index 000000000000..09f219b86173 --- /dev/null +++ b/pkgs/by-name/ba/badgemagic-app/package.nix @@ -0,0 +1,34 @@ +{ + lib, + flutter338, + fetchFromGitHub, +}: + +let + version = "1.18.15"; + + src = fetchFromGitHub { + owner = "fossasia"; + repo = "badgemagic-app"; + tag = "v${version}"; + hash = "sha256-zQ7ajVHueyCJP2n81dogM5YytxOoJ/hJt/qYbmw64e0="; + }; +in +flutter338.buildFlutterApplication { + pname = "badgemagic-app"; + inherit version src; + + pubspecLock = lib.importJSON ./pubspec.lock.json; + + meta = { + description = "Badge Magic with LEDs - mobile and desktop app"; + homepage = "https://github.com/fossasia/badgemagic-app"; + license = with lib.licenses; [ asl20 ]; + maintainers = [ lib.maintainers.matthewcroughan ]; + platforms = [ + "aarch64-linux" + "x86_64-linux" + ]; + mainProgram = "badgemagic"; + }; +} diff --git a/pkgs/by-name/ba/badgemagic-app/pubspec.lock.json b/pkgs/by-name/ba/badgemagic-app/pubspec.lock.json new file mode 100644 index 000000000000..d6ea880b44a9 --- /dev/null +++ b/pkgs/by-name/ba/badgemagic-app/pubspec.lock.json @@ -0,0 +1,1126 @@ +{ + "packages": { + "_fe_analyzer_shared": { + "dependency": "transitive", + "description": { + "name": "_fe_analyzer_shared", + "sha256": "5b7468c326d2f8a4f630056404ca0d291ade42918f4a3c6233618e724f39da8e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "92.0.0" + }, + "analyzer": { + "dependency": "transitive", + "description": { + "name": "analyzer", + "sha256": "70e4b1ef8003c64793a9e268a551a82869a8a96f39deb73dea28084b0e8bf75e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "9.0.0" + }, + "archive": { + "dependency": "transitive", + "description": { + "name": "archive", + "sha256": "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.0.7" + }, + "args": { + "dependency": "transitive", + "description": { + "name": "args", + "sha256": "d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.7.0" + }, + "async": { + "dependency": "transitive", + "description": { + "name": "async", + "sha256": "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.13.0" + }, + "bluez": { + "dependency": "transitive", + "description": { + "name": "bluez", + "sha256": "61a7204381925896a374301498f2f5399e59827c6498ae1e924aaa598751b545", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.8.3" + }, + "boolean_selector": { + "dependency": "transitive", + "description": { + "name": "boolean_selector", + "sha256": "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.2" + }, + "characters": { + "dependency": "transitive", + "description": { + "name": "characters", + "sha256": "f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.4.0" + }, + "clock": { + "dependency": "transitive", + "description": { + "name": "clock", + "sha256": "fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.2" + }, + "collection": { + "dependency": "transitive", + "description": { + "name": "collection", + "sha256": "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.19.1" + }, + "convert": { + "dependency": "transitive", + "description": { + "name": "convert", + "sha256": "b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.2" + }, + "cross_file": { + "dependency": "transitive", + "description": { + "name": "cross_file", + "sha256": "701dcfc06da0882883a2657c445103380e53e647060ad8d9dfb710c100996608", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.3.5+1" + }, + "crypto": { + "dependency": "transitive", + "description": { + "name": "crypto", + "sha256": "c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.7" + }, + "cupertino_icons": { + "dependency": "direct main", + "description": { + "name": "cupertino_icons", + "sha256": "ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.8" + }, + "dart_style": { + "dependency": "direct dev", + "description": { + "name": "dart_style", + "sha256": "a9c30492da18ff84efe2422ba2d319a89942d93e58eb0b73d32abe822ef54b7b", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.3" + }, + "dbus": { + "dependency": "transitive", + "description": { + "name": "dbus", + "sha256": "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.7.11" + }, + "extended_text_field": { + "dependency": "direct main", + "description": { + "name": "extended_text_field", + "sha256": "3996195c117c6beb734026a7bc0ba80d7e4e84e4edd4728caa544d8209ab4d7d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "16.0.2" + }, + "extended_text_library": { + "dependency": "transitive", + "description": { + "name": "extended_text_library", + "sha256": "13d99f8a10ead472d5e2cf4770d3d047203fe5054b152e9eb5dc692a71befbba", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "12.0.1" + }, + "fake_async": { + "dependency": "transitive", + "description": { + "name": "fake_async", + "sha256": "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.3" + }, + "ffi": { + "dependency": "transitive", + "description": { + "name": "ffi", + "sha256": "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.4" + }, + "file": { + "dependency": "transitive", + "description": { + "name": "file", + "sha256": "a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.1" + }, + "file_picker": { + "dependency": "direct main", + "description": { + "name": "file_picker", + "sha256": "d974b6ba2606371ac71dd94254beefb6fa81185bde0b59bdc1df09885da85fde", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "10.3.8" + }, + "fixnum": { + "dependency": "transitive", + "description": { + "name": "fixnum", + "sha256": "b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.1" + }, + "flutter": { + "dependency": "direct main", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "flutter_blue_plus": { + "dependency": "direct main", + "description": { + "name": "flutter_blue_plus", + "sha256": "69a8c87c11fc792e8cf0f997d275484fbdb5143ac9f0ac4d424429700cb4e0ed", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.36.8" + }, + "flutter_blue_plus_android": { + "dependency": "transitive", + "description": { + "name": "flutter_blue_plus_android", + "sha256": "6f7fe7e69659c30af164a53730707edc16aa4d959e4c208f547b893d940f853d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.4" + }, + "flutter_blue_plus_darwin": { + "dependency": "transitive", + "description": { + "name": "flutter_blue_plus_darwin", + "sha256": "682982862c1d964f4d54a3fb5fccc9e59a066422b93b7e22079aeecd9c0d38f8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.3" + }, + "flutter_blue_plus_linux": { + "dependency": "transitive", + "description": { + "name": "flutter_blue_plus_linux", + "sha256": "56b0c45edd0a2eec8f85bd97a26ac3cd09447e10d0094fed55587bf0592e3347", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.3" + }, + "flutter_blue_plus_platform_interface": { + "dependency": "transitive", + "description": { + "name": "flutter_blue_plus_platform_interface", + "sha256": "84fbd180c50a40c92482f273a92069960805ce324e3673ad29c41d2faaa7c5c2", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.0" + }, + "flutter_blue_plus_web": { + "dependency": "transitive", + "description": { + "name": "flutter_blue_plus_web", + "sha256": "a1aceee753d171d24c0e0cdadb37895b5e9124862721f25f60bb758e20b72c99", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.2" + }, + "flutter_driver": { + "dependency": "transitive", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "flutter_lints": { + "dependency": "direct dev", + "description": { + "name": "flutter_lints", + "sha256": "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.0.0" + }, + "flutter_localizations": { + "dependency": "direct main", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "flutter_plugin_android_lifecycle": { + "dependency": "transitive", + "description": { + "name": "flutter_plugin_android_lifecycle", + "sha256": "ee8068e0e1cd16c4a82714119918efdeed33b3ba7772c54b5d094ab53f9b7fd1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.33" + }, + "flutter_screenutil": { + "dependency": "direct main", + "description": { + "name": "flutter_screenutil", + "sha256": "8239210dd68bee6b0577aa4a090890342d04a136ce1c81f98ee513fc0ce891de", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "5.9.3" + }, + "flutter_svg": { + "dependency": "direct main", + "description": { + "name": "flutter_svg", + "sha256": "87fbd7c534435b6c5d9d98b01e1fd527812b82e68ddd8bd35fc45ed0fa8f0a95", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.3" + }, + "flutter_test": { + "dependency": "direct dev", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "flutter_web_plugins": { + "dependency": "transitive", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "fuchsia_remote_debug_protocol": { + "dependency": "transitive", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "get_it": { + "dependency": "direct main", + "description": { + "name": "get_it", + "sha256": "1d648d2dd2047d7f7450d5727ca24ee435f240385753d90b49650e3cdff32e56", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "9.2.0" + }, + "glob": { + "dependency": "transitive", + "description": { + "name": "glob", + "sha256": "c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.3" + }, + "go_router": { + "dependency": "direct main", + "description": { + "name": "go_router", + "sha256": "eff94d2a6fc79fa8b811dde79c7549808c2346037ee107a1121b4a644c745f2a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "17.0.1" + }, + "google_fonts": { + "dependency": "direct main", + "description": { + "name": "google_fonts", + "sha256": "ba03d03bcaa2f6cb7bd920e3b5027181db75ab524f8891c8bc3aa603885b8055", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.3.3" + }, + "http": { + "dependency": "transitive", + "description": { + "name": "http", + "sha256": "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.6.0" + }, + "http_parser": { + "dependency": "transitive", + "description": { + "name": "http_parser", + "sha256": "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.1.2" + }, + "image": { + "dependency": "direct main", + "description": { + "name": "image", + "sha256": "492bd52f6c4fbb6ee41f781ff27765ce5f627910e1e0cbecfa3d9add5562604c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.7.2" + }, + "integration_test": { + "dependency": "direct dev", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "intl": { + "dependency": "direct main", + "description": { + "name": "intl", + "sha256": "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.20.2" + }, + "leak_tracker": { + "dependency": "transitive", + "description": { + "name": "leak_tracker", + "sha256": "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "11.0.2" + }, + "leak_tracker_flutter_testing": { + "dependency": "transitive", + "description": { + "name": "leak_tracker_flutter_testing", + "sha256": "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.10" + }, + "leak_tracker_testing": { + "dependency": "transitive", + "description": { + "name": "leak_tracker_testing", + "sha256": "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.2" + }, + "lints": { + "dependency": "transitive", + "description": { + "name": "lints", + "sha256": "a5e2b223cb7c9c8efdc663ef484fdd95bb243bff242ef5b13e26883547fce9a0", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.0.0" + }, + "logger": { + "dependency": "direct main", + "description": { + "name": "logger", + "sha256": "a7967e31b703831a893bbc3c3dd11db08126fe5f369b5c648a36f821979f5be3", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.6.2" + }, + "logging": { + "dependency": "transitive", + "description": { + "name": "logging", + "sha256": "c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.0" + }, + "matcher": { + "dependency": "transitive", + "description": { + "name": "matcher", + "sha256": "dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.12.17" + }, + "material_color_utilities": { + "dependency": "transitive", + "description": { + "name": "material_color_utilities", + "sha256": "f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.11.1" + }, + "meta": { + "dependency": "transitive", + "description": { + "name": "meta", + "sha256": "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.17.0" + }, + "mime": { + "dependency": "transitive", + "description": { + "name": "mime", + "sha256": "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.0" + }, + "nested": { + "dependency": "transitive", + "description": { + "name": "nested", + "sha256": "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.0" + }, + "package_config": { + "dependency": "transitive", + "description": { + "name": "package_config", + "sha256": "f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.0" + }, + "path": { + "dependency": "transitive", + "description": { + "name": "path", + "sha256": "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.9.1" + }, + "path_parsing": { + "dependency": "transitive", + "description": { + "name": "path_parsing", + "sha256": "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.0" + }, + "path_provider": { + "dependency": "direct main", + "description": { + "name": "path_provider", + "sha256": "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.5" + }, + "path_provider_android": { + "dependency": "transitive", + "description": { + "name": "path_provider_android", + "sha256": "f2c65e21139ce2c3dad46922be8272bb5963516045659e71bb16e151c93b580e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.22" + }, + "path_provider_foundation": { + "dependency": "transitive", + "description": { + "name": "path_provider_foundation", + "sha256": "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.5.1" + }, + "path_provider_linux": { + "dependency": "transitive", + "description": { + "name": "path_provider_linux", + "sha256": "f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.1" + }, + "path_provider_platform_interface": { + "dependency": "transitive", + "description": { + "name": "path_provider_platform_interface", + "sha256": "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.2" + }, + "path_provider_windows": { + "dependency": "transitive", + "description": { + "name": "path_provider_windows", + "sha256": "bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.3.0" + }, + "petitparser": { + "dependency": "transitive", + "description": { + "name": "petitparser", + "sha256": "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.1" + }, + "platform": { + "dependency": "transitive", + "description": { + "name": "platform", + "sha256": "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.6" + }, + "plugin_platform_interface": { + "dependency": "transitive", + "description": { + "name": "plugin_platform_interface", + "sha256": "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.8" + }, + "posix": { + "dependency": "transitive", + "description": { + "name": "posix", + "sha256": "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.0.3" + }, + "process": { + "dependency": "transitive", + "description": { + "name": "process", + "sha256": "c6248e4526673988586e8c00bb22a49210c258dc91df5227d5da9748ecf79744", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "5.0.5" + }, + "provider": { + "dependency": "direct main", + "description": { + "name": "provider", + "sha256": "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.1.5+1" + }, + "pub_semver": { + "dependency": "transitive", + "description": { + "name": "pub_semver", + "sha256": "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.0" + }, + "rxdart": { + "dependency": "transitive", + "description": { + "name": "rxdart", + "sha256": "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.28.0" + }, + "share_plus": { + "dependency": "direct main", + "description": { + "name": "share_plus", + "sha256": "14c8860d4de93d3a7e53af51bff479598c4e999605290756bbbe45cf65b37840", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "12.0.1" + }, + "share_plus_platform_interface": { + "dependency": "transitive", + "description": { + "name": "share_plus_platform_interface", + "sha256": "88023e53a13429bd65d8e85e11a9b484f49d4c190abbd96c7932b74d6927cc9a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.1.0" + }, + "shared_preferences": { + "dependency": "direct main", + "description": { + "name": "shared_preferences", + "sha256": "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.5.3" + }, + "shared_preferences_android": { + "dependency": "transitive", + "description": { + "name": "shared_preferences_android", + "sha256": "83af5c682796c0f7719c2bbf74792d113e40ae97981b8f266fa84574573556bc", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.4.18" + }, + "shared_preferences_foundation": { + "dependency": "transitive", + "description": { + "name": "shared_preferences_foundation", + "sha256": "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.5.6" + }, + "shared_preferences_linux": { + "dependency": "transitive", + "description": { + "name": "shared_preferences_linux", + "sha256": "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.4.1" + }, + "shared_preferences_platform_interface": { + "dependency": "transitive", + "description": { + "name": "shared_preferences_platform_interface", + "sha256": "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.4.1" + }, + "shared_preferences_web": { + "dependency": "transitive", + "description": { + "name": "shared_preferences_web", + "sha256": "c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.4.3" + }, + "shared_preferences_windows": { + "dependency": "transitive", + "description": { + "name": "shared_preferences_windows", + "sha256": "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.4.1" + }, + "sky_engine": { + "dependency": "transitive", + "description": "flutter", + "source": "sdk", + "version": "0.0.0" + }, + "source_span": { + "dependency": "transitive", + "description": { + "name": "source_span", + "sha256": "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.10.1" + }, + "stack_trace": { + "dependency": "transitive", + "description": { + "name": "stack_trace", + "sha256": "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.12.1" + }, + "stream_channel": { + "dependency": "transitive", + "description": { + "name": "stream_channel", + "sha256": "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.4" + }, + "string_scanner": { + "dependency": "transitive", + "description": { + "name": "string_scanner", + "sha256": "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.4.1" + }, + "sync_http": { + "dependency": "transitive", + "description": { + "name": "sync_http", + "sha256": "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.3.1" + }, + "term_glyph": { + "dependency": "transitive", + "description": { + "name": "term_glyph", + "sha256": "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.2.2" + }, + "test_api": { + "dependency": "transitive", + "description": { + "name": "test_api", + "sha256": "ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.7.7" + }, + "typed_data": { + "dependency": "transitive", + "description": { + "name": "typed_data", + "sha256": "f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.4.0" + }, + "url_launcher": { + "dependency": "direct main", + "description": { + "name": "url_launcher", + "sha256": "f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.3.2" + }, + "url_launcher_android": { + "dependency": "transitive", + "description": { + "name": "url_launcher_android", + "sha256": "767344bf3063897b5cf0db830e94f904528e6dd50a6dfaf839f0abf509009611", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.3.28" + }, + "url_launcher_ios": { + "dependency": "transitive", + "description": { + "name": "url_launcher_ios", + "sha256": "cfde38aa257dae62ffe79c87fab20165dfdf6988c1d31b58ebf59b9106062aad", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.3.6" + }, + "url_launcher_linux": { + "dependency": "transitive", + "description": { + "name": "url_launcher_linux", + "sha256": "d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.2.2" + }, + "url_launcher_macos": { + "dependency": "transitive", + "description": { + "name": "url_launcher_macos", + "sha256": "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.2.5" + }, + "url_launcher_platform_interface": { + "dependency": "transitive", + "description": { + "name": "url_launcher_platform_interface", + "sha256": "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.3.2" + }, + "url_launcher_web": { + "dependency": "transitive", + "description": { + "name": "url_launcher_web", + "sha256": "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.4.1" + }, + "url_launcher_windows": { + "dependency": "transitive", + "description": { + "name": "url_launcher_windows", + "sha256": "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.5" + }, + "uuid": { + "dependency": "direct main", + "description": { + "name": "uuid", + "sha256": "a11b666489b1954e01d992f3d601b1804a33937b5a8fe677bd26b8a9f96f96e8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.5.2" + }, + "vector_graphics": { + "dependency": "transitive", + "description": { + "name": "vector_graphics", + "sha256": "a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.19" + }, + "vector_graphics_codec": { + "dependency": "transitive", + "description": { + "name": "vector_graphics_codec", + "sha256": "99fd9fbd34d9f9a32efd7b6a6aae14125d8237b10403b422a6a6dfeac2806146", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.13" + }, + "vector_graphics_compiler": { + "dependency": "transitive", + "description": { + "name": "vector_graphics_compiler", + "sha256": "d354a7ec6931e6047785f4db12a1f61ec3d43b207fc0790f863818543f8ff0dc", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.19" + }, + "vector_math": { + "dependency": "transitive", + "description": { + "name": "vector_math", + "sha256": "d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.0" + }, + "vm_service": { + "dependency": "transitive", + "description": { + "name": "vm_service", + "sha256": "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "15.0.2" + }, + "watcher": { + "dependency": "transitive", + "description": { + "name": "watcher", + "sha256": "f52385d4f73589977c80797e60fe51014f7f2b957b5e9a62c3f6ada439889249", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.2.0" + }, + "web": { + "dependency": "transitive", + "description": { + "name": "web", + "sha256": "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.1" + }, + "webdriver": { + "dependency": "transitive", + "description": { + "name": "webdriver", + "sha256": "2f3a14ca026957870cfd9c635b83507e0e51d8091568e90129fbf805aba7cade", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.0" + }, + "win32": { + "dependency": "transitive", + "description": { + "name": "win32", + "sha256": "d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "5.15.0" + }, + "xdg_directories": { + "dependency": "transitive", + "description": { + "name": "xdg_directories", + "sha256": "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.0" + }, + "xml": { + "dependency": "transitive", + "description": { + "name": "xml", + "sha256": "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.6.1" + }, + "yaml": { + "dependency": "transitive", + "description": { + "name": "yaml", + "sha256": "b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.3" + } + }, + "sdks": { + "dart": ">=3.9.0 <4.0.0", + "flutter": ">=3.35.7" + } +} From 3e5d10c572a164670d2edd4dc0aa0a93c1444b3b Mon Sep 17 00:00:00 2001 From: matthewcroughan Date: Sun, 4 Jan 2026 04:50:30 +0000 Subject: [PATCH 033/115] badgemagic-rs: init at unstable-2025-07-15 Co-authored-by: qzylinra <225773816+qzylinra@users.noreply.github.com> --- pkgs/by-name/ba/badgemagic-rs/package.nix | 41 +++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 pkgs/by-name/ba/badgemagic-rs/package.nix diff --git a/pkgs/by-name/ba/badgemagic-rs/package.nix b/pkgs/by-name/ba/badgemagic-rs/package.nix new file mode 100644 index 000000000000..40b18e765ed5 --- /dev/null +++ b/pkgs/by-name/ba/badgemagic-rs/package.nix @@ -0,0 +1,41 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + dbus, + systemdLibs, +}: + +rustPlatform.buildRustPackage { + pname = "badgemagic-rs"; + version = "0.1.0-unstable-2025-07-15"; + + src = fetchFromGitHub { + owner = "fossasia"; + repo = "badgemagic-rs"; + rev = "5d745ab8fda418204425f3df0e969a98bf479f2d"; + hash = "sha256-IyPUPNbXkLNz/cuzVuzrD2iCE1ddeO3xkAOKhbrNU+k="; + }; + + cargoHash = "sha256-jT/pJLqdWGTpQFlnhuZo1FLqRQJWXCD2tuDB2AEyNPQ="; + + buildFeatures = [ "cli" ]; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + dbus + systemdLibs + ]; + + meta = { + description = "Badge Magic in Rust"; + homepage = "https://github.com/fossasia/badgemagic-rs"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ matthewcroughan ]; + mainProgram = "badgemagic-rs"; + }; +} From 54ade9f485b75dd242f286c8df3348b4fdd6d944 Mon Sep 17 00:00:00 2001 From: "[Assassin]" Date: Mon, 5 Jan 2026 19:45:57 +0200 Subject: [PATCH 034/115] vrcx: 2025.12.06 -> 2026.01.04 --- pkgs/by-name/vr/vrcx/deps.json | 40 ++++++++++++++++---------------- pkgs/by-name/vr/vrcx/package.nix | 6 ++--- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/pkgs/by-name/vr/vrcx/deps.json b/pkgs/by-name/vr/vrcx/deps.json index 4d154cb80972..81c6e4b1b726 100644 --- a/pkgs/by-name/vr/vrcx/deps.json +++ b/pkgs/by-name/vr/vrcx/deps.json @@ -51,13 +51,13 @@ }, { "pname": "Microsoft.JavaScript.NodeApi", - "version": "0.9.17", - "hash": "sha256-mTJlmKIVLEJBsQcO0VFsitmLbpcGpI9SsJbIk3tI6jo=" + "version": "0.9.18", + "hash": "sha256-FLpMBwfbLbyj+6LATS78WpvTfbpgWGhZZI6R53PKIYU=" }, { "pname": "Microsoft.JavaScript.NodeApi.Generator", - "version": "0.9.17", - "hash": "sha256-xF8J46OIr2+8FbppAdpMzm5GUV9SZ6RFN1AgIWr0pos=" + "version": "0.9.18", + "hash": "sha256-I6sCIq5G6sfkxmaJnYpXY8w0Md6XuC39fDxy2yzTI9s=" }, { "pname": "Microsoft.NETCore.Platforms", @@ -96,8 +96,8 @@ }, { "pname": "Microsoft.Win32.SystemEvents", - "version": "10.0.0", - "hash": "sha256-p0rfcBwM6pkVY+G49ujVcHwwFgrEq46FGPpGFOg0H5w=" + "version": "10.0.1", + "hash": "sha256-fg806DoQzCBU9O6O9WId9he+Jk64YfaUIJfNAT9PXx8=" }, { "pname": "Newtonsoft.Json", @@ -111,8 +111,8 @@ }, { "pname": "NLog", - "version": "6.0.6", - "hash": "sha256-vLtwZ32e1GWB93SGwmDAdUogQOf/5GuIcovO9Pn6qj8=" + "version": "6.0.7", + "hash": "sha256-Le6ocjCN29rtgRiAroVfjUbMXCrjk0pSv2GEtZZy0qU=" }, { "pname": "runtime.any.System.Runtime", @@ -181,8 +181,8 @@ }, { "pname": "System.CodeDom", - "version": "10.0.0", - "hash": "sha256-ffMXe35XVE49Gd6bbz2QRmTkCDeTuSnGYfKTZ6/MtS8=" + "version": "10.0.1", + "hash": "sha256-ilpU2rkTepWP0e+DF4rEZJgz2UcNGrcTElGo4IGDTmM=" }, { "pname": "System.CodeDom", @@ -231,8 +231,8 @@ }, { "pname": "System.Drawing.Common", - "version": "10.0.0", - "hash": "sha256-ZFneSifHbDj3O+IbwHSSs5YpDEunTeu9Hnz9APZKOA8=" + "version": "10.0.1", + "hash": "sha256-tM5Cc45MJiR58yTSvcsC8oQ0xXSO4zIuKpCP/ozqFjw=" }, { "pname": "System.Drawing.Common", @@ -241,13 +241,13 @@ }, { "pname": "System.IO.Pipelines", - "version": "10.0.0", - "hash": "sha256-0aeIxLFEBn9BoCa93UVNikdlqgPl3B1nmYCLQ9Yu9Ak=" + "version": "10.0.1", + "hash": "sha256-3NHQjvO1mSPo8Hq9vMM5QeKJeS9/y3UpznideAf5pJA=" }, { "pname": "System.Management", - "version": "10.0.0", - "hash": "sha256-Nh3KOlsv6AxGkrWiHhuuTbRuIi2tp13NrbBwgQgKuSg=" + "version": "10.0.1", + "hash": "sha256-CxFR8FycstzLJvNzbAcrO9CVftIAb3o6RekAEZgZqRE=" }, { "pname": "System.Memory", @@ -326,13 +326,13 @@ }, { "pname": "System.Text.Encodings.Web", - "version": "10.0.0", - "hash": "sha256-OrsgqAPfEjjo+CzzrAzkKTXNv3VXw2dm3Wpn+uRHCM8=" + "version": "10.0.1", + "hash": "sha256-dBN9Rpe+J1F8/cdzwNxLHYiqvzgSX1r9128YXyb2DKM=" }, { "pname": "System.Text.Json", - "version": "10.0.0", - "hash": "sha256-ZyAMIT3yQDJazYAObAlXmScGshGD9MVZgYmLqHyICq0=" + "version": "10.0.1", + "hash": "sha256-WfSgOpRL4DKfIry/H+eHxJHHrj6ENZ3+P6Q2ol3R2XM=" }, { "pname": "System.Text.RegularExpressions", diff --git a/pkgs/by-name/vr/vrcx/package.nix b/pkgs/by-name/vr/vrcx/package.nix index 4132b2a4563a..f33e1fb9ac2e 100644 --- a/pkgs/by-name/vr/vrcx/package.nix +++ b/pkgs/by-name/vr/vrcx/package.nix @@ -16,18 +16,18 @@ let in buildNpmPackage (finalAttrs: { pname = "vrcx"; - version = "2025.12.06"; + version = "2026.01.04"; src = fetchFromGitHub { repo = "VRCX"; owner = "vrcx-team"; tag = "v${finalAttrs.version}"; - hash = "sha256-eyw8zFtKVR85ao1/gO8qJOF5VcBkZd7L5AB1JB8qAv0="; + hash = "sha256-ibsmlNfW64mzJOhIkJydpJ9ys2PbPfyj2XBGwY5xuww="; }; makeCacheWritable = true; npmFlags = [ "--ignore-scripts" ]; - npmDepsHash = "sha256-WHxrIzZLktU6Jd6wm5VeGnZAbNT3pkNfqcxE6tdBoq8="; + npmDepsHash = "sha256-TUdzrEa2dW4rKA/9HGgF6c9JTMiBmNWvc/9R0kIKSls="; nativeBuildInputs = [ makeWrapper From 1c06d56289c9624a7e9d9b5d5827ee0faca4e5a6 Mon Sep 17 00:00:00 2001 From: qzylinra <225773816+qzylinra@users.noreply.github.com> Date: Tue, 6 Jan 2026 08:02:46 +0800 Subject: [PATCH 035/115] sqlpage: 0.40.0 -> 0.41.0 --- pkgs/by-name/sq/sqlpage/package.nix | 54 ++++++++++++++--------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/pkgs/by-name/sq/sqlpage/package.nix b/pkgs/by-name/sq/sqlpage/package.nix index 31c6706bb988..f6231a08b016 100644 --- a/pkgs/by-name/sq/sqlpage/package.nix +++ b/pkgs/by-name/sq/sqlpage/package.nix @@ -10,31 +10,31 @@ }: let - apexcharts = fetchurl { - url = "https://cdn.jsdelivr.net/npm/apexcharts@5.3.0/dist/apexcharts.min.js"; - hash = "sha256-OtfH8igG4/XVMWV1155dCl8kGhruowISVUm7ZZF0VwU="; + apexcharts = { + url = "https://cdn.jsdelivr.net/npm/apexcharts@5.3.6/dist/apexcharts.min.js"; + hash = "sha256-qNJtESJROYHRKwS/u3zdu4Fev69db17hKHZvrqGiqRs="; }; - tablerCss = fetchurl { + tablerCss = { url = "https://cdn.jsdelivr.net/npm/@tabler/core@1.4.0/dist/css/tabler.min.css"; hash = "sha256-fvdQvRBUamldCxJ2etgEi9jz7F3n2u+xBn+dDao9HJo="; }; - tomSelectCss = fetchurl { + tomSelectCss = { url = "https://cdn.jsdelivr.net/npm/tom-select@2.4.3/dist/css/tom-select.bootstrap5.css"; hash = "sha256-vW5UjM/Ka9/jIY8I5s5KcudaTRWh/cCGE1ZUsrJvlI0="; }; - tablerVendorsCss = fetchurl { + tablerVendorsCss = { url = "https://cdn.jsdelivr.net/npm/@tabler/core@1.4.0/dist/css/tabler-vendors.min.css"; hash = "sha256-/VPz9GtiH1Es1KGLY706UIayEEgG93B6aIBa3WzwKYc="; }; - tablerJs = fetchurl { + tablerJs = { url = "https://cdn.jsdelivr.net/npm/@tabler/core@1.4.0/dist/js/tabler.min.js"; hash = "sha256-tgx2Fg6XYkV027jPEKvmrummSTtgCW/fwV3R3SvZnrk="; }; - tablerIcons = fetchurl { + tablerIcons = { url = "https://cdn.jsdelivr.net/npm/@tabler/icons-sprite@3.34.0/dist/tabler-sprite.svg"; hash = "sha256-pCPkhrx0GnPg5/EthJ7pLdMxb7wbYMJ0R7WchDcffpg="; }; - tomselect = fetchurl { + tomselect = { url = "https://cdn.jsdelivr.net/npm/tom-select@2.4.1/dist/js/tom-select.popular.min.js"; hash = "sha256-Cb1Xmb9qQO8I1mMVkz4t2bT8l7HX+1JeKncGBSytSHQ="; }; @@ -42,41 +42,41 @@ in rustPlatform.buildRustPackage (finalAttrs: { pname = "sqlpage"; - version = "0.40.0"; + version = "0.41.0"; src = fetchFromGitHub { owner = "lovasoa"; repo = "SQLpage"; tag = "v${finalAttrs.version}"; - hash = "sha256-CmsAImnySdXlPQGWNMkPYhVj0HsvCzFB2LXeqFnjWG4="; + hash = "sha256-rUij1nhXcLEwdUUVpKoUbgNqV47TvmMCEds4ihP9QL4="; }; postPatch = '' substituteInPlace sqlpage/apexcharts.js \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/apexcharts@5.3.0/dist/apexcharts.min.js */' \ - "$(cat ${apexcharts})" + --replace-fail '/* !include ${apexcharts.url} */' \ + "$(cat ${fetchurl apexcharts})" substituteInPlace sqlpage/sqlpage.css \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/@tabler/core@1.4.0/dist/css/tabler.min.css */' \ - "$(cat ${tablerCss})" \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/@tabler/core@1.4.0/dist/css/tabler-vendors.min.css */' \ - "$(cat ${tablerVendorsCss})" \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/tom-select@2.4.3/dist/css/tom-select.bootstrap5.css */' \ - "$(cat ${tomSelectCss})" + --replace-fail '/* !include ${tablerCss.url} */' \ + "$(cat ${fetchurl tablerCss})" \ + --replace-fail '/* !include ${tablerVendorsCss.url} */' \ + "$(cat ${fetchurl tablerVendorsCss})" \ + --replace-fail '/* !include ${tomSelectCss.url} */' \ + "$(cat ${fetchurl tomSelectCss})" substituteInPlace sqlpage/sqlpage.js \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/@tabler/core@1.4.0/dist/js/tabler.min.js */' \ - "$(cat ${tablerJs})" + --replace-fail '/* !include ${tablerJs.url} */' \ + "$(cat ${fetchurl tablerJs})" substituteInPlace sqlpage/tabler-icons.svg \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/@tabler/icons-sprite@3.34.0/dist/tabler-sprite.svg */' \ - "$(cat ${tablerIcons})" + --replace-fail '/* !include ${tablerIcons.url} */' \ + "$(cat ${fetchurl tablerIcons})" substituteInPlace sqlpage/tomselect.js \ - --replace-fail '/* !include https://cdn.jsdelivr.net/npm/tom-select@2.4.1/dist/js/tom-select.popular.min.js */' \ - "$(cat ${tomselect})" + --replace-fail '/* !include ${tomselect.url} */' \ + "$(cat ${fetchurl tomselect})" substituteInPlace build.rs \ - --replace-fail "https://cdn.jsdelivr.net/npm/@tabler/icons-sprite@3.35.0/dist/tabler-sprite.svg" "${tablerIcons}" \ + --replace-fail "https://cdn.jsdelivr.net/npm/@tabler/icons-sprite@3.35.0/dist/tabler-sprite.svg" "${fetchurl tablerIcons}" \ --replace-fail "copy_url_to_opened_file(&client, sprite_url, &mut sprite_content).await;" "sprite_content = std::fs::read(sprite_url).unwrap();" ''; - cargoHash = "sha256-CTJYFzSOLYFq7I9lJhD3JcO2PuqQjqtXnBCEk2VfLfI="; + cargoHash = "sha256-jyhvhViPz/tj76mvmaIih4LaCH+ODFa8gs0/MTYbuQg="; nativeBuildInputs = [ pkg-config ]; From 6a79e5b1e287b86acf2d56cefb996d0e7c9b30af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C2=B7=F0=90=91=91=F0=90=91=B4=F0=90=91=95=F0=90=91=91?= =?UTF-8?q?=F0=90=91=A9=F0=90=91=A4?= Date: Tue, 6 Jan 2026 10:52:57 +0700 Subject: [PATCH 036/115] =?UTF-8?q?h2o:=202.3.0-rolling-2025-12-05=20?= =?UTF-8?q?=E2=86=92=202.3.0-rolling-2026-01-06?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/by-name/h2/h2o/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/h2/h2o/package.nix b/pkgs/by-name/h2/h2o/package.nix index bc2c7bcce43c..6e123675578b 100644 --- a/pkgs/by-name/h2/h2o/package.nix +++ b/pkgs/by-name/h2/h2o/package.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "h2o"; - version = "2.3.0-rolling-2025-12-05"; + version = "2.3.0-rolling-2026-01-06"; src = fetchFromGitHub { owner = "h2o"; repo = "h2o"; - rev = "df3d192f701e48864459fff80bc81135c339b7b0"; - hash = "sha256-XArZFBkV0nnsh+QXmoZUttvB9vlz8+CrFWaQt8dR7n4="; + rev = "2e62ee29c98ef70e9f1749884557229fd255a8e5"; + hash = "sha256-fzP95nV1uxjdknsf8BIKerybkmPmlmRF1/m498MSqyk="; }; outputs = [ From 9b2d30d5c8bbc6c3f871946b5ef93b2ee054d32c Mon Sep 17 00:00:00 2001 From: linsui <36977733+linsui@users.noreply.github.com> Date: Tue, 6 Jan 2026 22:07:06 +0800 Subject: [PATCH 037/115] aapt: 8.4.1-11315950 -> 8.13.2-14304508 --- pkgs/by-name/aa/aapt/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/aa/aapt/package.nix b/pkgs/by-name/aa/aapt/package.nix index c7767eebe559..e0e6e58a32a2 100644 --- a/pkgs/by-name/aa/aapt/package.nix +++ b/pkgs/by-name/aa/aapt/package.nix @@ -8,7 +8,7 @@ stdenvNoCC.mkDerivation rec { pname = "aapt"; - version = "8.4.1-11315950"; + version = "8.13.2-14304508"; src = let @@ -16,12 +16,12 @@ stdenvNoCC.mkDerivation rec { if stdenvNoCC.hostPlatform.isLinux then { url = "https://dl.google.com/android/maven2/com/android/tools/build/aapt2/${version}/aapt2-${version}-linux.jar"; - hash = "sha256-eSQaZrRtb5aCG320hrXAL256fxa/oMhBC4hcTA1KRxs="; + hash = "sha256-eiNY58ueDpcyKvAteRuKFVr3r22kOhwSADkaH3CRwKw="; } else if stdenvNoCC.hostPlatform.isDarwin then { url = "https://dl.google.com/android/maven2/com/android/tools/build/aapt2/${version}/aapt2-${version}-osx.jar"; - hash = "sha256-LUihNjase79JbUkHDb10A5d6pJ+VXDVfv7m09hkL8kY="; + hash = "sha256-RI/S2oXMSvipALRfeRTsiXUh130/b8iP+EO0yltd7x0="; } else throw "Unsupport platform: ${stdenvNoCC.system}"; From dd54c0d8dd60309bdeaf28fb55d4e798558cd4ac Mon Sep 17 00:00:00 2001 From: Jonathan Davies Date: Wed, 7 Jan 2026 12:34:12 +0000 Subject: [PATCH 038/115] =?UTF-8?q?prometheus:=203.8.1=20=E2=86=92=203.9.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/by-name/pr/prometheus/source.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/pr/prometheus/source.nix b/pkgs/by-name/pr/prometheus/source.nix index d112d1e2116c..4a52a7ef75b2 100644 --- a/pkgs/by-name/pr/prometheus/source.nix +++ b/pkgs/by-name/pr/prometheus/source.nix @@ -1,6 +1,6 @@ { - version = "3.8.1"; - hash = "sha256-mb1aMWpIELyZaqjYX1teYdtAK/+W9jzdPwzgbT7AVj4="; - npmDepsHash = "sha256-wmxvlQWQO2gP2apupMJssqAPr1ntWWIazduQU3AuodU="; - vendorHash = "sha256-35pVMl1Hu970BQE6jMzT1xaz/3FaIFWUtel0cl/uBdw="; + version = "3.9.0"; + hash = "sha256-80EkJaH7NMQOCHWKz19c/8c2ncBE+qAFJ5fp1mbK+tU="; + npmDepsHash = "sha256-Y4874LZjj48y5eeByhhMAJp3NtX0QAehYvjzxkK2B2E="; + vendorHash = "sha256-CGec9hR/BpO3rXNGYm0V9AESsGIR6a0734e8t9oMOpA="; } From d423ba9990da5fb015ce796ee61b9958030eea86 Mon Sep 17 00:00:00 2001 From: Jonathan Davies Date: Wed, 7 Jan 2026 12:35:53 +0000 Subject: [PATCH 039/115] prometheus: Add STACKIT service discovery --- pkgs/by-name/pr/prometheus/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/pr/prometheus/package.nix b/pkgs/by-name/pr/prometheus/package.nix index 082dfcc2e044..0018ed929d5f 100644 --- a/pkgs/by-name/pr/prometheus/package.nix +++ b/pkgs/by-name/pr/prometheus/package.nix @@ -24,6 +24,7 @@ enableOVHCloud ? true, enablePuppetDB ? true, enableScaleway ? true, + enableSTACKIT ? true, enableTriton ? true, enableUyuni ? true, enableVultr ? true, @@ -127,6 +128,7 @@ buildGoModule (finalAttrs: { ${lib.optionalString enableOVHCloud "echo - github.com/prometheus/prometheus/discovery/ovhcloud"} ${lib.optionalString enablePuppetDB "echo - github.com/prometheus/prometheus/discovery/puppetdb"} ${lib.optionalString enableScaleway "echo - github.com/prometheus/prometheus/discovery/scaleway"} + ${lib.optionalString enableSTACKIT "echo - github.com/prometheus/prometheus/discovery/stackit"} ${lib.optionalString enableTriton "echo - github.com/prometheus/prometheus/discovery/triton"} ${lib.optionalString enableUyuni "echo - github.com/prometheus/prometheus/discovery/uyuni"} ${lib.optionalString enableVultr "echo - github.com/prometheus/prometheus/discovery/vultr"} From 20cf8267faf5e7c4ce568e203f99050338a873cc Mon Sep 17 00:00:00 2001 From: liberodark Date: Wed, 7 Jan 2026 17:10:14 +0100 Subject: [PATCH 040/115] sssd: fix pac support --- pkgs/os-specific/linux/sssd/default.nix | 3 +++ .../linux/sssd/fix-kerberos-version.patch | 14 ++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 pkgs/os-specific/linux/sssd/fix-kerberos-version.patch diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix index 1d1f61f7f612..e90a485c6e79 100644 --- a/pkgs/os-specific/linux/sssd/default.nix +++ b/pkgs/os-specific/linux/sssd/default.nix @@ -74,6 +74,9 @@ stdenv.mkDerivation (finalAttrs: { }; patches = [ + # Fix Kerberos Support version for PAC responder + ./fix-kerberos-version.patch + (replaceVars ./fix-ldb-modules-path.patch { inherit ldb; out = null; # will be replaced in postPatch https://github.com/NixOS/nixpkgs/pull/446589#discussion_r2384899857 diff --git a/pkgs/os-specific/linux/sssd/fix-kerberos-version.patch b/pkgs/os-specific/linux/sssd/fix-kerberos-version.patch new file mode 100644 index 000000000000..3634f96a0f4a --- /dev/null +++ b/pkgs/os-specific/linux/sssd/fix-kerberos-version.patch @@ -0,0 +1,14 @@ +diff --git a/src/external/pac_responder.m4 b/src/external/pac_responder.m4 +index 9072718..3501b6b 100644 +--- a/src/external/pac_responder.m4 ++++ b/src/external/pac_responder.m4 +@@ -23,7 +23,8 @@ then + Kerberos\ 5\ release\ 1.18* | \ + Kerberos\ 5\ release\ 1.19* | \ + Kerberos\ 5\ release\ 1.20* | \ +- Kerberos\ 5\ release\ 1.21*) ++ Kerberos\ 5\ release\ 1.21* | \ ++ Kerberos\ 5\ release\ 1.22*) + krb5_version_ok=yes + AC_MSG_RESULT([yes]) + ;; From 81d4c76c1518d3c925b84ea133c9b471fec65f3d Mon Sep 17 00:00:00 2001 From: Jonathan Davies Date: Wed, 7 Jan 2026 17:34:43 +0000 Subject: [PATCH 041/115] =?UTF-8?q?prometheus:=203.9.0=20=E2=86=92=203.9.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/by-name/pr/prometheus/source.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pr/prometheus/source.nix b/pkgs/by-name/pr/prometheus/source.nix index 4a52a7ef75b2..ebb82a9f4806 100644 --- a/pkgs/by-name/pr/prometheus/source.nix +++ b/pkgs/by-name/pr/prometheus/source.nix @@ -1,6 +1,6 @@ { - version = "3.9.0"; - hash = "sha256-80EkJaH7NMQOCHWKz19c/8c2ncBE+qAFJ5fp1mbK+tU="; - npmDepsHash = "sha256-Y4874LZjj48y5eeByhhMAJp3NtX0QAehYvjzxkK2B2E="; + version = "3.9.1"; + hash = "sha256-kqqWFvzEfpG+e+7ils9KE/RNs0eadLqrzMQJsSunQOM="; + npmDepsHash = "sha256-Z+EaIDQLgJ1YQ9tmGZLtvOVaDvZX1qeJJxsCAd/h41k="; vendorHash = "sha256-CGec9hR/BpO3rXNGYm0V9AESsGIR6a0734e8t9oMOpA="; } From 5be241f3c9b834ffe3d43a71baaee81f395892ce Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 7 Jan 2026 20:10:55 +0000 Subject: [PATCH 042/115] python3Packages.pyhik: 0.3.4 -> 0.4.0 --- pkgs/development/python-modules/pyhik/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyhik/default.nix b/pkgs/development/python-modules/pyhik/default.nix index 0549014737d4..830a8fca2292 100644 --- a/pkgs/development/python-modules/pyhik/default.nix +++ b/pkgs/development/python-modules/pyhik/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "pyhik"; - version = "0.3.4"; + version = "0.4.0"; pyproject = true; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "mezz64"; repo = "pyHik"; tag = version; - hash = "sha256-/0cmEhjiojj7ovEUICun+naR4iVnrsJk+6/4+tTXEQA="; + hash = "sha256-ayjpIsUX/PVNOTuOm/3pwLfnypEpMWQAJAf1JzFocu4="; }; build-system = [ From a856bea8a0bf666c94c7deffe17a43df31c01661 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 8 Jan 2026 10:03:36 +0000 Subject: [PATCH 043/115] kiro: 0.8.0 -> 0.8.86 --- pkgs/by-name/ki/kiro/package.nix | 2 +- pkgs/by-name/ki/kiro/sources.json | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/ki/kiro/package.nix b/pkgs/by-name/ki/kiro/package.nix index 6873b09b8d85..223487c071a7 100644 --- a/pkgs/by-name/ki/kiro/package.nix +++ b/pkgs/by-name/ki/kiro/package.nix @@ -15,7 +15,7 @@ in inherit useVSCodeRipgrep; commandLineArgs = extraCommandLineArgs; - version = "0.8.0"; + version = "0.8.86"; pname = "kiro"; # You can find the current VSCode version in the About dialog: diff --git a/pkgs/by-name/ki/kiro/sources.json b/pkgs/by-name/ki/kiro/sources.json index e55bff8cb668..d4def8e00728 100644 --- a/pkgs/by-name/ki/kiro/sources.json +++ b/pkgs/by-name/ki/kiro/sources.json @@ -1,14 +1,14 @@ { "x86_64-linux": { - "url": "https://prod.download.desktop.kiro.dev/releases/stable/linux-x64/signed/0.8.0/tar/kiro-ide-0.8.0-stable-linux-x64.tar.gz", - "hash": "sha256-4sEy0cnn0cALGX7zBgGg0SUakh5CIscgSE98lrbPKGM=" + "url": "https://prod.download.desktop.kiro.dev/releases/stable/linux-x64/signed/0.8.86/tar/kiro-ide-0.8.86-stable-linux-x64.tar.gz", + "hash": "sha256-Qa8Yy6pHDk2id9749HY068sEulhIV1CcQYjo3P7XRNg=" }, "x86_64-darwin": { - "url": "https://prod.download.desktop.kiro.dev/releases/stable/darwin-x64/signed/0.8.0/kiro-ide-0.8.0-stable-darwin-x64.dmg", - "hash": "sha256-cAs91Mq8HSdAuAi9KeUFddbyE824iFWFbVkuRiyNBbc=" + "url": "https://prod.download.desktop.kiro.dev/releases/stable/darwin-x64/signed/0.8.86/kiro-ide-0.8.86-stable-darwin-x64.dmg", + "hash": "sha256-fyuvVj4gbAVRKwHF8qkSSV7E3HcPBIKkPGhY3C2NRlc=" }, "aarch64-darwin": { - "url": "https://prod.download.desktop.kiro.dev/releases/stable/darwin-arm64/signed/0.8.0/kiro-ide-0.8.0-stable-darwin-arm64.dmg", - "hash": "sha256-+wyZ3ar3Kp41xREMQsdd06nqr9+ep5i/g/xWbAytDOE=" + "url": "https://prod.download.desktop.kiro.dev/releases/stable/darwin-arm64/signed/0.8.86/kiro-ide-0.8.86-stable-darwin-arm64.dmg", + "hash": "sha256-HVq0b7oe2Ly2At4emLwSQCoWNpiOBnpS0uOSlwn9BMo=" } } From 75cf04564d59c4c8cb6f9c305a326f444bfe885b Mon Sep 17 00:00:00 2001 From: Arnout Engelen Date: Sun, 21 Dec 2025 14:46:14 +0100 Subject: [PATCH 044/115] onlyoffice-documentserver: build from source instead of relying on upstream deb --- .../modules/services/web-apps/onlyoffice.nix | 21 ++- .../on/onlyoffice-documentserver/package.nix | 178 ++++++++++++------ pkgs/by-name/x2/x2t/package.nix | 58 +++++- 3 files changed, 190 insertions(+), 67 deletions(-) diff --git a/nixos/modules/services/web-apps/onlyoffice.nix b/nixos/modules/services/web-apps/onlyoffice.nix index 498aae2b29e2..10c0ed1b779c 100644 --- a/nixos/modules/services/web-apps/onlyoffice.nix +++ b/nixos/modules/services/web-apps/onlyoffice.nix @@ -101,6 +101,12 @@ in }; wopi = lib.mkEnableOption "Enable WOPI support"; + + loglevel = lib.mkOption { + type = lib.types.str; + default = "WARN"; + description = "Default loglevel to use for documentserver and converter"; + }; }; config = lib.mkIf cfg.enable { @@ -264,8 +270,15 @@ in "postgresql.target" ]; wantedBy = [ "multi-user.target" ]; + environment = { + NODE_CONFIG_DIR = "/run/onlyoffice/config"; + NODE_DISABLE_COLORS = "1"; + NODE_ENV = "production-linux"; + }; serviceConfig = { - ExecStart = "${cfg.package.fhs}/bin/onlyoffice-wrapper FileConverter/converter /run/onlyoffice/config"; + # needs to be ran wrapped in FHS for now + # because the default config refers to many FHS paths + ExecStart = "${cfg.package.fhs}/bin/onlyoffice-wrapper ${cfg.package.fileconverter}/bin/fileconverter /run/onlyoffice/config"; Group = "onlyoffice"; Restart = "always"; RuntimeDirectory = "onlyoffice"; @@ -326,6 +339,10 @@ in jq '.FileConverter.converter.x2tPath = "${cfg.x2t}/bin/x2t"' \ /run/onlyoffice/config/production-linux.json | sponge /run/onlyoffice/config/production-linux.json + chmod u+w /run/onlyoffice/config/log4js/production.json + jq '.categories.default.level = "${cfg.loglevel}"' \ + /run/onlyoffice/config/log4js/production.json | sponge /run/onlyoffice/config/log4js/production.json + if psql -d onlyoffice -c "SELECT 'task_result'::regclass;" >/dev/null; then psql -f ${cfg.package}/var/www/onlyoffice/documentserver/server/schema/postgresql/removetbl.sql psql -f ${cfg.package}/var/www/onlyoffice/documentserver/server/schema/postgresql/createdb.sql @@ -344,7 +361,7 @@ in requires = [ "postgresql.target" ]; wantedBy = [ "multi-user.target" ]; serviceConfig = { - ExecStart = "${cfg.package.fhs}/bin/onlyoffice-wrapper DocService/docservice /run/onlyoffice/config"; + ExecStart = "${cfg.package.fhs}/bin/onlyoffice-wrapper ${cfg.package.docservice}/bin/docservice /run/onlyoffice/config"; ExecStartPre = [ onlyoffice-prestart ]; Group = "onlyoffice"; Restart = "always"; diff --git a/pkgs/by-name/on/onlyoffice-documentserver/package.nix b/pkgs/by-name/on/onlyoffice-documentserver/package.nix index e55f0cfc5da9..59bf1a6b4483 100644 --- a/pkgs/by-name/on/onlyoffice-documentserver/package.nix +++ b/pkgs/by-name/on/onlyoffice-documentserver/package.nix @@ -1,78 +1,135 @@ { - lib, - stdenv, buildFHSEnv, + buildNpmPackage, corefonts, - dejavu_fonts, dpkg, + dejavu_fonts, + fetchFromGitHub, fetchurl, gcc-unwrapped, + lib, liberation_ttf_v1, - writeScript, - xorg, + lndir, nixosTests, + pkg-config, + stdenv, + vips, + writeScript, + x2t, }: let + version = "9.2.1"; + server-src = fetchFromGitHub { + owner = "ONLYOFFICE"; + repo = "server"; + tag = "v9.2.1.1"; + hash = "sha256-McG+PGL+ZmmnInuBhqVqMeX0o36/LbC0C5vQA1TDjO8="; + }; + common = buildNpmPackage (finalAttrs: { + name = "onlyoffice-server-Common"; + src = server-src; + sourceRoot = "${finalAttrs.src.name}/Common"; + npmDepsHash = "sha256-zFGqDtnNFzXCwp6uvK04GDMRG6BATv6ti3Wi8ikLjBU="; + dontNpmBuild = true; + postPatch = '' + # https://github.com/ONLYOFFICE/build_tools/blob/ef8153c053bed41909ceb0762b124f8fe7faa0a7/scripts/build_server.py#L34 + sed -e "s/^const buildVersion = '[0-9.]*'/const buildVersion = '${version}'/" -i sources/commondefines.js + ''; + postInstall = '' + ln -s $out/lib/node_modules/common $out/lib/node_modules/Common + ''; + }); + docservice = buildNpmPackage (finalAttrs: { + name = "onlyoffice-server-DocService"; + src = server-src; + sourceRoot = "${finalAttrs.src.name}/DocService"; + nativeBuildInputs = [ + pkg-config + ]; + buildInputs = [ + vips.dev + ]; + npmDepsHash = "sha256-4t3wrO+Tt3bTRzmvB+tbVr5D3fXpn7CCU7+dNRc7xEo="; + npmFlags = [ "--loglevel=verbose" ]; + dontNpmBuild = true; + postInstall = '' + # it would be neater if this were a 'ln -s', but this is not possible + # because common/sources/notificationService.js has a circular dependency + # back on DocService + cp -r ${common}/lib/node_modules/common $out/lib/node_modules/Common + ln -s $out/lib/node_modules/coauthoring $out/lib/node_modules/DocService + ''; + }); + fileconverter = buildNpmPackage (finalAttrs: { + name = "onlyoffice-server-FileConverter"; + src = server-src; + + sourceRoot = "${finalAttrs.src.name}/FileConverter"; + + npmDepsHash = "sha256-JKZqbpVBNe6dwxsTg8WqlJAlAqOYmqm+LyWgIxpRb8k="; + + dontNpmBuild = true; + + postInstall = '' + ln -s ${common}/lib/node_modules/common $out/lib/node_modules/Common + ln -s ${docservice}/lib/node_modules/coauthoring $out/lib/node_modules/DocService + ''; + }); # var/www/onlyoffice/documentserver/server/DocService/docservice - onlyoffice-documentserver = stdenv.mkDerivation rec { + onlyoffice-documentserver = stdenv.mkDerivation { pname = "onlyoffice-documentserver"; version = "9.2.1"; - src = fetchurl ( - { - "aarch64-linux" = { - url = "https://github.com/ONLYOFFICE/DocumentServer/releases/download/v${version}/onlyoffice-documentserver_arm64.deb"; - sha256 = "sha256-1hSGR68v2azRT2PsthXKjEekGekgAv0FFESrXK6vGs0="; - }; - "x86_64-linux" = { - url = "https://github.com/ONLYOFFICE/DocumentServer/releases/download/v${version}/onlyoffice-documentserver_amd64.deb"; - sha256 = "sha256-/H/x069JA9MtrfILos5KRT0IKOHKOuS7nI1ZspizvvA="; - }; - } - .${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}") - ); + src = fetchFromGitHub { + owner = "ONLYOFFICE"; + repo = "document-server-package"; + tag = "v9.2.1.13"; + hash = "sha256-jyXSYkWu63vdeWsRm1Pl/3p3jRjasj0whzN0CytdHks="; + }; - preferLocalBuild = true; - - unpackCmd = "dpkg -x $curSrc source"; - - nativeBuildInputs = [ - dpkg - ]; + buildPhase = '' + runHook preBuild + # nothing for now + runHook postBuild + ''; installPhase = '' - # replace dangling symlinks which are not copied into fhs with actually files - mkdir lib - for file in var/www/onlyoffice/documentserver/server/FileConverter/bin/*.so* ; do - ln -rs "$file" lib/$(basename "$file") - done + mkdir -p $out/etc/onlyoffice/documentserver/log4js + cp ${server-src}/Common/config/default.json $out/etc/onlyoffice/documentserver + cp ${server-src}/Common/config/production-linux.json $out/etc/onlyoffice/documentserver + cp ${server-src}/Common/config/log4js/production.json $out/etc/onlyoffice/documentserver/log4js - # NixOS uses systemd, not supervisor - rm -rf etc/supervisor + mkdir -p $out/var/www/onlyoffice/documentserver-example + cp -r common/documentserver-example/welcome $out/var/www/onlyoffice/documentserver-example - install -Dm755 usr/bin/documentserver-prepare4shutdown.sh -t $out/bin - # maintainer scripts which expect supervisorctl, try to write into the nix store or are handled by nixos modules - rm -rf usr/bin + mkdir -p $out/var/www/onlyoffice/documentserver + ln -s ${x2t.components.web-apps} $out/var/www/onlyoffice/documentserver/web-apps + # copying instead of linking for now because we want to inject + # AllFonts.js in here: + cp -r ${x2t.components.sdkjs} $out/var/www/onlyoffice/documentserver/sdkjs - # .deb default documentation - rm -rf usr/share + # we don't currently support sdkjs plugins in NixOS + # https://github.com/ONLYOFFICE/build_tools/blob/master/scripts/deploy_server.py#L130 + mkdir -p $out/var/www/onlyoffice/documentserver/sdkjs-plugins + echo "[]" > $out/var/www/onlyoffice/documentserver/sdkjs-plugins/plugin-list-default.json - # required for bwrap --bind - mkdir -p var/lib/onlyoffice/ var/www/onlyoffice/documentserver/fonts/ + mkdir -p $out/var/www/onlyoffice/documentserver/server/schema + cp -r ${server-src}/schema/* $out/var/www/onlyoffice/documentserver/server/schema + mkdir -p $out/var/www/onlyoffice/documentserver/server/FileConverter/bin - # see usr/bin/documentserver-flush-cache.sh - cp var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js{.tpl,} - substituteInPlace var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js \ - --replace-fail '{{HASH_POSTFIX}}' "$(basename $out | cut -d '-' -f 1)" - - mv * $out/ + ## required for bwrap --bind + chmod u+w $out/var + mkdir -p $out/var/lib/onlyoffice + chmod u+w $out/var/www/onlyoffice/documentserver + mkdir $out/var/www/onlyoffice/documentserver/fonts ''; # stripping self extracting javascript binaries likely breaks them dontStrip = true; passthru = { + inherit fileconverter common docservice; tests = nixosTests.onlyoffice; fhs = buildFHSEnv { name = "onlyoffice-wrapper"; @@ -85,6 +142,7 @@ let corefonts dejavu_fonts liberation_ttf_v1 + fileconverter ]; extraBuildCommands = '' @@ -105,7 +163,7 @@ let export NODE_DISABLE_COLORS=1 export NODE_ENV=production-linux - if [[ $1 == DocService/docservice ]]; then + if [[ $1 == *"docservice" ]]; then mkdir -p var/www/onlyoffice/documentserver/sdkjs/slide/themes/ # symlinking themes/src breaks discovery in allfontsgen rm -rf var/www/onlyoffice/documentserver/sdkjs/slide/themes/src @@ -114,14 +172,15 @@ let # onlyoffice places generated files in those directores rm -rf var/www/onlyoffice/documentserver/sdkjs/common/* - ${xorg.lndir}/bin/lndir -silent ${onlyoffice-documentserver}/var/www/onlyoffice/documentserver/sdkjs/common/ var/www/onlyoffice/documentserver/sdkjs/common/ + ${lndir}/bin/lndir -silent ${onlyoffice-documentserver}/var/www/onlyoffice/documentserver/sdkjs/common/ var/www/onlyoffice/documentserver/sdkjs/common/ rm -rf var/www/onlyoffice/documentserver/server/FileConverter/bin/* - ${xorg.lndir}/bin/lndir -silent ${onlyoffice-documentserver}/var/www/onlyoffice/documentserver/server/FileConverter/bin/ var/www/onlyoffice/documentserver/server/FileConverter/bin/ + ${lndir}/bin/lndir -silent ${onlyoffice-documentserver}/var/www/onlyoffice/documentserver/server/FileConverter/bin/ var/www/onlyoffice/documentserver/server/FileConverter/bin/ # https://github.com/ONLYOFFICE/document-server-package/blob/master/common/documentserver/bin/documentserver-generate-allfonts.sh.m4 + # TODO --use-system doesn't actually appear to make a difference? echo -n Generating AllFonts.js, please wait... - "var/www/onlyoffice/documentserver/server/tools/allfontsgen"\ - --input="${onlyoffice-documentserver}/var/www/onlyoffice/documentserver/core-fonts"\ + "${x2t.components.allfontsgen}/bin/allfontsgen"\ + --input="${x2t.components.core-fonts}"\ --allfonts-web="var/www/onlyoffice/documentserver/sdkjs/common/AllFonts.js"\ --allfonts="var/www/onlyoffice/documentserver/server/FileConverter/bin/AllFonts.js"\ --images="var/www/onlyoffice/documentserver/sdkjs/common/Images"\ @@ -130,21 +189,22 @@ let --use-system="true" echo Done + # TODO x2t brings its on DoctRenderer.config, so it wouldn't pick up the new fonts: echo -n Generating presentation themes, please wait... - "var/www/onlyoffice/documentserver/server/tools/allthemesgen"\ - --converter-dir="var/www/onlyoffice/documentserver/server/FileConverter/bin"\ + "${x2t.components.allthemesgen}/bin/allthemesgen"\ + --converter-dir="${x2t}/bin"\ --src="var/www/onlyoffice/documentserver/sdkjs/slide/themes"\ --output="var/www/onlyoffice/documentserver/sdkjs/common/Images" - "var/www/onlyoffice/documentserver/server/tools/allthemesgen"\ - --converter-dir="var/www/onlyoffice/documentserver/server/FileConverter/bin"\ + "${x2t.components.allthemesgen}/bin/allthemesgen"\ + --converter-dir="${x2t}/bin"\ --src="var/www/onlyoffice/documentserver/sdkjs/slide/themes"\ --output="var/www/onlyoffice/documentserver/sdkjs/common/Images"\ --postfix="ios"\ --params="280,224" - "var/www/onlyoffice/documentserver/server/tools/allthemesgen"\ - --converter-dir="var/www/onlyoffice/documentserver/server/FileConverter/bin"\ + "${x2t.components.allthemesgen}/bin/allthemesgen"\ + --converter-dir="${x2t}/bin"\ --src="var/www/onlyoffice/documentserver/sdkjs/slide/themes"\ --output="var/www/onlyoffice/documentserver/sdkjs/common/Images"\ --postfix="android"\ @@ -152,14 +212,13 @@ let echo Done fi - exec var/www/onlyoffice/documentserver/server/$1 + exec $1 ''; }; }; meta = { description = "ONLYOFFICE Document Server is an online office suite comprising viewers and editors"; - mainProgram = "documentserver-prepare4shutdown.sh"; longDescription = '' ONLYOFFICE Document Server is an online office suite comprising viewers and editors for texts, spreadsheets and presentations, fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time. @@ -170,7 +229,6 @@ let "x86_64-linux" "aarch64-linux" ]; - sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; maintainers = with lib.maintainers; [ raboof ]; }; }; diff --git a/pkgs/by-name/x2/x2t/package.nix b/pkgs/by-name/x2/x2t/package.nix index 3519c6886459..8bb46f0acc87 100644 --- a/pkgs/by-name/x2/x2t/package.nix +++ b/pkgs/by-name/x2/x2t/package.nix @@ -9,6 +9,7 @@ harfbuzz, libheif, nixosTests, + optipng, x265, libde265, icu, @@ -119,7 +120,9 @@ let qmakeFlags = [ ]; dontStrip = false; - # Revisions that correspond to onlyoffice-documentserver 9.2.1 + # x2t is not 'directly' versioned, so we version it after the version + # of documentserver it's pulled into as a submodule + version = "9.2.1"; core-rev = "a22f0bfb6032e91f218951ef1c0fc29f6d1ceb36"; core = fetchFromGitHub { owner = "ONLYOFFICE"; @@ -155,14 +158,23 @@ let autoconf automake grunt-cli + optipng ]; dontNpmBuild = true; + preBuild = '' + export PRODUCT_VERSION=${version} + ''; + postBuild = '' chmod u+w .. mkdir ../deploy chmod u+w -R ../apps + + mkdir -p ./node_modules/optipng-bin/vendor + ln -s ${optipng}/bin/optipng ./node_modules/optipng-bin/vendor/optipng + grunt --force ''; @@ -171,6 +183,11 @@ let cp -r ../deploy/web-apps $out + ## see usr/bin/documentserver-flush-cache.sh + chmod u+w $out/apps/api/documents + substituteInPlace $out/apps/api/documents/api.js \ + --replace-fail '{{HASH_POSTFIX}}' "$(basename $out | cut -d '-' -f 1)" + runHook postInstall ''; }); @@ -719,6 +736,32 @@ let runHook postInstall ''; }; + allthemesgen = buildCoreComponent "DesktopEditor/allthemesgen" { + buildInputs = [ + unicodeConverter + kernel + graphics + network + doctrenderer + docxrenderer + pdffile + xpsfile + djvufile + ]; + qmakeFlags = qmakeFlags ++ icuQmakeFlags; + preConfigure = '' + source ${fixIcu} + ''; + dontStrip = true; + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + cp $BUILDRT/build/bin/*/* $BUILDRT/build/bin/*/*/* $out/bin + + runHook postInstall + ''; + }; core-fonts = fetchFromGitHub { owner = "ONLYOFFICE"; repo = "core-fonts"; @@ -741,9 +784,7 @@ let in buildCoreComponent "X2tConverter/build/Qt" { pname = "x2t"; - # x2t is not 'directly' versioned, so we version it after the version - # of documentserver it's pulled into as a submodule - version = "9.2.1"; + inherit version; buildInputs = [ unicodeConverter @@ -794,7 +835,7 @@ buildCoreComponent "X2tConverter/build/Qt" { mkdir -p $out/bin find $BUILDRT/build -type f -exec cp {} $out/bin \; - mkdir -p $out/etc + mkdir $out/etc cat >$out/etc/DoctRenderer.config < ${sdkjs}/common/Native/native.js @@ -806,6 +847,11 @@ buildCoreComponent "X2tConverter/build/Qt" { EOF + # TODO when allthemesgen invokes x2t as the converter, it + # hard-codes expecting DoctRenderer.config in the same dir + # the x2t binary is located: + ln -s $out/etc/DoctRenderer.config $out/bin/DoctRenderer.config + runHook postInstall ''; passthru.tests = { @@ -824,7 +870,9 @@ buildCoreComponent "X2tConverter/build/Qt" { passthru.components = { inherit allfontsgen + allthemesgen allfonts + core-fonts unicodeConverter kernel graphics From 8997b8f411a424a53efe8249a6f525d9d231eb40 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 8 Jan 2026 14:54:12 -0800 Subject: [PATCH 045/115] python3Packages.dissect-evidence: disable broken test under Python 3.14 --- .../development/python-modules/dissect-evidence/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/python-modules/dissect-evidence/default.nix b/pkgs/development/python-modules/dissect-evidence/default.nix index fb4e347f2063..232a30076820 100644 --- a/pkgs/development/python-modules/dissect-evidence/default.nix +++ b/pkgs/development/python-modules/dissect-evidence/default.nix @@ -7,6 +7,7 @@ setuptools, setuptools-scm, pytestCheckHook, + pythonAtLeast, }: buildPythonPackage rec { @@ -33,6 +34,11 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; + disabledTests = lib.optionals (pythonAtLeast "3.14") [ + # https://github.com/fox-it/dissect.evidence/issues/46 + "test_ewf" + ]; + pythonImportsCheck = [ "dissect.evidence" ]; meta = { From d7de293e03e997605d896c9798d4bb6cc2ad6404 Mon Sep 17 00:00:00 2001 From: Chuck Boecking Date: Thu, 8 Jan 2026 23:03:59 +0000 Subject: [PATCH 046/115] http-nu: 0.5.0 -> 0.9.0 --- pkgs/by-name/ht/http-nu/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ht/http-nu/package.nix b/pkgs/by-name/ht/http-nu/package.nix index 812941d8f9e9..8beb48736254 100644 --- a/pkgs/by-name/ht/http-nu/package.nix +++ b/pkgs/by-name/ht/http-nu/package.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "http-nu"; - version = "0.5.0"; + version = "0.9.0"; src = fetchFromGitHub { owner = "cablehead"; repo = "http-nu"; tag = "v${finalAttrs.version}"; - hash = "sha256-Ri0/HnTINXGrdzh26uT+JD32sbKLnbzq8ps2+LUbbI8="; + hash = "sha256-Tnu5Ophc20+fhAfqfRgfuJVdWojBBPThNPNlcefDVrs="; }; - cargoHash = "sha256-C4VYE6dLHwYaJ9LI4A+R1AvK3Qu8lV2ISy+8ymFKQg8="; + cargoHash = "sha256-J1zGm5F+as/B7lXbiZVBWD4/axfRBFSDL0MEUOQ09GI="; nativeBuildInputs = lib.optionals stdenvNoCC.hostPlatform.isDarwin [ rustPlatform.bindgenHook From b87deae448312c11d232bcf9fca6d23bcf2bbc9f Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 8 Jan 2026 15:07:22 -0800 Subject: [PATCH 047/115] python3Packages.dissect-target: disable under Python 3.14 --- pkgs/development/python-modules/dissect-target/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/dissect-target/default.nix b/pkgs/development/python-modules/dissect-target/default.nix index 9a81ca85a4bd..b8da32ecded7 100644 --- a/pkgs/development/python-modules/dissect-target/default.nix +++ b/pkgs/development/python-modules/dissect-target/default.nix @@ -34,6 +34,7 @@ paho-mqtt, pycryptodome, pytestCheckHook, + pythonAtLeast, ruamel-yaml, setuptools, setuptools-scm, @@ -55,6 +56,8 @@ buildPythonPackage rec { fetchLFS = true; }; + disabled = pythonAtLeast "3.14"; + postPatch = '' substituteInPlace pyproject.toml \ --replace-fail "flow.record~=" "flow.record>=" From 9c322da9a1f3a80e4702315239104d72a1985924 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 8 Jan 2026 16:40:49 -0800 Subject: [PATCH 048/115] python3Packages.anyconfig: apply finalAttrs --- pkgs/development/python-modules/anyconfig/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/anyconfig/default.nix b/pkgs/development/python-modules/anyconfig/default.nix index 9cea4cd5891e..b777fca3b2fa 100644 --- a/pkgs/development/python-modules/anyconfig/default.nix +++ b/pkgs/development/python-modules/anyconfig/default.nix @@ -6,13 +6,13 @@ setuptools, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "anyconfig"; version = "0.14.0"; format = "setuptools"; src = fetchPypi { - inherit pname version; + inherit (finalAttrs) pname version; hash = "sha256-LN9Ur12ujpF0Pe2CxU7Z2Krvo6lyL11F6bX3S2A+AU0="; }; @@ -44,4 +44,4 @@ buildPythonPackage rec { license = lib.licenses.mit; maintainers = with lib.maintainers; [ tboerger ]; }; -} +}) From aed8699425b5e3d6dfb02c809003ad481255c7db Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 8 Jan 2026 16:40:49 -0800 Subject: [PATCH 049/115] python3Packages.anyconfig: build from GitHub --- pkgs/development/python-modules/anyconfig/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/anyconfig/default.nix b/pkgs/development/python-modules/anyconfig/default.nix index b777fca3b2fa..8893fbf1d7b0 100644 --- a/pkgs/development/python-modules/anyconfig/default.nix +++ b/pkgs/development/python-modules/anyconfig/default.nix @@ -1,6 +1,6 @@ { buildPythonPackage, - fetchPypi, + fetchFromGitHub, lib, pytestCheckHook, setuptools, @@ -11,9 +11,11 @@ buildPythonPackage (finalAttrs: { version = "0.14.0"; format = "setuptools"; - src = fetchPypi { - inherit (finalAttrs) pname version; - hash = "sha256-LN9Ur12ujpF0Pe2CxU7Z2Krvo6lyL11F6bX3S2A+AU0="; + src = fetchFromGitHub { + owner = "ssato"; + repo = "python-anyconfig"; + tag = "RELEASE_${finalAttrs.version}"; + hash = "sha256-ngXj/KzErz81T09j6tlV9OYDX3DqW5I8xo/ulLNokpQ="; }; postPatch = '' From eec0fb17836627df7d55144eda7d2c5487429960 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Thu, 8 Jan 2026 16:52:20 -0800 Subject: [PATCH 050/115] python3Packages.anyconfig: disable broken tests for python 3.14 --- pkgs/development/python-modules/anyconfig/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/python-modules/anyconfig/default.nix b/pkgs/development/python-modules/anyconfig/default.nix index 8893fbf1d7b0..3b05879eb277 100644 --- a/pkgs/development/python-modules/anyconfig/default.nix +++ b/pkgs/development/python-modules/anyconfig/default.nix @@ -3,6 +3,7 @@ fetchFromGitHub, lib, pytestCheckHook, + pythonAtLeast, setuptools, }: @@ -29,6 +30,11 @@ buildPythonPackage (finalAttrs: { disabledTests = [ # OSError: /build/anyconfig-0.12.0/tests/res/cli/no_template/10/e/10.* should exists but not "test_runs_for_datasets" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # Python 3.14: output format has changed + "test_dumps" + "test_dump" ]; disabledTestPaths = [ From c4e5c19fb6dad50a0f79494a5ca9cd5cdc5fa66a Mon Sep 17 00:00:00 2001 From: linsui <36977733+linsui@users.noreply.github.com> Date: Tue, 6 Jan 2026 22:47:55 +0800 Subject: [PATCH 051/115] i2p: use jre_minimal --- pkgs/by-name/i2/i2p/package.nix | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/i2/i2p/package.nix b/pkgs/by-name/i2/i2p/package.nix index 1855271314c2..86adad7c1306 100644 --- a/pkgs/by-name/i2/i2p/package.nix +++ b/pkgs/by-name/i2/i2p/package.nix @@ -2,7 +2,8 @@ lib, stdenv, fetchzip, - jdk, + jdk_headless, + jre_minimal, ant, gettext, which, @@ -12,6 +13,22 @@ gmp, }: +let + jre = jre_minimal.override { + modules = [ + "java.base" + "java.desktop" + "java.instrument" + "java.logging" + "java.management" + "java.naming" + "java.rmi" + "java.security.jgss" + "java.sql" + "java.xml" + ]; + }; +in stdenv.mkDerivation (finalAttrs: { pname = "i2p"; version = "2.10.0"; @@ -34,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: { makeWrapper ant gettext - jdk + jdk_headless which ]; @@ -77,7 +94,7 @@ stdenv.mkDerivation (finalAttrs: { fi done - makeWrapper ${jdk}/bin/java $out/bin/i2prouter \ + makeWrapper ${jre}/bin/java $out/bin/i2prouter \ --add-flags "-cp $CP -Djava.library.path=$out/lib/ -Di2p.dir.base=$out -DloggerFilenameOverride=logs/log-router-@.txt" \ --add-flags "net.i2p.router.RouterLaunch" From 6bf815b40d95ceb02b5e31ce4632f00bb652092a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 9 Jan 2026 08:25:40 -0800 Subject: [PATCH 052/115] python3Packages.elevenlabs: 2.27.0 -> 2.29.0 Diff: https://github.com/elevenlabs/elevenlabs-python/compare/v2.27.0...v2.29.0 Changelog: https://github.com/elevenlabs/elevenlabs-python/releases/tag/v2.29.0 --- .../python-modules/elevenlabs/default.nix | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/elevenlabs/default.nix b/pkgs/development/python-modules/elevenlabs/default.nix index 3775266d1889..e4b47be7f76b 100644 --- a/pkgs/development/python-modules/elevenlabs/default.nix +++ b/pkgs/development/python-modules/elevenlabs/default.nix @@ -12,20 +12,16 @@ websockets, }: -let - version = "2.27.0"; - tag = "v${version}"; -in -buildPythonPackage { +buildPythonPackage (finalAttrs: { pname = "elevenlabs"; - inherit version; + version = "2.29.0"; pyproject = true; src = fetchFromGitHub { owner = "elevenlabs"; repo = "elevenlabs-python"; - inherit tag; - hash = "sha256-S4UlutpQuF+H3ICB7cBX6tlOUgwHzBYNXR0R5eHji8w="; + tag = "v${finalAttrs.version}"; + hash = "sha256-TtlC9puEOgH2I8zKMM0mXK67LZGN13JIkKpXJJKuVqw="; }; build-system = [ poetry-core ]; @@ -49,10 +45,10 @@ buildPythonPackage { doCheck = false; meta = { - changelog = "https://github.com/elevenlabs/elevenlabs-python/releases/tag/${tag}"; + changelog = "https://github.com/elevenlabs/elevenlabs-python/releases/tag/${finalAttrs.src.tag}"; description = "Official Python API for ElevenLabs Text to Speech"; homepage = "https://github.com/elevenlabs/elevenlabs-python"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ dotlambda ]; }; -} +}) From 5506e8fe3e49c3e183f9638377f0cec033d9e2d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Fri, 9 Jan 2026 08:56:10 -0800 Subject: [PATCH 053/115] python3Packages.pytibber: 0.34.1 -> 0.34.4 Diff: https://github.com/Danielhiversen/pyTibber/compare/0.34.1...0.34.4 Changelog: https://github.com/Danielhiversen/pyTibber/releases/tag/0.34.4 --- pkgs/development/python-modules/pytibber/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pytibber/default.nix b/pkgs/development/python-modules/pytibber/default.nix index 552bc5dcf9ec..452f0c84d92b 100644 --- a/pkgs/development/python-modules/pytibber/default.nix +++ b/pkgs/development/python-modules/pytibber/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "pytibber"; - version = "0.34.1"; + version = "0.34.4"; pyproject = true; disabled = pythonOlder "3.11"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "Danielhiversen"; repo = "pyTibber"; tag = version; - hash = "sha256-LfEAn5kCRGUtliHug1ME+ds5AlKKJhZjcnGBcokHPLI="; + hash = "sha256-iIh6nowT/lScQfYleKYEj40loKkBsFZTOvUsvTF0RPo="; }; build-system = [ setuptools ]; From c1dcc5a40dd08c5a04107b6436a770acb452db7e Mon Sep 17 00:00:00 2001 From: Jost Alemann Date: Fri, 9 Jan 2026 11:56:42 +0100 Subject: [PATCH 054/115] harper: 1.4.0 -> 1.4.1 Changelog: https://github.com/Automattic/harper/releases/tag/v1.4.1 Diff: https://github.com/Automattic/harper/compare/v1.4.0...v1.4.1 --- .../vscode/extensions/elijah-potter.harper/default.nix | 2 +- pkgs/by-name/ha/harper/package.nix | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/elijah-potter.harper/default.nix b/pkgs/applications/editors/vscode/extensions/elijah-potter.harper/default.nix index 66aa1d259dd0..5ed345e04dac 100644 --- a/pkgs/applications/editors/vscode/extensions/elijah-potter.harper/default.nix +++ b/pkgs/applications/editors/vscode/extensions/elijah-potter.harper/default.nix @@ -13,7 +13,7 @@ vscode-utils.buildVscodeMarketplaceExtension { name = "harper"; publisher = "elijah-potter"; version = harper.version; - hash = "sha256-6aR9A2hZMtIIiaJinWUSyJBGAt4Dd9C+r70K6W4K3DA"; + hash = "sha256-9deNEjrt8+PGqdF8WH+nh/K7ypG35GRHSW1nYD8LMdU="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ha/harper/package.nix b/pkgs/by-name/ha/harper/package.nix index 3fa21cf23e15..e67ea3f24b74 100644 --- a/pkgs/by-name/ha/harper/package.nix +++ b/pkgs/by-name/ha/harper/package.nix @@ -8,18 +8,18 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "harper"; - version = "1.4.0"; + version = "1.4.1"; src = fetchFromGitHub { owner = "Automattic"; repo = "harper"; rev = "v${finalAttrs.version}"; - hash = "sha256-JHefzppRB8OmnSH0zAUZTFyBt8sgam4QBfAoZRurYYg="; + hash = "sha256-dJd/+9cFT7SVxTg3igJSC3lbOZcVIwjgGtiB+zPVUFU="; }; buildAndTestSubdir = "harper-ls"; - cargoHash = "sha256-XjE+CXJ25/VfDhkElv+fNDgjBJ2rLeFpnUC/DG8hXAk="; + cargoHash = "sha256-cc8TR+AJbnmzIBNykw1gh6nkuPZWZ7GsGdq06THlh1s="; passthru.updateScript = nix-update-script { }; From 2dadf947f6769ea2bc491896975253258afb6faf Mon Sep 17 00:00:00 2001 From: Edward Wawrzynski Date: Sat, 10 Jan 2026 01:25:53 -0500 Subject: [PATCH 055/115] azahar: support org.gtk.Settings.FileChooser --- pkgs/by-name/az/azahar/package.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/by-name/az/azahar/package.nix b/pkgs/by-name/az/azahar/package.nix index 9f696c48b8a6..b1853e96cd66 100644 --- a/pkgs/by-name/az/azahar/package.nix +++ b/pkgs/by-name/az/azahar/package.nix @@ -34,6 +34,8 @@ xorg, enableQtTranslations ? true, qt6, + gtk3, + gsettings-desktop-schemas, enableCubeb ? true, cubeb, useDiscordRichPresence ? true, @@ -152,6 +154,13 @@ stdenv.mkDerivation (finalAttrs: { (cmakeBool "ENABLE_SSE42" enableSSE42) ]; + preFixup = '' + qtWrapperArgs+=( + --prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" + --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}" + ) + ''; + passthru.updateScript = nix-update-script { }; meta = { From d570cdaf1cf3f9a3a805b27f349b0f4a4be3802f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 10 Jan 2026 21:11:29 +0000 Subject: [PATCH 056/115] laravel: 5.23.2 -> 5.24.0 --- pkgs/by-name/la/laravel/composer.lock | 97 ++++++++++++++------------- pkgs/by-name/la/laravel/package.nix | 6 +- 2 files changed, 52 insertions(+), 51 deletions(-) diff --git a/pkgs/by-name/la/laravel/composer.lock b/pkgs/by-name/la/laravel/composer.lock index 80f2ae49b9b5..78d5640c3b10 100644 --- a/pkgs/by-name/la/laravel/composer.lock +++ b/pkgs/by-name/la/laravel/composer.lock @@ -167,16 +167,16 @@ }, { "name": "illuminate/collections", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/collections.git", - "reference": "16657effa6a5a4e728f9aeb3e38fb4fa9ba70e7d" + "reference": "d3f104a32fdfbf416cd1a839dad0e2c670a03f4e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/collections/zipball/16657effa6a5a4e728f9aeb3e38fb4fa9ba70e7d", - "reference": "16657effa6a5a4e728f9aeb3e38fb4fa9ba70e7d", + "url": "https://api.github.com/repos/illuminate/collections/zipball/d3f104a32fdfbf416cd1a839dad0e2c670a03f4e", + "reference": "d3f104a32fdfbf416cd1a839dad0e2c670a03f4e", "shasum": "" }, "require": { @@ -184,6 +184,7 @@ "illuminate/contracts": "^12.0", "illuminate/macroable": "^12.0", "php": "^8.2", + "symfony/polyfill-php83": "^1.33", "symfony/polyfill-php84": "^1.33", "symfony/polyfill-php85": "^1.33" }, @@ -222,11 +223,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-12-06T18:08:25+00:00" + "time": "2026-01-07T21:26:29+00:00" }, { "name": "illuminate/conditionable", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/conditionable.git", @@ -272,16 +273,16 @@ }, { "name": "illuminate/contracts", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/contracts.git", - "reference": "19e8938edb73047017cfbd443b96844b86da4a59" + "reference": "2c0015e16b40f32c41e49810b6a0acf61204ea3d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/contracts/zipball/19e8938edb73047017cfbd443b96844b86da4a59", - "reference": "19e8938edb73047017cfbd443b96844b86da4a59", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/2c0015e16b40f32c41e49810b6a0acf61204ea3d", + "reference": "2c0015e16b40f32c41e49810b6a0acf61204ea3d", "shasum": "" }, "require": { @@ -316,20 +317,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-11-26T21:36:01+00:00" + "time": "2026-01-07T14:57:06+00:00" }, { "name": "illuminate/filesystem", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/filesystem.git", - "reference": "b1fbb20010e868f838feac86aeac8ba439fca10d" + "reference": "29e1b5f572306c91742514adea3aff93e85f3d3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/filesystem/zipball/b1fbb20010e868f838feac86aeac8ba439fca10d", - "reference": "b1fbb20010e868f838feac86aeac8ba439fca10d", + "url": "https://api.github.com/repos/illuminate/filesystem/zipball/29e1b5f572306c91742514adea3aff93e85f3d3b", + "reference": "29e1b5f572306c91742514adea3aff93e85f3d3b", "shasum": "" }, "require": { @@ -383,11 +384,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-10-29T15:59:33+00:00" + "time": "2025-12-10T20:11:11+00:00" }, { "name": "illuminate/macroable", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/macroable.git", @@ -433,7 +434,7 @@ }, { "name": "illuminate/reflection", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/reflection.git", @@ -484,16 +485,16 @@ }, { "name": "illuminate/support", - "version": "v12.42.0", + "version": "v12.46.0", "source": { "type": "git", "url": "https://github.com/illuminate/support.git", - "reference": "d35411be5657e0b5560a5885f3c9140e4cbe0be5" + "reference": "14bfa6aa9a89fa6366c70d266d6d490f0a349c15" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/d35411be5657e0b5560a5885f3c9140e4cbe0be5", - "reference": "d35411be5657e0b5560a5885f3c9140e4cbe0be5", + "url": "https://api.github.com/repos/illuminate/support/zipball/14bfa6aa9a89fa6366c70d266d6d490f0a349c15", + "reference": "14bfa6aa9a89fa6366c70d266d6d490f0a349c15", "shasum": "" }, "require": { @@ -560,7 +561,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-12-09T15:26:52+00:00" + "time": "2026-01-07T14:57:38+00:00" }, { "name": "laravel/prompts", @@ -957,16 +958,16 @@ }, { "name": "symfony/console", - "version": "v7.4.1", + "version": "v7.4.3", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "6d9f0fbf2ec2e9785880096e3abd0ca0c88b506e" + "reference": "732a9ca6cd9dfd940c639062d5edbde2f6727fb6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/6d9f0fbf2ec2e9785880096e3abd0ca0c88b506e", - "reference": "6d9f0fbf2ec2e9785880096e3abd0ca0c88b506e", + "url": "https://api.github.com/repos/symfony/console/zipball/732a9ca6cd9dfd940c639062d5edbde2f6727fb6", + "reference": "732a9ca6cd9dfd940c639062d5edbde2f6727fb6", "shasum": "" }, "require": { @@ -1031,7 +1032,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.4.1" + "source": "https://github.com/symfony/console/tree/v7.4.3" }, "funding": [ { @@ -1051,7 +1052,7 @@ "type": "tidelift" } ], - "time": "2025-12-05T15:23:39+00:00" + "time": "2025-12-23T14:50:43+00:00" }, { "name": "symfony/deprecation-contracts", @@ -1122,16 +1123,16 @@ }, { "name": "symfony/finder", - "version": "v7.4.0", + "version": "v7.4.3", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "340b9ed7320570f319028a2cbec46d40535e94bd" + "reference": "fffe05569336549b20a1be64250b40516d6e8d06" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/340b9ed7320570f319028a2cbec46d40535e94bd", - "reference": "340b9ed7320570f319028a2cbec46d40535e94bd", + "url": "https://api.github.com/repos/symfony/finder/zipball/fffe05569336549b20a1be64250b40516d6e8d06", + "reference": "fffe05569336549b20a1be64250b40516d6e8d06", "shasum": "" }, "require": { @@ -1166,7 +1167,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v7.4.0" + "source": "https://github.com/symfony/finder/tree/v7.4.3" }, "funding": [ { @@ -1186,7 +1187,7 @@ "type": "tidelift" } ], - "time": "2025-11-05T05:42:40+00:00" + "time": "2025-12-23T14:50:43+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1765,16 +1766,16 @@ }, { "name": "symfony/process", - "version": "v7.4.0", + "version": "v7.4.3", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7ca8dc2d0dcf4882658313aba8be5d9fd01026c8" + "reference": "2f8e1a6cdf590ca63715da4d3a7a3327404a523f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7ca8dc2d0dcf4882658313aba8be5d9fd01026c8", - "reference": "7ca8dc2d0dcf4882658313aba8be5d9fd01026c8", + "url": "https://api.github.com/repos/symfony/process/zipball/2f8e1a6cdf590ca63715da4d3a7a3327404a523f", + "reference": "2f8e1a6cdf590ca63715da4d3a7a3327404a523f", "shasum": "" }, "require": { @@ -1806,7 +1807,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.4.0" + "source": "https://github.com/symfony/process/tree/v7.4.3" }, "funding": [ { @@ -1826,7 +1827,7 @@ "type": "tidelift" } ], - "time": "2025-10-16T11:21:06+00:00" + "time": "2025-12-19T10:00:43+00:00" }, { "name": "symfony/service-contracts", @@ -2007,16 +2008,16 @@ }, { "name": "symfony/translation", - "version": "v8.0.1", + "version": "v8.0.3", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "770e3b8b0ba8360958abedcabacd4203467333ca" + "reference": "60a8f11f0e15c48f2cc47c4da53873bb5b62135d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/770e3b8b0ba8360958abedcabacd4203467333ca", - "reference": "770e3b8b0ba8360958abedcabacd4203467333ca", + "url": "https://api.github.com/repos/symfony/translation/zipball/60a8f11f0e15c48f2cc47c4da53873bb5b62135d", + "reference": "60a8f11f0e15c48f2cc47c4da53873bb5b62135d", "shasum": "" }, "require": { @@ -2076,7 +2077,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v8.0.1" + "source": "https://github.com/symfony/translation/tree/v8.0.3" }, "funding": [ { @@ -2096,7 +2097,7 @@ "type": "tidelift" } ], - "time": "2025-12-01T09:13:36+00:00" + "time": "2025-12-21T10:59:45+00:00" }, { "name": "symfony/translation-contracts", @@ -3988,5 +3989,5 @@ "php": "^8.2" }, "platform-dev": {}, - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.9.0" } diff --git a/pkgs/by-name/la/laravel/package.nix b/pkgs/by-name/la/laravel/package.nix index 1dd2e51baa93..213d2bb3629a 100644 --- a/pkgs/by-name/la/laravel/package.nix +++ b/pkgs/by-name/la/laravel/package.nix @@ -7,19 +7,19 @@ }: php.buildComposerProject2 (finalAttrs: { pname = "laravel"; - version = "5.23.2"; + version = "5.24.0"; src = fetchFromGitHub { owner = "laravel"; repo = "installer"; tag = "v${finalAttrs.version}"; - hash = "sha256-ZGGbWRRmotqUwVICdqHRHy2wH8Nb4WRn+6Ape9kxFlY="; + hash = "sha256-E8BJp4HlViXEzLDStiIn9Rz8COqJ9z+tdLtA+xcoV/A="; }; nativeBuildInputs = [ makeWrapper ]; composerLock = ./composer.lock; - vendorHash = "sha256-fQGj673X6Zmm+6jy2WZ8su8zELPlcI6z4u5NbtQ9gAk="; + vendorHash = "sha256-GV7CiCvkzJvQAv0T7oHPnYu8w4zsLsr6gwAuR1/Zsfo="; # Adding npm (nodejs) and php composer to path postInstall = '' From e96f373a19069829a4b1c9785b50a2426b996666 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 11 Jan 2026 00:24:19 +0000 Subject: [PATCH 057/115] rosa: 1.2.59 -> 1.2.60 --- pkgs/by-name/ro/rosa/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ro/rosa/package.nix b/pkgs/by-name/ro/rosa/package.nix index 8dbb866d21fe..b3bf7a1dd5d1 100644 --- a/pkgs/by-name/ro/rosa/package.nix +++ b/pkgs/by-name/ro/rosa/package.nix @@ -11,13 +11,13 @@ buildGoModule rec { pname = "rosa"; - version = "1.2.59"; + version = "1.2.60"; src = fetchFromGitHub { owner = "openshift"; repo = "rosa"; rev = "v${version}"; - hash = "sha256-/5J0R8LMNnKv2jMgMg9O1IBU84/bAznra5uXt5HvsUY="; + hash = "sha256-VKaoN91kxfGp9rFmO6VyD4WwmppITirenF1qpASDbDI="; }; vendorHash = null; From 7ba7683f7d864171543c7b3f6c2657ffa50f184f Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 11 Jan 2026 13:06:32 +0800 Subject: [PATCH 058/115] nixos/budgie: Move out from X11 Budgie 10.10 is wayland only. --- nixos/doc/manual/release-notes/rl-2305.section.md | 2 +- .../services/{x11 => }/desktop-managers/budgie.nix | 13 ++++++++++--- .../services/x11/desktop-managers/default.nix | 2 +- nixos/tests/budgie.nix | 12 +++++------- .../src/modules/nixos/main.py | 2 +- 5 files changed, 18 insertions(+), 13 deletions(-) rename nixos/modules/services/{x11 => }/desktop-managers/budgie.nix (96%) diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md index d791ffe57acf..ac0a647e66a2 100644 --- a/nixos/doc/manual/release-notes/rl-2305.section.md +++ b/nixos/doc/manual/release-notes/rl-2305.section.md @@ -61,7 +61,7 @@ In addition to numerous new and updated packages, this release has the following - [blesh](https://github.com/akinomyoga/ble.sh), a line editor written in pure bash. Available as [programs.bash.blesh](#opt-programs.bash.blesh.enable). -- [Budgie Desktop](https://github.com/BuddiesOfBudgie/budgie-desktop), a familiar, modern desktop environment. Available as [services.xserver.desktopManager.budgie](options.html#opt-services.xserver.desktopManager.budgie). +- [Budgie Desktop](https://github.com/BuddiesOfBudgie/budgie-desktop), a familiar, modern desktop environment. Available as `services.xserver.desktopManager.budgie`. - [clash-verge](https://github.com/zzzgydi/clash-verge), a Clash GUI based on tauri. Available as [programs.clash-verge](#opt-programs.clash-verge.enable). diff --git a/nixos/modules/services/x11/desktop-managers/budgie.nix b/nixos/modules/services/desktop-managers/budgie.nix similarity index 96% rename from nixos/modules/services/x11/desktop-managers/budgie.nix rename to nixos/modules/services/desktop-managers/budgie.nix index 4ba659fd115e..80511c4e9116 100644 --- a/nixos/modules/services/x11/desktop-managers/budgie.nix +++ b/nixos/modules/services/desktop-managers/budgie.nix @@ -17,7 +17,7 @@ let types ; - cfg = config.services.xserver.desktopManager.budgie; + cfg = config.services.desktopManager.budgie; nixos-background-light = pkgs.nixos-artwork.wallpapers.nineish; nixos-background-dark = pkgs.nixos-artwork.wallpapers.nineish-dark-gray; @@ -63,8 +63,15 @@ in { meta.maintainers = lib.teams.budgie.members; + imports = [ + (lib.mkRenamedOptionModule + [ "services" "xserver" "desktopManager" "budgie" ] + [ "services" "desktopManager" "budgie" ] + ) + ]; + options = { - services.xserver.desktopManager.budgie = { + services.desktopManager.budgie = { enable = mkEnableOption "the Budgie desktop"; sessionPath = mkOption { @@ -128,7 +135,7 @@ in }; }; - services.xserver.desktopManager.budgie.sessionPath = [ pkgs.budgie-desktop-view ]; + services.desktopManager.budgie.sessionPath = [ pkgs.budgie-desktop-view ]; environment.extraInit = '' ${concatMapStrings (p: '' diff --git a/nixos/modules/services/x11/desktop-managers/default.nix b/nixos/modules/services/x11/desktop-managers/default.nix index 528a049b3582..7ff8cabe244a 100644 --- a/nixos/modules/services/x11/desktop-managers/default.nix +++ b/nixos/modules/services/x11/desktop-managers/default.nix @@ -37,7 +37,7 @@ in ./surf-display.nix ./cde.nix ./cinnamon.nix - ./budgie.nix + ../../desktop-managers/budgie.nix ../../desktop-managers/lomiri.nix ../../desktop-managers/cosmic.nix ../../desktop-managers/gnome.nix diff --git a/nixos/tests/budgie.nix b/nixos/tests/budgie.nix index 6fbf13ca9111..a9bb55756797 100644 --- a/nixos/tests/budgie.nix +++ b/nixos/tests/budgie.nix @@ -12,20 +12,18 @@ ]; services.xserver.enable = true; + services.xserver.displayManager.lightdm.enable = true; - services.xserver.displayManager = { - lightdm.enable = true; - autoLogin = { - enable = true; - user = "alice"; - }; + services.displayManager.autoLogin = { + enable = true; + user = "alice"; }; # We don't ship gnome-text-editor in Budgie module, we add this line mainly # to catch eval issues related to this option. environment.budgie.excludePackages = [ pkgs.gnome-text-editor ]; - services.xserver.desktopManager.budgie = { + services.desktopManager.budgie = { enable = true; extraPlugins = [ pkgs.budgie-analogue-clock-applet diff --git a/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py b/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py index 261a03cc9a8c..5987724728f8 100644 --- a/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py +++ b/pkgs/by-name/ca/calamares-nixos-extensions/src/modules/nixos/main.py @@ -197,7 +197,7 @@ cfgbudgie = """ # Enable the X11 windowing system. # Enable the Budgie Desktop environment. services.xserver.displayManager.lightdm.enable = true; - services.xserver.desktopManager.budgie.enable = true; + services.desktopManager.budgie.enable = true; """ From 083ac0c40b49a770d4cc95c89cbc223ef9b7546b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 11 Jan 2026 08:35:48 +0000 Subject: [PATCH 059/115] nixt: 2.8.1 -> 2.8.2 --- pkgs/development/tools/language-servers/nixd/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/language-servers/nixd/default.nix b/pkgs/development/tools/language-servers/nixd/default.nix index f1b9faef3ff9..35a022a5d87a 100644 --- a/pkgs/development/tools/language-servers/nixd/default.nix +++ b/pkgs/development/tools/language-servers/nixd/default.nix @@ -23,13 +23,13 @@ let nixComponents = nixVersions.nixComponents_2_30; common = rec { - version = "2.8.1"; + version = "2.8.2"; src = fetchFromGitHub { owner = "nix-community"; repo = "nixd"; tag = version; - hash = "sha256-daCKs314m8BlxZ9DZRr7XkpcDK9suE5kZK5X4BoZMpA="; + hash = "sha256-rlV3ZAe7HKdt1SlPS6xy+vAxhddKhjn7XvoDnbq2AnE="; }; nativeBuildInputs = [ From 40e5aeb9c8f1c31652bc45a21f1b57999b341d6a Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 11 Jan 2026 11:21:52 +0100 Subject: [PATCH 060/115] victoriatraces: 0.5.1 -> 0.6.0 ChangeLog: https://docs.victoriametrics.com/victoriatraces/changelog/#v060 Just like victoriametrics[1], we now need to allow `mincore`: SECCOMP auid=4294967295 uid=61888 gid=61888 ses=4294967295 pid=859923 comm="victoria-traces" exe="/nix/store/kxqhlmqdc6ml4l9asb69w39yny88hmvf-VictoriaTraces-0.6.0/bin/victoria-traces" sig=31 arch=c000003e syscall=27 compat=0 ip=0x40578e code=0x80000000 [1] efca7ca9dc82b268c6773189a1fee25b6b6ed670 --- nixos/modules/services/databases/victoriatraces.nix | 1 + pkgs/by-name/vi/victoriatraces/package.nix | 11 ++--------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/nixos/modules/services/databases/victoriatraces.nix b/nixos/modules/services/databases/victoriatraces.nix index a15662f9d060..ffec21732f9d 100644 --- a/nixos/modules/services/databases/victoriatraces.nix +++ b/nixos/modules/services/databases/victoriatraces.nix @@ -156,6 +156,7 @@ in SystemCallFilter = [ "@system-service" "~@privileged" + "mincore" ]; }; diff --git a/pkgs/by-name/vi/victoriatraces/package.nix b/pkgs/by-name/vi/victoriatraces/package.nix index 6727f513a08f..4c7657e43286 100644 --- a/pkgs/by-name/vi/victoriatraces/package.nix +++ b/pkgs/by-name/vi/victoriatraces/package.nix @@ -13,22 +13,15 @@ buildGoModule (finalAttrs: { pname = "VictoriaTraces"; - version = "0.5.1"; + version = "0.6.0"; src = fetchFromGitHub { owner = "VictoriaMetrics"; repo = "VictoriaTraces"; tag = "v${finalAttrs.version}"; - hash = "sha256-RvP3hLM8SoDN91PATTI5RTKwnJsomBtWIakRlBprEPA="; + hash = "sha256-gXdOPRC3oxMAimMc4v0CjTb224qiocFY9/1PFH4hbRw="; }; - postPatch = '' - substituteInPlace go.mod \ - --replace-fail "go 1.25.4" "go 1.25.3" - substituteInPlace vendor/modules.txt \ - --replace-fail "go 1.25.4" "go 1.25.3" - ''; - vendorHash = null; subPackages = From 0324234a6b5bd38496c0ca34f41447a3d71504c4 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Fri, 2 Jan 2026 01:12:01 +0000 Subject: [PATCH 061/115] python3Packages.extract-msg: cleanup, fix --- .../python-modules/extract-msg/default.nix | 33 +++++++++++-------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/pkgs/development/python-modules/extract-msg/default.nix b/pkgs/development/python-modules/extract-msg/default.nix index 171ee9acbd11..633218c3621b 100644 --- a/pkgs/development/python-modules/extract-msg/default.nix +++ b/pkgs/development/python-modules/extract-msg/default.nix @@ -1,19 +1,25 @@ { lib, - beautifulsoup4, buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + beautifulsoup4, compressed-rtf, ebcdic, - fetchFromGitHub, olefile, - pytestCheckHook, red-black-tree-mod, rtfde, - setuptools, tzlocal, + + # tests + pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "extract-msg"; version = "0.55.0"; pyproject = true; @@ -21,18 +27,17 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "TeamMsgExtractor"; repo = "msg-extractor"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-n/v3ubgzWlWqLXZfy1O7+FvTJoLMtgL7DFPL39SZnfM="; }; - pythonRelaxDeps = [ - "beautifulsoup4" - "olefile" - "red-black-tree-mod" + build-system = [ + setuptools ]; - build-system = [ setuptools ]; - + pythonRelaxDeps = [ + "beautifulsoup4" + ]; dependencies = [ beautifulsoup4 compressed-rtf @@ -52,8 +57,8 @@ buildPythonPackage rec { meta = { description = "Extracts emails and attachments saved in Microsoft Outlook's .msg files"; homepage = "https://github.com/TeamMsgExtractor/msg-extractor"; - changelog = "https://github.com/TeamMsgExtractor/msg-extractor/blob/${src.tag}/CHANGELOG.md"; + changelog = "https://github.com/TeamMsgExtractor/msg-extractor/blob/${finalAttrs.src.tag}/CHANGELOG.md"; license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ fab ]; }; -} +}) From 7415d97a7abd34d79fc5f699eb1fb1e576dfc0e2 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 11 Jan 2026 13:40:26 +0000 Subject: [PATCH 062/115] kubelogin-oidc: 1.35.0 -> 1.35.2 --- pkgs/by-name/ku/kubelogin-oidc/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ku/kubelogin-oidc/package.nix b/pkgs/by-name/ku/kubelogin-oidc/package.nix index c4ea990b40f0..73639a96d24b 100644 --- a/pkgs/by-name/ku/kubelogin-oidc/package.nix +++ b/pkgs/by-name/ku/kubelogin-oidc/package.nix @@ -6,13 +6,13 @@ buildGoModule (finalAttrs: { pname = "kubelogin"; - version = "1.35.0"; + version = "1.35.2"; src = fetchFromGitHub { owner = "int128"; repo = "kubelogin"; tag = "v${finalAttrs.version}"; - hash = "sha256-POJY3r+8Fx9RUurShNADsin/LHZGvpB/4H6I9eG+4pQ="; + hash = "sha256-jSPNvr+spZvilTooK7s6l8CyvP5tzSWxqJzaoJCA5AM="; }; subPackages = [ "." ]; @@ -22,7 +22,7 @@ buildGoModule (finalAttrs: { "-X main.version=v${finalAttrs.version}" ]; - vendorHash = "sha256-Bjge514SLWjRuoOhnI0OxSJm5utvfDB0hx77uYnGsgY="; + vendorHash = "sha256-otzcOmW3mkiJrIv69wme5cHp5/iO2YSH+ecZgeX2aV0="; # test all packages preCheck = '' From a712f33b347882b447b908ed67ee98b32d2e9b7d Mon Sep 17 00:00:00 2001 From: arthsmn Date: Sun, 11 Jan 2026 12:13:09 -0300 Subject: [PATCH 063/115] wayqt: 0.3.0 -> 0.3.0-unstable-2026-01-05 --- pkgs/by-name/qt/qtgreet/package.nix | 2 ++ pkgs/development/libraries/wayqt/default.nix | 13 +++---------- .../wayqt/fix-qtwayland-header-path.diff | 16 ---------------- 3 files changed, 5 insertions(+), 26 deletions(-) delete mode 100644 pkgs/development/libraries/wayqt/fix-qtwayland-header-path.diff diff --git a/pkgs/by-name/qt/qtgreet/package.nix b/pkgs/by-name/qt/qtgreet/package.nix index 40068bec30ec..508e4a5f4d23 100644 --- a/pkgs/by-name/qt/qtgreet/package.nix +++ b/pkgs/by-name/qt/qtgreet/package.nix @@ -47,6 +47,8 @@ stdenv.mkDerivation (finalAttrs: { (lib.mesonOption "dynpath" "${placeholder "out"}/var/lib/qtgreet") ]; + NIX_LDFLAGS = "-lwayqt-utils-qt6"; + meta = { description = "Qt based greeter for greetd, to be run under wayfire or similar wlr-based compositors"; homepage = "https://gitlab.com/marcusbritanicus/QtGreet"; diff --git a/pkgs/development/libraries/wayqt/default.nix b/pkgs/development/libraries/wayqt/default.nix index a48742949554..215c1b3c558f 100644 --- a/pkgs/development/libraries/wayqt/default.nix +++ b/pkgs/development/libraries/wayqt/default.nix @@ -13,22 +13,15 @@ stdenv.mkDerivation (finalAttrs: { pname = "wayqt"; - version = "0.3.0"; + version = "0.3.0-unstable-2026-01-05"; src = fetchFromGitLab { owner = "desktop-frameworks"; repo = "wayqt"; - rev = "v${finalAttrs.version}"; - hash = "sha256-FPyHm96LYCTqMZlPrZoSPMeyocDjaCnaYJETH/nazBU="; + rev = "2750cd93a3110bff6345f9e2a1a3090a3e3f7203"; + hash = "sha256-WGIZ3OgeGkQWEzc/m0/Moo9Qgr3vg4dFfQhba2vx0do="; }; - patches = [ - # qmake get qtbase's path, but wayqt need qtwayland - (replaceVars ./fix-qtwayland-header-path.diff { - qtWaylandPath = "${qtwayland}/include"; - }) - ]; - nativeBuildInputs = [ meson pkg-config diff --git a/pkgs/development/libraries/wayqt/fix-qtwayland-header-path.diff b/pkgs/development/libraries/wayqt/fix-qtwayland-header-path.diff deleted file mode 100644 index 648cecd918e8..000000000000 --- a/pkgs/development/libraries/wayqt/fix-qtwayland-header-path.diff +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/meson.build b/meson.build -index 5c09644..fc65d37 100644 ---- a/meson.build -+++ b/meson.build -@@ -39,9 +39,8 @@ elif get_option('use_qt_version') == 'qt6' - private_headers: [ 'Gui', 'WaylandClient', 'WaylandGlobalPrivate' ], - ) - -- qmake = find_program( [ 'qmake-qt6', 'qmake6' ], required: true ) -- ret = run_command( qmake, '-query', 'QT_INSTALL_HEADERS', check: true ) -- QtHeaderPath = ret.stdout().strip() -+ qmake = find_program( [ 'qmake-qt6', 'qmake6' ], required: false ) -+ QtHeaderPath = '@qtWaylandPath@' - - QtGlobal = '@0@/QtWaylandGlobal/@1@'.format( QtHeaderPath, QtDeps.version() ) - From 30e9dcf223d6f6662c8d12dd6b03963aae6a47be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 11 Jan 2026 07:16:22 -0800 Subject: [PATCH 064/115] python3Packages.aiohomematic: 2026.1.20 -> 2026.1.27 Diff: https://github.com/SukramJ/aiohomematic/compare/2026.1.20...2026.1.27 Changelog: https://github.com/SukramJ/aiohomematic/blob/2026.1.27/changelog.md --- pkgs/development/python-modules/aiohomematic/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiohomematic/default.nix b/pkgs/development/python-modules/aiohomematic/default.nix index ded3445a9874..cf7465e0bb17 100644 --- a/pkgs/development/python-modules/aiohomematic/default.nix +++ b/pkgs/development/python-modules/aiohomematic/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "aiohomematic"; - version = "2026.1.20"; + version = "2026.1.27"; pyproject = true; src = fetchFromGitHub { owner = "SukramJ"; repo = "aiohomematic"; tag = version; - hash = "sha256-kMDkNd7Rm2MbGn//BOScZ3UhyO3142w6260+sMU4EUs="; + hash = "sha256-KS4mSmu0JY+X5pVrE4IvNjowrgq3CRww1mMmKR0Bedk="; }; build-system = [ setuptools ]; From f5576e893fb4b6ba67b1ca252f8a520fdff323a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 11 Jan 2026 07:16:30 -0800 Subject: [PATCH 065/115] home-assistant-custom-components.homematicip_local: 2.1.0 -> 2.1.1 Diff: https://github.com/SukramJ/custom_homematic/compare/2.1.0...2.1.1 Changelog: https://github.com/SukramJ/custom_homematic/blob/2.1.1/changelog.md --- .../custom-components/homematicip_local/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix b/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix index 6c48ff710d2b..07e3b4458a84 100644 --- a/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix +++ b/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix @@ -13,13 +13,13 @@ buildHomeAssistantComponent rec { owner = "SukramJ"; domain = "homematicip_local"; - version = "2.1.0"; + version = "2.1.1"; src = fetchFromGitHub { owner = "SukramJ"; repo = "custom_homematic"; tag = version; - hash = "sha256-zXosnxVbJ/rADzbOvm6GIJLAx+EIK3vQ50qNck5sYwg="; + hash = "sha256-pE32BBFuhHfEc0mGTrrDqdeHgz6LeOZmJmjfsvdrleQ="; }; postPatch = '' From 7cb8a345830777abfecbe166c8193a6b94250376 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 11 Jan 2026 11:22:47 +0800 Subject: [PATCH 066/115] libxfce4windowing: Build VAPI budgie-desktop no longer ship this in-tree in 10.10. VAPI support is only available in meson build. --- pkgs/by-name/li/libxfce4windowing/package.nix | 30 +++++++++++++++---- .../pkg-config-requires.patch | 24 +++++++++++++++ 2 files changed, 49 insertions(+), 5 deletions(-) create mode 100644 pkgs/by-name/li/libxfce4windowing/pkg-config-requires.patch diff --git a/pkgs/by-name/li/libxfce4windowing/package.nix b/pkgs/by-name/li/libxfce4windowing/package.nix index 6fe9f0e87a82..34a5b7a020d7 100644 --- a/pkgs/by-name/li/libxfce4windowing/package.nix +++ b/pkgs/by-name/li/libxfce4windowing/package.nix @@ -3,10 +3,12 @@ lib, fetchFromGitLab, gettext, + meson, + ninja, pkg-config, python3, + vala, wayland-scanner, - xfce4-dev-tools, glib, gtk3, libdisplay-info, @@ -41,20 +43,32 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-TVu6S/Cip9IqniAvrTU5uSs7Dgm0WZNxjgB4vjHvBNU="; }; + patches = [ + # Headers depend on gtk3 but it is only listed in Requires.private, + # which does not influence Cflags on non-static builds in nixpkgs’s + # pkg-config. Let’s add it to Requires to ensure Cflags are set correctly. + ./pkg-config-requires.patch + ]; + + strictDeps = true; + + depsBuildBuild = [ pkg-config ]; + nativeBuildInputs = [ gettext + meson + ninja pkg-config python3 wayland-scanner - xfce4-dev-tools ] ++ lib.optionals withIntrospection [ gobject-introspection + vala # vala bindings require GObject introspection ]; buildInputs = [ glib - gtk3 libdisplay-info libwnck libX11 @@ -64,12 +78,18 @@ stdenv.mkDerivation (finalAttrs: { wlr-protocols ]; + propagatedBuildInputs = [ + gtk3 + ]; + postPatch = '' patchShebangs xdt-gen-visibility ''; - configureFlags = [ "--enable-maintainer-mode" ]; - enableParallelBuilding = true; + mesonFlags = [ + (lib.mesonBool "introspection" withIntrospection) + (lib.mesonEnable "vala" withIntrospection) + ]; passthru.updateScript = gitUpdater { rev-prefix = "libxfce4windowing-"; diff --git a/pkgs/by-name/li/libxfce4windowing/pkg-config-requires.patch b/pkgs/by-name/li/libxfce4windowing/pkg-config-requires.patch new file mode 100644 index 000000000000..788ffd379280 --- /dev/null +++ b/pkgs/by-name/li/libxfce4windowing/pkg-config-requires.patch @@ -0,0 +1,24 @@ +diff --git a/libxfce4windowing/meson.build b/libxfce4windowing/meson.build +index b1a020b..fcb1b12 100644 +--- a/libxfce4windowing/meson.build ++++ b/libxfce4windowing/meson.build +@@ -144,6 +144,7 @@ pkgconfig.generate( + name: libxfce4windowing_pkgname, + filebase: libxfce4windowing_pkgname, + description: 'X11/Wayland windowing utility library for Xfce', ++ requires: ['gtk+-3.0'], + subdirs: ['xfce4' / libxfce4windowing_pkgname], + install_dir: get_option('prefix') / get_option('libdir') / 'pkgconfig', + ) +diff --git a/libxfce4windowingui/meson.build b/libxfce4windowingui/meson.build +index 68aa909..f56c3c1 100644 +--- a/libxfce4windowingui/meson.build ++++ b/libxfce4windowingui/meson.build +@@ -76,6 +76,7 @@ pkgconfig.generate( + name: libxfce4windowingui_pkgname, + filebase: libxfce4windowingui_pkgname, + description: 'X11/Wayland windowing utility library for Xfce - extra widgets', ++ requires: ['gtk+-3.0'], + subdirs: ['xfce4' / libxfce4windowing_pkgname], + install_dir: get_option('prefix') / get_option('libdir') / 'pkgconfig', + ) From 3a677477faa33cffb8addbb7d25071b1c70519d9 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Sun, 11 Jan 2026 14:53:01 +0000 Subject: [PATCH 067/115] obs-studio-plugins.obs-plugin-countdown: init at 2.1.1 --- .../video/obs-studio/plugins/default.nix | 2 + .../plugins/obs-plugin-countdown.nix | 43 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 pkgs/applications/video/obs-studio/plugins/obs-plugin-countdown.nix diff --git a/pkgs/applications/video/obs-studio/plugins/default.nix b/pkgs/applications/video/obs-studio/plugins/default.nix index 5eeb4b7d0c90..91a0459854bf 100644 --- a/pkgs/applications/video/obs-studio/plugins/default.nix +++ b/pkgs/applications/video/obs-studio/plugins/default.nix @@ -64,6 +64,8 @@ obs-pipewire-audio-capture = callPackage ./obs-pipewire-audio-capture.nix { }; + obs-plugin-countdown = qt6Packages.callPackage ./obs-plugin-countdown.nix { }; + obs-recursion-effect = callPackage ./obs-recursion-effect.nix { }; obs-replay-source = qt6Packages.callPackage ./obs-replay-source.nix { }; diff --git a/pkgs/applications/video/obs-studio/plugins/obs-plugin-countdown.nix b/pkgs/applications/video/obs-studio/plugins/obs-plugin-countdown.nix new file mode 100644 index 000000000000..73502bb921bd --- /dev/null +++ b/pkgs/applications/video/obs-studio/plugins/obs-plugin-countdown.nix @@ -0,0 +1,43 @@ +{ + lib, + stdenv, + fetchFromGitHub, + obs-studio, + cmake, + qt6, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "obs-plugin-countdown"; + version = "2.1.1"; + + src = fetchFromGitHub { + owner = "ashmanix"; + repo = "obs-plugin-countdown"; + tag = finalAttrs.version; + hash = "sha256-rDs+X2eH8aUUH6phEo/pelUY1mHnnJNc6mqcT/lT+6c="; + }; + + buildInputs = [ + obs-studio + qt6.qtbase + ]; + dontWrapQtApps = true; + + nativeBuildInputs = [ + cmake + ]; + + postInstall = '' + rm -rf "$out/obs-plugins" "$out/data" + ''; + + meta = { + description = "OBS plugin that creates countdown timers"; + homepage = "https://github.com/ashmanix/obs-plugin-countdown"; + changelog = "https://github.com/ashmanix/obs-plugin-countdown/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.gpl2Only; + maintainers = with lib.maintainers; [ GaetanLepage ]; + platforms = lib.platforms.linux; + }; +}) From d69a134a1d7cec9339e93fec6d9d5c839931c147 Mon Sep 17 00:00:00 2001 From: Jared Baur Date: Sat, 10 Jan 2026 17:51:08 -0800 Subject: [PATCH 068/115] coreboot-toolchain: fix building src FOD At some point, this FOD failed to build because we have `allowedRequisites = []`, but the failure mentions that the FOD has a requisite of itself. Nix already enforces that FODs don't reference any store paths, so no need for this really. --- pkgs/development/tools/misc/coreboot-toolchain/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/tools/misc/coreboot-toolchain/default.nix b/pkgs/development/tools/misc/coreboot-toolchain/default.nix index 403f8601a2f6..5fc88bc6407f 100644 --- a/pkgs/development/tools/misc/coreboot-toolchain/default.nix +++ b/pkgs/development/tools/misc/coreboot-toolchain/default.nix @@ -38,7 +38,6 @@ let PATH=${lib.makeBinPath [ getopt ]}:$PATH ${stdenv.shell} $out/util/crossgcc/buildgcc -W > $out/.crossgcc_version rm -rf $out/.git ''; - allowedRequisites = [ ]; }; archives = ./stable.nix; From 9a08e18fbe23e4b028663b2ecd2c80e2b31f6552 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 11 Jan 2026 21:08:14 +0000 Subject: [PATCH 069/115] snac2: 2.86 -> 2.87 --- pkgs/by-name/sn/snac2/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sn/snac2/package.nix b/pkgs/by-name/sn/snac2/package.nix index 07b8548b7409..9682a3715ac6 100644 --- a/pkgs/by-name/sn/snac2/package.nix +++ b/pkgs/by-name/sn/snac2/package.nix @@ -10,14 +10,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "snac2"; - version = "2.86"; + version = "2.87"; src = fetchFromGitea { domain = "codeberg.org"; owner = "grunfink"; repo = "snac2"; tag = finalAttrs.version; - hash = "sha256-q2sdG8QGIZWCHpEM0MFaC6/K9Rcv2AW6W07c+40tFuM="; + hash = "sha256-CY4YfnIGQs7BcZrDRD8i+8Wq5eC1jbex6UR9bGgMw40="; }; buildInputs = [ From c7de6f1015fceefe2cbd1b9775ed977191df3d26 Mon Sep 17 00:00:00 2001 From: provokateurin Date: Sun, 11 Jan 2026 22:39:01 +0100 Subject: [PATCH 070/115] mintotp: init at 0.3.0 --- pkgs/by-name/mi/mintotp/package.nix | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 pkgs/by-name/mi/mintotp/package.nix diff --git a/pkgs/by-name/mi/mintotp/package.nix b/pkgs/by-name/mi/mintotp/package.nix new file mode 100644 index 000000000000..4faf3a6f2540 --- /dev/null +++ b/pkgs/by-name/mi/mintotp/package.nix @@ -0,0 +1,26 @@ +{ + python3Packages, + fetchPypi, + lib, +}: +python3Packages.buildPythonApplication rec { + pname = "mintotp"; + version = "0.3.0"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + hash = "sha256-0PTbXts4p0gRIBdqUm6MKVObnoBYHdLcwYEVV9d8+tU="; + }; + + build-system = [ python3Packages.setuptools ]; + + meta = { + description = "Minimal TOTP generator"; + homepage = "https://github.com/susam/mintotp"; + changelog = "https://github.com/susam/mintotp/raw/${version}/CHANGES.md"; + license = lib.licenses.mit; + mainProgram = "mintotp"; + maintainers = with lib.maintainers; [ provokateurin ]; + }; +} From 0465aeb80666254f33906d9016492fdaab2197e7 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Fri, 9 Jan 2026 23:33:30 +0100 Subject: [PATCH 071/115] wayvr: init at 26.1.2 Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/wa/wayvr/package.nix | 96 +++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 pkgs/by-name/wa/wayvr/package.nix diff --git a/pkgs/by-name/wa/wayvr/package.nix b/pkgs/by-name/wa/wayvr/package.nix new file mode 100644 index 000000000000..60cac3211124 --- /dev/null +++ b/pkgs/by-name/wa/wayvr/package.nix @@ -0,0 +1,96 @@ +{ + alsa-lib, + dbus, + fetchFromGitHub, + lib, + libX11, + libXext, + libXrandr, + libxcb, + libxkbcommon, + nix-update-script, + openssl, + openvr, + openxr-loader, + pipewire, + pkg-config, + procps, + pulseaudio, + rustPlatform, + shaderc, + stdenv, + testers, + wayvr, + withOpenVR ? !stdenv.hostPlatform.isAarch64, +}: +rustPlatform.buildRustPackage rec { + pname = "wayvr"; + version = "26.1.2"; + + src = fetchFromGitHub { + owner = "wlx-team"; + repo = "wayvr"; + tag = "v${version}"; + hash = "sha256-UZ5zcalez6B+212OqCaEXSoRfhaExuy0W8HX8b4flSU="; + }; + + cargoHash = "sha256-zqB2ybdpQEGdlkNin6mlUfaVRkpOtFl2CVCLAdKDMoQ="; + + nativeBuildInputs = [ + pkg-config + rustPlatform.bindgenHook + ]; + + buildInputs = [ + alsa-lib + dbus + libX11 + libXext + libXrandr + libxcb + libxkbcommon + openssl + openxr-loader + pipewire + ] + ++ lib.optionals withOpenVR [ openvr ]; + + env.SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib"; + + postPatch = '' + substituteAllInPlace dash-frontend/src/util/pactl_wrapper.rs \ + --replace-fail '"pactl"' '"${lib.getExe' pulseaudio "pactl"}"' + + # steam_utils also calls xdg-open as well as steam. Those should probably be pulled from the environment + substituteInPlace dash-frontend/src/util/steam_utils.rs \ + --replace-fail '"pkill"' '"${lib.getExe' procps "pkill"}"' + ''; + + buildNoDefaultFeatures = true; + buildFeatures = [ + "openxr" + "osc" + "x11" + "wayland" + ] + ++ lib.optionals withOpenVR [ "openvr" ]; + + passthru = { + tests.testVersion = testers.testVersion { package = wayvr; }; + + updateScript = nix-update-script { }; + }; + + meta = { + description = "Your way to enjoy VR on Linux! Access your Wayland/X11 desktop from SteamVR/Monado (OpenVR+OpenXR support)"; + homepage = "https://github.com/wlx-team/wayvr"; + license = with lib.licenses; [ + gpl3Only + mit # wayvr-ipc + ]; + maintainers = with lib.maintainers; [ Scrumplex ]; + platforms = lib.platforms.linux; + broken = stdenv.hostPlatform.isAarch64 && withOpenVR; + mainProgram = "wayvr"; + }; +} From 636bf545e3c95f8a95b8e23b2bad2c2a2726b862 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Fri, 9 Jan 2026 23:33:59 +0100 Subject: [PATCH 072/115] wayvr-dashboard: drop in favor of wayvr Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/wa/wayvr-dashboard/package.nix | 83 --------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 83 deletions(-) delete mode 100644 pkgs/by-name/wa/wayvr-dashboard/package.nix diff --git a/pkgs/by-name/wa/wayvr-dashboard/package.nix b/pkgs/by-name/wa/wayvr-dashboard/package.nix deleted file mode 100644 index ba67b89c900f..000000000000 --- a/pkgs/by-name/wa/wayvr-dashboard/package.nix +++ /dev/null @@ -1,83 +0,0 @@ -# SPDX-FileCopyrightText: 2025 Hana Kretzer -# -# SPDX-License-Identifier: MIT -{ - alsa-lib, - cargo-tauri, - fetchFromGitHub, - fetchNpmDeps, - gdk-pixbuf, - glib, - lib, - librsvg, - nodejs, - npmHooks, - openssl, - pkg-config, - pulseaudio, - rustPlatform, - webkitgtk_4_1, - wrapGAppsHook4, -}: -rustPlatform.buildRustPackage rec { - pname = "wayvr-dashboard"; - version = "0.3.5"; - - src = fetchFromGitHub { - owner = "olekolek1000"; - repo = "wayvr-dashboard"; - tag = version; - hash = "sha256-C23O9EFOpGwamJuKjluBAMFF7YaNDqd61JVDkWyoy+E="; - }; - - cargoHash = "sha256-aljJ+N47rFSMAxdW4plqhHggLYHD+sJNUCcG/tWzUxU="; - - npmDeps = fetchNpmDeps { - inherit src; - hash = "sha256-kyb4xzBkNTCIzOEUTuPeESDOAqfWseoouUkZjqI/NhQ="; - }; - - nativeBuildInputs = [ - cargo-tauri.hook - nodejs - npmHooks.npmConfigHook - pkg-config - wrapGAppsHook4 - ]; - - buildInputs = [ - alsa-lib - gdk-pixbuf - glib - librsvg - openssl - webkitgtk_4_1 - ]; - - preBuild = '' - # using sass-embedded fails at executing node_modules/sass-embedded-linux-x64/dart-sass/src/dart - rm -r node_modules/sass-embedded* - ''; - - postInstall = '' - gappsWrapperArgs+=( - --prefix PATH : "${lib.makeBinPath [ pulseaudio ]}}" - ) - install -Dm644 wayvr-dashboard.svg $out/share/icons/hicolor/scalable/apps/wayvr-dashboard.svg - ''; - - cargoRoot = "src-tauri"; - buildAndTestSubdir = cargoRoot; - - meta = { - description = "Work-in-progress overlay application for launching various applications and games directly into a VR desktop environment"; - homepage = "https://github.com/olekolek1000/wayvr-dashboard"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ - nanoyaki - Scrumplex - ]; - platforms = lib.platforms.linux; - mainProgram = "wayvr-dashboard"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index d4f5aad043eb..67754dcf108c 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1738,6 +1738,7 @@ mapAliases { wasm-strip = throw "'wasm-strip' has been removed due to upstream deprecation. Use 'wabt' instead."; # Added 2025-11-06 wavebox = throw "'wavebox' has been removed due to lack of maintenance in nixpkgs"; # Added 2025-06-24 wavm = throw "wavm has been removed, as it does not build with supported LLVM versions"; # Added 2025-08-10 + wayvr-dashboard = throw "'wayvr-dashboard' and 'wlx-overlay-s' have been merged into a single application. Please switch to 'wayvr'"; # Added 2026-01-09 wcurl = throw "'wcurl' has been removed due to being bundled with 'curl'"; # Added 2025-07-04 wdomirror = throw "'wdomirror' has been removed as it is unmaintained upstream, Consider using 'wl-mirror' instead"; # Added 2025-09-04 webfontkitgenerator = webfont-bundler; # Added 2025-07-27 From 6a7f9c412c11b7bacdb2179618477fb765286b58 Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Fri, 9 Jan 2026 23:34:33 +0100 Subject: [PATCH 073/115] wlx-overlay-s: drop in favor of wayvr Signed-off-by: Sefa Eyeoglu --- pkgs/by-name/wl/wlx-overlay-s/package.nix | 106 ---------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 106 deletions(-) delete mode 100644 pkgs/by-name/wl/wlx-overlay-s/package.nix diff --git a/pkgs/by-name/wl/wlx-overlay-s/package.nix b/pkgs/by-name/wl/wlx-overlay-s/package.nix deleted file mode 100644 index 0b380a30e1ff..000000000000 --- a/pkgs/by-name/wl/wlx-overlay-s/package.nix +++ /dev/null @@ -1,106 +0,0 @@ -{ - alsa-lib, - dbus, - fetchFromGitHub, - fontconfig, - lib, - libGL, - libX11, - libxcb, - libXext, - libXrandr, - libxkbcommon, - makeWrapper, - nix-update-script, - openvr, - openxr-loader, - pipewire, - pkg-config, - pulseaudio, - rustPlatform, - shaderc, - stdenv, - testers, - wayland, - wlx-overlay-s, - # openvr support is broken on aarch64-linux - withOpenVr ? !stdenv.hostPlatform.isAarch64, -}: - -rustPlatform.buildRustPackage rec { - pname = "wlx-overlay-s"; - version = "25.4.2"; - - src = fetchFromGitHub { - owner = "galister"; - repo = "wlx-overlay-s"; - rev = "v${version}"; - hash = "sha256-lWUfhiHRxu72p9ZG2f2fZH6WZECm/fOKcK05MLZV+MI="; - }; - - cargoHash = "sha256-em5sWSty2/pZp2jTwBnLUIBgPOcoMpwELwj984XYf+k="; - - # explicitly only add openvr if withOpenVr is set to true. - buildNoDefaultFeatures = true; - buildFeatures = [ - "openxr" - "osc" - "x11" - "wayland" - "wayvr" - ] - ++ lib.optional withOpenVr "openvr"; - - nativeBuildInputs = [ - makeWrapper - pkg-config - rustPlatform.bindgenHook - ]; - - buildInputs = [ - alsa-lib - dbus - fontconfig - libGL - libX11 - libxcb - libXext - libXrandr - libxkbcommon - openxr-loader - pipewire - wayland - ] - ++ lib.optional withOpenVr openvr; - - env.SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib"; - - postPatch = '' - substituteAllInPlace src/res/watch.yaml \ - --replace '"pactl"' '"${lib.getExe' pulseaudio "pactl"}"' - substituteInPlace wlx-overlay-s.desktop \ - --replace 'Categories=Utility;' 'Categories=Utility;X-WiVRn-VR;' - - # TODO: src/res/keyboard.yaml references 'whisper_stt' - ''; - postInstall = '' - install -Dm644 wlx-overlay-s.desktop $out/share/applications/wlx-overlay-s.desktop - install -Dm644 wlx-overlay-s.svg $out/share/icons/hicolor/scalable/apps/wlx-overlay-s.svg - ''; - - passthru = { - tests.testVersion = testers.testVersion { package = wlx-overlay-s; }; - - updateScript = nix-update-script { }; - }; - - meta = { - description = "Wayland/X11 desktop overlay for SteamVR and OpenXR, Vulkan edition"; - homepage = "https://github.com/galister/wlx-overlay-s"; - license = lib.licenses.gpl3Only; - maintainers = with lib.maintainers; [ Scrumplex ]; - platforms = lib.platforms.linux; - broken = stdenv.hostPlatform.isAarch64 && withOpenVr; - mainProgram = "wlx-overlay-s"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 67754dcf108c..6a839026e248 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1752,6 +1752,7 @@ mapAliases { wineWayland = throw "'wineWayland' has been renamed to/replaced by 'wine-wayland'"; # Converted to throw 2025-10-27 winhelpcgi = throw "'winhelpcgi' has been removed as it was unmaintained upstream and broken with GCC 14"; # Added 2025-06-14 wkhtmltopdf-bin = throw "'wkhtmltopdf-bin' has been renamed to/replaced by 'wkhtmltopdf'"; # Converted to throw 2025-10-27 + wlx-overlay-s = throw "'wlx-overlay-s' and 'wayvr-dashboard' have been merged into a single application. Please switch to 'wayvr'"; # Added 2026-01-09 wmii_hg = throw "'wmii_hg' has been renamed to/replaced by 'wmii'"; # Converted to throw 2025-10-27 woof = throw "'woof' has been removed as it is broken and unmaintained upstream"; # Added 2025-09-04 worldengine-cli = throw "'worldengine-cli' has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-04 From c662666e1c7547facdc586f3c1f07247a6733e51 Mon Sep 17 00:00:00 2001 From: Heitor Augusto <44377258+HeitorAugustoLN@users.noreply.github.com> Date: Thu, 8 Jan 2026 12:21:32 -0300 Subject: [PATCH 074/115] vinegar: 1.8.1 -> 1.9.2 --- pkgs/by-name/vi/vinegar/package.nix | 102 +++++++++++++++++++++++----- 1 file changed, 86 insertions(+), 16 deletions(-) diff --git a/pkgs/by-name/vi/vinegar/package.nix b/pkgs/by-name/vi/vinegar/package.nix index 286e054be3c9..dd929610b2a4 100644 --- a/pkgs/by-name/vi/vinegar/package.nix +++ b/pkgs/by-name/vi/vinegar/package.nix @@ -2,7 +2,6 @@ lib, buildGoModule, wine64Packages, - fetchpatch, fetchFromGitHub, glib, makeBinaryWrapper, @@ -24,8 +23,18 @@ nix-update-script, }: let + # Based on wine 10.20 + kombuchaPatches = fetchFromGitHub { + name = "kombucha"; + owner = "vinegarhq"; + repo = "kombucha"; + rev = "80f87fdbaae2a42bd66e41319054798fdf30fbe6"; + hash = "sha256-ePBJj1YyHVdlDzyE6dLVl6FMImw3SJFw04vP2o1Tk6M="; + meta.license = lib.licenses.unfree; # No license + }; + wine = - (wine64Packages.staging.override { + (wine64Packages.unstable.override { dbusSupport = true; embedInstallers = true; pulseaudioSupport = true; @@ -33,7 +42,7 @@ let waylandSupport = true; }).overrideAttrs (oldAttrs: { - # https://github.com/flathub/org.vinegarhq.Vinegar/blob/a3c2f1249dec9548bd870027f55edcc58343b685/wine.yml#L31-L38 + # https://github.com/vinegarhq/kombucha/blob/80f87fdbaae2a42bd66e41319054798fdf30fbe6/.github/workflows/wine.yml # --with-wayland is added by waylandSupport = true; configureFlags = oldAttrs.configureFlags or [ ] ++ [ "--disable-tests" @@ -42,33 +51,91 @@ let "--with-pulse" "--with-x" "--without-oss" + "--without-capi" + "--without-cups" + "--without-gphoto" + "--without-gssapi" + "--without-gstreamer" + "--without-krb5" + "--without-netapi" + "--without-opencl" + "--without-pcap" + "--without-sane" + "--without-v4l2" ]; - patches = oldAttrs.patches or [ ] ++ [ - (fetchpatch { - name = "loader-prefer-winedllpath.patch"; - url = "https://raw.githubusercontent.com/flathub/org.vinegarhq.Vinegar/3e07606350d803fa386eb4c358836a230819380d/patches/wine/loader-prefer-winedllpath.patch"; - hash = "sha256-89wnr2rIbyw490hHwckB9g1GKCXm6BERnplfwEUlNOg="; - }) - ]; + patches = + oldAttrs.patches or [ ] + ++ map (name: "${kombuchaPatches}/patches/${name}") [ + /* + We can't apply these because they have binary content: - postInstall = '' - cp $out/bin/wine $out/bin/wine64 - ''; + "0001-fonts-Add-Liberation-Sans-as-an-Arial-replacement.-v.patch" + "0002-fonts-Add-Liberation-Serif-as-an-Times-New-Roman-rep.patch" + "0003-fonts-Add-Liberation-Mono-as-an-Courier-New-replacem.patch" + "0004-fonts-Add-WenQuanYi-Micro-Hei-as-a-Microsoft-Yahei-r.patch" + "0005-Add-licenses-for-fonts-as-separate-files.patch" + */ + "0006-winecfg-Add-staging-tab-for-CSMT.patch" + "0007-winecfg-Add-checkbox-to-enable-disable-vaapi-GPU-dec.patch" + "0008-winecfg-Add-checkbox-to-enable-disable-EAX-support.patch" + "0009-winecfg-Add-checkbox-to-enable-disable-HideWineExpor.patch" + "0010-winecfg-Add-option-to-enable-disable-GTK3-theming.patch" + "0011-winecfg-Move-input-config-options-to-a-dedicated-tab.patch" + "0012-winex11-Always-create-the-HKCU-configuration-registr.patch" + "0013-winex11-Write-supported-keyboard-layout-list-in-regi.patch" + "0014-winecfg-Add-a-keyboard-layout-selection-config-optio.patch" + "0015-winex11-Use-the-user-configured-keyboard-layout-if-a.patch" + "0016-winecfg-Add-a-keyboard-scancode-detection-toggle-opt.patch" + "0017-winex11-Use-scancode-high-bit-to-set-KEYEVENTF_EXTEN.patch" + "0018-winex11-Support-fixed-X11-keycode-to-scancode-conver.patch" + "0019-winex11-Disable-keyboard-scancode-auto-detection-by-.patch" + "0020-win32u-Update-the-window-client-surface-even-with-no.patch" + "0021-wined3d-Create-release-the-window-DCs-with-the-swapc.patch" + "0022-win32u-Avoid-a-crash-when-drawable-fails-to-be-creat.patch" + "0023-win32u-Check-internal-drawables-before-trying-to-cre.patch" + "0024-win32u-Update-window-state-after-setting-internal-pi.patch" + "0025-win32u-Fix-clipping-out-of-vulkan-and-other-process-.patch" + "0026-win32u-Don-t-set-window-pixel-format-if-drawable-cre.patch" + "0027-win32u-Iterate-the-client-surfaces-rather-than-the-t.patch" + "0028-wined3d-Remove-now-unnecessary-pixel-format-restorat.patch" + "0029-wined3d-Do-not-set-context_gl-needs_set-in-wined3d_c.patch" + "0030-wined3d-Get-rid-of-the-restore_pf-field-from-struct-.patch" + "0031-win32u-Remove-unnecessary-drawable-flush-in-context_.patch" + "0032-win32u-Don-t-load-bitmap-only-TTF-fonts-without-bitm.patch" + "0033-winex11-Move-Xfixes-extension-query-to-process_attac.patch" + "0034-winex11-Add-Xwayland-check.patch" + "0035-winex11-Use-XFixes-to-hide-cursor-before-warping-it.patch" + "0036-winex11-Always-ignore-MotionNotify-event-after-SetCu.patch" + "0037-Revert-winecfg-Allow-configuring-default-MIDI-device.patch" + "0038-wined3d-Update-the-context-DC-from-its-swapchain-if-.patch" + "0039-wined3d-Only-invalidate-enabled-clip-planes.patch" + "0040-wined3d-gl-Only-check-GL-context-when-accessing-onsc.patch" + "0041-winex11-Request-drawable-presentation-explicitly-on-.patch" + "0042-wined3d-Add-some-missing-states-to-wined3d_statebloc.patch" + "0043-wined3d-Avoid-some-invalidation-when-the-vertex-decl.patch" + "0044-wined3d-Avoid-some-invalidation-when-the-viewport-is.patch" + "0045-wined3d-Avoid-some-invalidation-when-texture-states-.patch" + "0046-wined3d-Invalidate-fog-constants-only-when-the-VS-is.patch" + "0047-wined3d-Avoid-some-invalidation-when-render-states-a.patch" + "0048-wined3d-gl-Split-UBOs-to-separate-chunks.patch" + "0049-winedbg-Disable.patch" + "0050-wine.inf-Disable-unused-services.patch" + ]; }); in buildGoModule (finalAttrs: { pname = "vinegar"; - version = "1.8.1"; + version = "1.9.2"; src = fetchFromGitHub { owner = "vinegarhq"; repo = "vinegar"; tag = "v${finalAttrs.version}"; - hash = "sha256-7rc6LKZx0OOZDedtTpHIQT4grx1FejRiVnJnVDUddy4="; + hash = "sha256-wL7tdGza+lrIwpG5yG3lIrFq7XoKVR+IIWZIij3eQ5k="; }; - vendorHash = "sha256-TZhdwHom4DTgLs4z/eADeoKakMtyFrvVljDg4JJp7dc="; + vendorHash = "sha256-gzy7Lw7AP1evPSDSzMQb/yzn+8uVtyk8TOBL2fjE3R8="; nativeBuildInputs = [ glib @@ -98,6 +165,9 @@ buildGoModule (finalAttrs: { postPatch = '' substituteInPlace Makefile --replace-fail 'gtk-update-icon-cache' '${lib.getExe' gtk4 "gtk4-update-icon-cache"}' + substituteInPlace internal/config/values.go \ + --replace-fail 'return dirs.WinePath' 'return "${wine}"' \ + --replace-fail '"github.com/vinegarhq/vinegar/internal/dirs"' "" ''; buildPhase = '' From 2826676309a0411e4b7f1591cd16a9d3cc6e554b Mon Sep 17 00:00:00 2001 From: Heitor Augusto <44377258+HeitorAugustoLN@users.noreply.github.com> Date: Sun, 11 Jan 2026 22:06:15 -0300 Subject: [PATCH 075/115] vinegar: 1.9.2 -> 1.9.3 Diff: https://github.com/vinegarhq/vinegar/compare/v1.9.2...v1.9.3 Changelog: https://github.com/vinegarhq/vinegar/releases/tag/v1.9.3 --- pkgs/by-name/vi/vinegar/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/vi/vinegar/package.nix b/pkgs/by-name/vi/vinegar/package.nix index dd929610b2a4..dcf83259e794 100644 --- a/pkgs/by-name/vi/vinegar/package.nix +++ b/pkgs/by-name/vi/vinegar/package.nix @@ -126,13 +126,13 @@ let in buildGoModule (finalAttrs: { pname = "vinegar"; - version = "1.9.2"; + version = "1.9.3"; src = fetchFromGitHub { owner = "vinegarhq"; repo = "vinegar"; tag = "v${finalAttrs.version}"; - hash = "sha256-wL7tdGza+lrIwpG5yG3lIrFq7XoKVR+IIWZIij3eQ5k="; + hash = "sha256-0MNUkfhbsvOJdN89VGTuf3zHUFhimiCNuoY47V03Cgo="; }; vendorHash = "sha256-gzy7Lw7AP1evPSDSzMQb/yzn+8uVtyk8TOBL2fjE3R8="; From ee9e7934aa44b37db1a3117331ff3d187849e22f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 02:53:09 +0000 Subject: [PATCH 076/115] nezha-agent: 1.14.3 -> 1.14.4 --- pkgs/by-name/ne/nezha-agent/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ne/nezha-agent/package.nix b/pkgs/by-name/ne/nezha-agent/package.nix index 4b99d7a475b6..3a11dfe0261c 100644 --- a/pkgs/by-name/ne/nezha-agent/package.nix +++ b/pkgs/by-name/ne/nezha-agent/package.nix @@ -8,16 +8,16 @@ }: buildGoModule (finalAttrs: { pname = "nezha-agent"; - version = "1.14.3"; + version = "1.14.4"; src = fetchFromGitHub { owner = "nezhahq"; repo = "agent"; tag = "v${finalAttrs.version}"; - hash = "sha256-/DDk57rUXiACQaXl4KTMiOFFMopHtYvRI4vnPORseFE="; + hash = "sha256-6/1B+jBTiM3y7eg4aum3OCcIwo7fsCWctJ5NN3VVUwM="; }; - vendorHash = "sha256-A0oVUyCflbEY3vBbJwy7cF2m1x9vHCY2jAOsrm3659E="; + vendorHash = "sha256-d9FYXcVyWEA6HkHYG4mQzZXq0Btb9WgzEr+e99YofA4="; ldflags = [ "-s" From afc9491d557d422e502e92b115fdaa9fad726411 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 04:45:01 +0000 Subject: [PATCH 077/115] television: 0.14.4 -> 0.14.5 --- pkgs/by-name/te/television/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/te/television/package.nix b/pkgs/by-name/te/television/package.nix index ddf349aead95..3e254164e9b9 100644 --- a/pkgs/by-name/te/television/package.nix +++ b/pkgs/by-name/te/television/package.nix @@ -20,16 +20,16 @@ let television = rustPlatform.buildRustPackage (finalAttrs: { pname = "television"; - version = "0.14.4"; + version = "0.14.5"; src = fetchFromGitHub { owner = "alexpasmantier"; repo = "television"; tag = finalAttrs.version; - hash = "sha256-OXWRJGfnNcZQMkmeCjNEsOTTDmvwYTCI8eyWNU4l8D4="; + hash = "sha256-Oa/5f8FQ0WIAWNviiL2OZ+mmac6xUqp0C7ixmU6nt6Q="; }; - cargoHash = "sha256-yLv8Jw3buKg3s0yB+KrVSPM/s+LpBu0brz1U11B/dZg="; + cargoHash = "sha256-rKokOLm2IcUyHiQz+PwmdnpdGTGen2U4iqcY4wsTQl4="; strictDeps = true; nativeBuildInputs = [ From 4c7bb5aa606045d2d93ce6d707dc366ac3b92c04 Mon Sep 17 00:00:00 2001 From: Ryan Omasta Date: Sun, 11 Jan 2026 23:26:21 -0700 Subject: [PATCH 078/115] gcc-arm-embedded: 14.3.rel1 -> 15.2.rel1 --- .../gc/gcc-arm-embedded-15/package.nix | 87 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 pkgs/by-name/gc/gcc-arm-embedded-15/package.nix diff --git a/pkgs/by-name/gc/gcc-arm-embedded-15/package.nix b/pkgs/by-name/gc/gcc-arm-embedded-15/package.nix new file mode 100644 index 000000000000..f574f312ce7d --- /dev/null +++ b/pkgs/by-name/gc/gcc-arm-embedded-15/package.nix @@ -0,0 +1,87 @@ +{ + lib, + stdenv, + fetchurl, + ncurses6, + libxcrypt-legacy, + xz, + zstd, +}: + +stdenv.mkDerivation rec { + pname = "gcc-arm-embedded"; + version = "15.2.rel1"; + + platform = + { + aarch64-darwin = "darwin-arm64"; + aarch64-linux = "aarch64"; + x86_64-linux = "x86_64"; + } + .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); + + src = fetchurl { + url = "https://developer.arm.com/-/media/Files/downloads/gnu/${version}/binrel/arm-gnu-toolchain-${version}-${platform}-arm-none-eabi.tar.xz"; + # hashes obtained from location ${url}.sha256asc + sha256 = + { + aarch64-darwin = "1938a84b7105c192e3fb4fa5e893ba25f425f7ddab40515ae608cd40f68669a8"; + aarch64-linux = "d061559d814b205ed30c5b7c577c03317ec447ca51cd5a159d26b12a5bbeb20c"; + x86_64-linux = "597893282ac8c6ab1a4073977f2362990184599643b4c5ee34870a8215783a16"; + } + .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); + }; + + dontConfigure = true; + dontBuild = true; + dontPatchELF = true; + dontStrip = true; + + installPhase = '' + mkdir -p $out + cp -r * $out + # these binaries require ancient Python 3.8 not available in Nixpkgs + rm $out/bin/{arm-none-eabi-gdb-py,arm-none-eabi-gdb-add-index-py} || : + ''; + + preFixup = lib.optionalString stdenv.hostPlatform.isLinux '' + find $out -type f | while read f; do + patchelf "$f" > /dev/null 2>&1 || continue + patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true + patchelf --set-rpath ${ + lib.makeLibraryPath [ + "$out" + stdenv.cc.cc + ncurses6 + libxcrypt-legacy + xz + zstd + ] + } "$f" || true + done + ''; + + meta = { + description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors"; + homepage = "https://developer.arm.com/open-source/gnu-toolchain/gnu-rm"; + license = with lib.licenses; [ + bsd2 + gpl2 + gpl3 + lgpl21 + lgpl3 + mit + ]; + maintainers = with lib.maintainers; [ + prusnak + prtzl + ryand56 + ]; + platforms = [ + "x86_64-linux" + "aarch64-linux" + "aarch64-darwin" + ]; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f94bfe8a0a49..700ae2629131 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4587,7 +4587,7 @@ with pkgs; inherit (llvmPackages_20) llvm; }; - gcc-arm-embedded = gcc-arm-embedded-14; + gcc-arm-embedded = gcc-arm-embedded-15; # Haskell and GHC From 8a81b46dfad38db897f4b7cc604d3e742ee59b2c Mon Sep 17 00:00:00 2001 From: loner <2788892716@qq.com> Date: Fri, 9 Jan 2026 19:02:54 +0800 Subject: [PATCH 079/115] resterm: 0.15.1 -> 0.17.1 --- pkgs/by-name/re/resterm/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/re/resterm/package.nix b/pkgs/by-name/re/resterm/package.nix index 99a538f5a81b..e8168af66180 100644 --- a/pkgs/by-name/re/resterm/package.nix +++ b/pkgs/by-name/re/resterm/package.nix @@ -8,13 +8,13 @@ buildGoModule (finalAttrs: { pname = "resterm"; - version = "0.15.1"; + version = "0.17.1"; src = fetchFromGitHub { owner = "unkn0wn-root"; repo = "resterm"; tag = "v${finalAttrs.version}"; - sha256 = "sha256-N1/q1i/J8T52DRrwJsBQZKoUXAgS+dETjtGWuP1N8+A="; + sha256 = "sha256-+lYbSOLY0TF8aVx5pyjwVpibVPxMnWRrs1vdloc+JOk="; }; vendorHash = "sha256-E/Y4kW5xy7YamUP5bxFmDCAK6RqiqGN7DpEPG1MaCHc="; From b49b910b32bdc806afb91b75c960a01425175168 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 06:46:29 +0000 Subject: [PATCH 080/115] cursor-cli: 0-unstable-2026-01-02 -> 0-unstable-2026-01-09 --- pkgs/by-name/cu/cursor-cli/package.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/cu/cursor-cli/package.nix b/pkgs/by-name/cu/cursor-cli/package.nix index da1e8f1d158f..45d0652c2974 100644 --- a/pkgs/by-name/cu/cursor-cli/package.nix +++ b/pkgs/by-name/cu/cursor-cli/package.nix @@ -9,26 +9,26 @@ let inherit (stdenv) hostPlatform; sources = { x86_64-linux = fetchurl { - url = "https://downloads.cursor.com/lab/2026.01.02-80e4d9b/linux/x64/agent-cli-package.tar.gz"; - hash = "sha256-xQml5yMZ2cjBvG2J8mH5Ai65ZArt3kOkstwS245RP1k="; + url = "https://downloads.cursor.com/lab/2026.01.09-231024f/linux/x64/agent-cli-package.tar.gz"; + hash = "sha256-FT4dPRYXWVLnl02KevhiMuh6F3P9Bu+YJXiWrQtH2vo="; }; aarch64-linux = fetchurl { - url = "https://downloads.cursor.com/lab/2026.01.02-80e4d9b/linux/arm64/agent-cli-package.tar.gz"; - hash = "sha256-PpI3CgFi5hWZyKKRybolm8UZnPf3qAEH7+MqPkwsFUo="; + url = "https://downloads.cursor.com/lab/2026.01.09-231024f/linux/arm64/agent-cli-package.tar.gz"; + hash = "sha256-23P7GxKzb66HNYasW87wgSFvL7PseXrZJ29Gewqx1O0="; }; x86_64-darwin = fetchurl { - url = "https://downloads.cursor.com/lab/2026.01.02-80e4d9b/darwin/x64/agent-cli-package.tar.gz"; - hash = "sha256-F5DwlZYK79ZNSZS9BhTMD6ryUbbkLHqaDnwhQtmtLKc="; + url = "https://downloads.cursor.com/lab/2026.01.09-231024f/darwin/x64/agent-cli-package.tar.gz"; + hash = "sha256-kYXTaddjTkuz+tzWJHU4Bk80jABTbQdVKLjEKvSBgX8="; }; aarch64-darwin = fetchurl { - url = "https://downloads.cursor.com/lab/2026.01.02-80e4d9b/darwin/arm64/agent-cli-package.tar.gz"; - hash = "sha256-By3afWNXURIcmaZjFk9f0Aw0Z54S3zrgeYwzX0lTBD0="; + url = "https://downloads.cursor.com/lab/2026.01.09-231024f/darwin/arm64/agent-cli-package.tar.gz"; + hash = "sha256-wOPvhIOkg8NQch5GLe5JbK2Xl2vTboVCPPMa+aMV+MI="; }; }; in stdenv.mkDerivation { pname = "cursor-cli"; - version = "0-unstable-2026-01-02"; + version = "0-unstable-2026-01-09"; src = sources.${hostPlatform.system}; From 381e1997bdd690911b3e69e683ae6798ef7b7cb8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 07:24:11 +0000 Subject: [PATCH 081/115] jwx: 3.0.12 -> 3.0.13 --- pkgs/by-name/jw/jwx/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/jw/jwx/package.nix b/pkgs/by-name/jw/jwx/package.nix index 1916fb6a4e54..66a036f93be4 100644 --- a/pkgs/by-name/jw/jwx/package.nix +++ b/pkgs/by-name/jw/jwx/package.nix @@ -6,16 +6,16 @@ buildGoModule (finalAttrs: { pname = "jwx"; - version = "3.0.12"; + version = "3.0.13"; src = fetchFromGitHub { owner = "lestrrat-go"; repo = "jwx"; tag = "v${finalAttrs.version}"; - hash = "sha256-8TUme6YezwVkRYenSNaVZjC4TNq7kUV7wbIhWFQ/AR0="; + hash = "sha256-f2L78kS0H3FxS/qS0hP+GUXjkH3teJ1L5rrzy1oq+Wk="; }; - vendorHash = "sha256-7lMvSwLi588UBI31YDi/VqyAqwUjWUwjOZbxE3fZQWU="; + vendorHash = "sha256-BGxLwALZ6PZiErbIngaJCUjBhkg3UbfZig/MMOgAZTQ="; sourceRoot = "${finalAttrs.src.name}/cmd/jwx"; From a6addc7a220b41a805dd8abcdae777b1578e4d3d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 07:24:34 +0000 Subject: [PATCH 082/115] jd-diff-patch: 2.3.1 -> 2.4.0 --- pkgs/by-name/jd/jd-diff-patch/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/jd/jd-diff-patch/package.nix b/pkgs/by-name/jd/jd-diff-patch/package.nix index 7e224e360fc3..8a0a8f83ff62 100644 --- a/pkgs/by-name/jd/jd-diff-patch/package.nix +++ b/pkgs/by-name/jd/jd-diff-patch/package.nix @@ -6,13 +6,13 @@ buildGoModule (finalAttrs: { pname = "jd-diff-patch"; - version = "2.3.1"; + version = "2.4.0"; src = fetchFromGitHub { owner = "josephburnett"; repo = "jd"; rev = "v${finalAttrs.version}"; - hash = "sha256-HVbEVRe9u5D6Blfif9mEw9QZYJM7786GLB4njq3n+2U="; + hash = "sha256-PefNgh/ASQ2hPOcWH6ThXEZk4Esd0Q+sLx3bWWnpBNM="; }; sourceRoot = "${finalAttrs.src.name}/v2"; From b46b440c3079f859ec7320ad5865340543e6046a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 09:04:32 +0000 Subject: [PATCH 083/115] clorinde: 1.2.0 -> 1.3.0 --- pkgs/by-name/cl/clorinde/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/cl/clorinde/package.nix b/pkgs/by-name/cl/clorinde/package.nix index 82b728259943..e6457f655a1c 100644 --- a/pkgs/by-name/cl/clorinde/package.nix +++ b/pkgs/by-name/cl/clorinde/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "clorinde"; - version = "1.2.0"; + version = "1.3.0"; src = fetchFromGitHub { owner = "halcyonnouveau"; repo = "clorinde"; tag = "clorinde-v${finalAttrs.version}"; - hash = "sha256-d+fVk3ZWccw/E6/mAyiGkP5t5/nl3riBAHwhzsaLiDs="; + hash = "sha256-Jf7OvZgSkCLZAWUn+GF1ogtH2DO9gS3p1UUHzq9TvmE="; }; - cargoHash = "sha256-bu31l7slpWIHe2Ze/pP2udygt/KeWrdh0MYkCXCSWIc="; + cargoHash = "sha256-ybp60gpixHSXuuZdscHhZ5vXT2jO0I7Kh3b+F9kEoo4="; cargoBuildFlags = [ "--package=clorinde" ]; From d017687ac33db89a06714c8c2b5d270c2b608f94 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 00:59:17 +0000 Subject: [PATCH 084/115] python3Packages.model-hosting-container-standards: 0.1.12 -> 0.1.13 --- .../default.nix | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/model-hosting-container-standards/default.nix b/pkgs/development/python-modules/model-hosting-container-standards/default.nix index 05469b5fa551..ebedd4213879 100644 --- a/pkgs/development/python-modules/model-hosting-container-standards/default.nix +++ b/pkgs/development/python-modules/model-hosting-container-standards/default.nix @@ -20,27 +20,24 @@ writableTmpDirAsHomeHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "model-hosting-container-standards"; - version = "0.1.12"; + version = "0.1.13"; pyproject = true; src = fetchFromGitHub { owner = "aws"; repo = "model-hosting-container-standards"; - tag = "v${version}"; - hash = "sha256-r1HdBe/JaOZVeLCOip5wsoifJRvkJpKPVWHrKPBSY1Y="; + tag = "v${finalAttrs.version}"; + hash = "sha256-t7+yZ4jKsU9tlcr22jiqL3fVI0z704xHCQbSDsbWMfk="; }; - sourceRoot = "${src.name}/python"; + sourceRoot = "${finalAttrs.src.name}/python"; build-system = [ poetry-core ]; - pythonRelaxDeps = [ - "starlette" - ]; pythonRemoveDeps = [ # Declared as a runtime dependency, but not used in practice "setuptools" @@ -71,8 +68,8 @@ buildPythonPackage rec { meta = { description = "Standardized Python framework for seamless integration between ML frameworks (TensorRT-LLM, vLLM) and Amazon SageMaker hosting"; homepage = "https://github.com/aws/model-hosting-container-standards/tree/main/python"; - changelog = "https://github.com/aws/model-hosting-container-standards/blob/${src.tag}/CHANGELOG.md"; + changelog = "https://github.com/aws/model-hosting-container-standards/blob/${finalAttrs.src.tag}/CHANGELOG.md"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) From 8d5c1dd4b0059e3e2498ce9dd859d7b1e6d52670 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 09:25:15 +0000 Subject: [PATCH 085/115] go-httpbin: 2.19.0 -> 2.20.0 --- pkgs/by-name/go/go-httpbin/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/go/go-httpbin/package.nix b/pkgs/by-name/go/go-httpbin/package.nix index 3ae14e615cb7..d1c9de4ad246 100644 --- a/pkgs/by-name/go/go-httpbin/package.nix +++ b/pkgs/by-name/go/go-httpbin/package.nix @@ -8,13 +8,13 @@ buildGoModule (finalAttrs: { pname = "go-httpbin"; - version = "2.19.0"; + version = "2.20.0"; src = fetchFromGitHub { owner = "mccutchen"; repo = "go-httpbin"; tag = "v${finalAttrs.version}"; - hash = "sha256-agElHziDwv2MGwTUKPsyDMVlTNNkuSZp4OAR2/zbW1U="; + hash = "sha256-FXD5XgvdQ5b6AcDC2VJPSDJXjb6RwOskPNtBV4fy6Pc="; }; vendorHash = null; From a4d52834afa95f4003c7a825dcbee4ed8abc5c11 Mon Sep 17 00:00:00 2001 From: Pierre Roux Date: Mon, 12 Jan 2026 09:59:40 +0100 Subject: [PATCH 086/115] rocqPackages.mathcomp: init at 2.5.0 --- .../coq-modules/mathcomp/default.nix | 58 ++++++-- .../rocq-modules/mathcomp/default.nix | 138 ++++++++++++++++++ pkgs/top-level/rocq-packages.nix | 8 + 3 files changed, 193 insertions(+), 11 deletions(-) create mode 100644 pkgs/development/rocq-modules/mathcomp/default.nix diff --git a/pkgs/development/coq-modules/mathcomp/default.nix b/pkgs/development/coq-modules/mathcomp/default.nix index e126fcf65481..f89d9bbae9e5 100644 --- a/pkgs/development/coq-modules/mathcomp/default.nix +++ b/pkgs/development/coq-modules/mathcomp/default.nix @@ -99,6 +99,15 @@ let "character" = [ "field" ]; "all" = [ "character" ]; }; + meta = { + homepage = "https://math-comp.github.io/"; + license = lib.licenses.cecill-b; + maintainers = with lib.maintainers; [ + vbgl + jwiegley + cohencyril + ]; + }; mathcomp_ = package: @@ -121,6 +130,7 @@ let releaseRev repo owner + meta ; mlPlugin = lib.versions.isLe "8.6" coq.coq-version; @@ -147,16 +157,6 @@ let cd ${pkgpath} || cd ssreflect # before 2.5, boot didn't exist, make it behave as ssreflect '' + lib.optionalString (package == "all") pkgallMake; - - meta = { - homepage = "https://math-comp.github.io/"; - license = lib.licenses.cecill-b; - maintainers = with lib.maintainers; [ - vbgl - jwiegley - cohencyril - ]; - }; } // lib.optionalAttrs (package != "single") { passthru = lib.mapAttrs (p: _: mathcomp_ p) packages; } // lib.optionalAttrs withDoc { @@ -244,4 +244,40 @@ let in patched-derivation5; in -mathcomp_ (if single then "single" else "all") +# this is just a wrapper for rocqPackages.mathcomp for Rocq >= 9.0 +if coq.rocqPackages ? mathcomp && version != "2.3.0" && version != "2.4.0" then + let + mc = coq.rocqPackages.mathcomp.override { + inherit version withDoc single; + inherit + ncurses + graphviz + lua + fetchzip + hierarchy-builder + ; + inherit (coq.rocqPackages) rocq-core; + }; + in + mc + // { + ssreflect = mkCoqDerivation { + inherit + version + defaultVersion + release + releaseRev + repo + owner + meta + ; + pname = "mathcomp-ssreflect"; + propagatedBuildInputs = [ + mc.boot + mc.order + ]; + preBuild = "cd ssreflect"; + }; + } +else + mathcomp_ (if single then "single" else "all") diff --git a/pkgs/development/rocq-modules/mathcomp/default.nix b/pkgs/development/rocq-modules/mathcomp/default.nix new file mode 100644 index 000000000000..160febe58cb6 --- /dev/null +++ b/pkgs/development/rocq-modules/mathcomp/default.nix @@ -0,0 +1,138 @@ +############################################################################ +# This file mainly provides the `mathcomp` derivation, which is # +# essentially a meta-package containing all core mathcomp libraries # +# (boot order fingroup algebra solvable field character). They can be # +# accessed individually through the passthrough attributes of mathcomp # +# bearing the same names (mathcomp.boot, etc). # +############################################################################ +# Compiling a custom version of mathcomp using `mathcomp.override`. # +# This is the replacement for the former `mathcomp_ config` function. # +# See the documentation at doc/languages-frameworks/coq.section.md. # +############################################################################ + +{ + lib, + ncurses, + graphviz, + lua, + fetchzip, + mkRocqDerivation, + withDoc ? false, + single ? false, + rocq-core, + hierarchy-builder, + version ? null, +}@args: + +let + repo = "mathcomp"; + owner = "math-comp"; + withDoc = single && (args.withDoc or false); + defaultVersion = + let + case = case: out: { inherit case out; }; + inherit (lib.versions) range; + in + lib.switch rocq-core.rocq-version [ + (case (range "9.0" "9.1") "2.5.0") + ] null; + release = { + "2.5.0".sha256 = "sha256-M/6IP4WhTQ4j2Bc8nXBXjSjWO08QzNIYI+a2owfOh+8="; + }; + releaseRev = v: "mathcomp-${v}"; + + # list of core mathcomp packages sorted by dependency order + packages = { + "boot" = [ ]; + "order" = [ "boot" ]; + "fingroup" = [ "boot" ]; + "algebra" = [ + "order" + "fingroup" + ]; + "solvable" = [ "algebra" ]; + "field" = [ "solvable" ]; + "character" = [ "field" ]; + "all" = [ "character" ]; + }; + + mathcomp_ = + package: + let + mathcomp-deps = lib.optionals (package != "single") (map mathcomp_ packages.${package}); + pkgpath = if package == "single" then "." else package; + pname = if package == "single" then "mathcomp" else "mathcomp-${package}"; + pkgallMake = '' + echo "all.v" > Make + echo "-I ." >> Make + echo "-R . mathcomp.all" >> Make + ''; + derivation = mkRocqDerivation ( + { + inherit + version + pname + defaultVersion + release + releaseRev + repo + owner + ; + + nativeBuildInputs = lib.optionals withDoc [ + graphviz + lua + ]; + buildInputs = [ ncurses ]; + propagatedBuildInputs = mathcomp-deps ++ [ hierarchy-builder ]; + + buildFlags = lib.optional withDoc "doc"; + + preBuild = '' + if [[ -f etc/buildlibgraph ]] + then patchShebangs etc/buildlibgraph + fi + '' + + '' + cd ${pkgpath} + '' + + lib.optionalString (package == "all") pkgallMake; + + meta = { + homepage = "https://math-comp.github.io/"; + license = lib.licenses.cecill-b; + maintainers = with lib.maintainers; [ + vbgl + jwiegley + cohencyril + ]; + }; + } + // lib.optionalAttrs (package != "single") { passthru = lib.mapAttrs (p: _: mathcomp_ p) packages; } + // lib.optionalAttrs withDoc { + htmldoc_template = fetchzip { + url = "https://github.com/math-comp/math-comp.github.io/archive/doc-1.12.0.zip"; + sha256 = "0y1352ha2yy6k2dl375sb1r68r1qi9dyyy7dyzj5lp9hxhhq69x8"; + }; + postBuild = '' + cp -rf _build_doc/* . + rm -r _build_doc + ''; + postInstall = + let + tgt = "$out/share/coq/${rocq-core.rocq-version}/"; + in + lib.optionalString withDoc '' + mkdir -p ${tgt} + cp -r htmldoc ${tgt} + cp -r $htmldoc_template/htmldoc_template/* ${tgt}/htmldoc/ + ''; + buildTargets = "doc"; + extraInstallFlags = [ "-f Makefile.coq" ]; + } + ); + # patched-derivation1 = derivation.overrideAttrs ... + in + derivation; +in +mathcomp_ (if single then "single" else "all") diff --git a/pkgs/top-level/rocq-packages.nix b/pkgs/top-level/rocq-packages.nix index 0b1497f48821..84f6f26bb8c4 100644 --- a/pkgs/top-level/rocq-packages.nix +++ b/pkgs/top-level/rocq-packages.nix @@ -37,6 +37,14 @@ let bignums = callPackage ../development/rocq-modules/bignums { }; hierarchy-builder = callPackage ../development/rocq-modules/hierarchy-builder { }; + mathcomp = callPackage ../development/rocq-modules/mathcomp { }; + mathcomp-boot = self.mathcomp.boot; + mathcomp-order = self.mathcomp.order; + mathcomp-fingroup = self.mathcomp.fingroup; + mathcomp-algebra = self.mathcomp.algebra; + mathcomp-solvable = self.mathcomp.solvable; + mathcomp-field = self.mathcomp.field; + mathcomp-character = self.mathcomp.character; parseque = callPackage ../development/rocq-modules/parseque { }; rocq-elpi = callPackage ../development/rocq-modules/rocq-elpi { }; stdlib = callPackage ../development/rocq-modules/stdlib { }; From c26fd684d13ef9df85b059c47f9c1f2883211db8 Mon Sep 17 00:00:00 2001 From: Mio Date: Mon, 12 Jan 2026 21:43:35 +1100 Subject: [PATCH 087/115] swt: fix build with gcc15 and add darwin support --- pkgs/by-name/sw/swt/package.nix | 55 ++++++++++++++++++++++++--------- 1 file changed, 40 insertions(+), 15 deletions(-) diff --git a/pkgs/by-name/sw/swt/package.nix b/pkgs/by-name/sw/swt/package.nix index da7139ae86b1..309ddba5a0e6 100644 --- a/pkgs/by-name/sw/swt/package.nix +++ b/pkgs/by-name/sw/swt/package.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: { x86_64-darwin.platform = "cocoa-macosx-x86_64"; x86_64-darwin.hash = "sha256-Uns3fMoetbZAIrL/N0eVd42/3uygXakDdxpaxf5SWDI="; aarch64-darwin.platform = "cocoa-macosx-aarch64"; - aarch64-darwin.hash = "sha256-Uns3fMoetbZAIrL/N0eVd42/3uygXakDdxpaxf5SWDI"; + aarch64-darwin.hash = "sha256-jvxmoRFGquYClPgMqWi2ylw26YiGSG5bONnM1PcjlTM="; }; passthru.srcMetadata = finalAttrs.passthru.srcMetadataByPlatform.${stdenv.hostPlatform.system} or null; @@ -47,25 +47,29 @@ stdenv.mkDerivation (finalAttrs: { url = "https://archive.eclipse.org/eclipse/downloads/drops4/R-${finalAttrs.fullVersion}/swt-${finalAttrs.version}-${srcMetadata.platform}.zip"; inherit (srcMetadata) hash; stripRoot = false; - postFetch = '' - mkdir "$unpackDir" - cd "$unpackDir" + postFetch = + # On Linux, extract and use only the sources from src.zip + lib.optionalString stdenv.hostPlatform.isLinux '' + mkdir "$unpackDir" + cd "$unpackDir" - renamed="$TMPDIR/src.zip" - mv -- "$out/src.zip" "$renamed" - unpackFile "$renamed" - rm -r -- "$out" + renamed="$TMPDIR/src.zip" + mv -- "$out/src.zip" "$renamed" + unpackFile "$renamed" + rm -r -- "$out" - mv -- "$unpackDir" "$out" - ''; + mv -- "$unpackDir" "$out" + ''; }; nativeBuildInputs = [ jdk stripJavaArchivesHook + ] + ++ lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ]; - buildInputs = [ + buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ gtk3 libGLU ]; @@ -76,14 +80,17 @@ stdenv.mkDerivation (finalAttrs: { OUTPUT_DIR = "${placeholder "out"}/lib"; # GTK4 is not supported yet. See: # https://github.com/eclipse-platform/eclipse.platform.swt/issues/652 - makeFlags = "gtk3"; - preBuild = '' + makeFlags = lib.optionals stdenv.hostPlatform.isLinux [ "gtk3" ]; + + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isLinux "-std=gnu17"; + postPatch = lib.optionalString stdenv.hostPlatform.isLinux "substituteInPlace library/make_linux.mak --replace-fail 'CFLAGS += -Werror' ''"; + preBuild = lib.optionalString stdenv.hostPlatform.isLinux '' cd library mkdir -p ${finalAttrs.OUTPUT_DIR} ''; - # Build the jar - postBuild = '' + # Build the jar (Linux only, Darwin uses prebuilt) + postBuild = lib.optionalString stdenv.hostPlatform.isLinux '' cd ../ mkdir out find org/ -name '*.java' -type f -exec javac -encoding utf8 -d out/ {} + @@ -97,9 +104,27 @@ stdenv.mkDerivation (finalAttrs: { runHook preInstall install -d -- "$out/jars" + + '' + # On Darwin, use the prebuilt swt.jar which includes native libraries + + lib.optionalString stdenv.hostPlatform.isDarwin '' + # Remove signature files to avoid validation errors after stripJavaArchivesHook modifies the jar + mkdir -p jar-temp + cd jar-temp + ${jdk}/bin/jar -xf ../swt.jar + rm -f META-INF/*.SF META-INF/*.RSA META-INF/*.DSA + ${jdk}/bin/jar -cf "$out/jars/swt.jar" * + cd .. + rm -rf jar-temp + + '' + # On Linux, build from source + + lib.optionalString stdenv.hostPlatform.isLinux '' install -m 644 -t out -- version.txt (cd out && jar -c *) > "$out/jars/swt.jar" + '' + + '' runHook postInstall ''; From fcbf7589155a81382d759ba2c9d984001855ebb7 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 12 Jan 2026 13:07:00 +0200 Subject: [PATCH 088/115] gnuradio: use --replace-fail in python substitution --- pkgs/applications/radio/gnuradio/wrapper.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/radio/gnuradio/wrapper.nix b/pkgs/applications/radio/gnuradio/wrapper.nix index f7b96b1c1b95..b226ce3d68d6 100644 --- a/pkgs/applications/radio/gnuradio/wrapper.nix +++ b/pkgs/applications/radio/gnuradio/wrapper.nix @@ -246,7 +246,7 @@ let mv -f "$i".tmp "$i" if head -1 "$i" | grep -q ${unwrapped.python}; then substituteInPlace "$i" \ - --replace ${unwrapped.python} ${pythonEnv} + --replace-fail ${unwrapped.python} ${pythonEnv} fi wrapProgram "$i" ${makeWrapperArgs} done From 7dc2d2b587e06d19290a0f0cac35374dac443256 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 12 Jan 2026 13:13:13 +0200 Subject: [PATCH 089/115] gnuradio: use lndir instead of xorg.lndir --- pkgs/applications/radio/gnuradio/wrapper.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/radio/gnuradio/wrapper.nix b/pkgs/applications/radio/gnuradio/wrapper.nix index b226ce3d68d6..4f171832f99c 100644 --- a/pkgs/applications/radio/gnuradio/wrapper.nix +++ b/pkgs/applications/radio/gnuradio/wrapper.nix @@ -9,7 +9,7 @@ # For the wrapper makeWrapper, # For lndir - xorg, + lndir, # To define a the gnuradio.pkgs scope newScope, # For Emulating wrapGAppsHook3 @@ -222,7 +222,7 @@ let ; nativeBuildInputs = [ makeWrapper - xorg.lndir + lndir ]; buildCommand = '' mkdir $out From d05914593c88562b20e90ec35614eca21bd214a8 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 12 Jan 2026 13:19:14 +0200 Subject: [PATCH 090/115] gnuradio: lndir to $man properly --- pkgs/applications/radio/gnuradio/wrapper.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/radio/gnuradio/wrapper.nix b/pkgs/applications/radio/gnuradio/wrapper.nix index 4f171832f99c..a741697af3b1 100644 --- a/pkgs/applications/radio/gnuradio/wrapper.nix +++ b/pkgs/applications/radio/gnuradio/wrapper.nix @@ -225,10 +225,13 @@ let lndir ]; buildCommand = '' - mkdir $out + ${builtins.concatStringsSep "\n" ( + map (output: '' + mkdir ''$${output} + lndir -silent ${unwrapped.${output}} ''$${output} + '') outputs + )} cd $out - lndir -silent ${unwrapped.out} - lndir -silent ${unwrapped.man} ${lib.optionalString (extraPackages != [ ]) ( builtins.concatStringsSep "\n" ( map (pkg: '' From ab19e06c5870b9e8058e2648d28c1de6159969e7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 12:07:06 +0000 Subject: [PATCH 091/115] vivify: 0.11.0 -> 0.12.0 --- pkgs/by-name/vi/vivify/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/vi/vivify/package.nix b/pkgs/by-name/vi/vivify/package.nix index e466377401d0..66bb1ded08b5 100644 --- a/pkgs/by-name/vi/vivify/package.nix +++ b/pkgs/by-name/vi/vivify/package.nix @@ -13,18 +13,18 @@ stdenv.mkDerivation (finalAttrs: { pname = "vivify"; - version = "0.11.0"; + version = "0.12.0"; src = fetchFromGitHub { owner = "jannis-baum"; repo = "Vivify"; tag = "v${finalAttrs.version}"; - hash = "sha256-LQX7HBTWDR43aMqJrogL9rDFL5qRF0Xzw/O35Uq7R3g="; + hash = "sha256-h36kI8Pglo6Mvngg1whjMVjI0bv0v0+yPJCZTZ0BpUA="; }; yarnOfflineCache = fetchYarnDeps { yarnLock = "${finalAttrs.src}/yarn.lock"; - hash = "sha256-rztQiOod7xI/gF9NQTCsfE7Wulm1eZHjyNLBI1YSNKk="; + hash = "sha256-RPi1yS1eKSwe/w0gzLhr0BGL00tHzpWAnaN3BEs7IWc="; }; installPhase = '' From 8c186a0230c0164572ee07676b4e4f399a72e048 Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Mon, 12 Jan 2026 13:07:50 +0100 Subject: [PATCH 092/115] molden: ensure gcc15 compatibility --- pkgs/by-name/mo/molden/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mo/molden/package.nix b/pkgs/by-name/mo/molden/package.nix index 12959c85825a..38f529d426e0 100644 --- a/pkgs/by-name/mo/molden/package.nix +++ b/pkgs/by-name/mo/molden/package.nix @@ -27,8 +27,8 @@ stdenv.mkDerivation rec { patches = [ ./dont_register_file_types.patch ]; - # fix build with GCC 14 - env.NIX_CFLAGS_COMPILE = "-Wno-implicit-function-declaration -Wno-implicit-int -Wno-return-mismatch"; + # fix build with GCC 14+ + env.NIX_CFLAGS_COMPILE = "-Wno-implicit-function-declaration -Wno-implicit-int -Wno-return-mismatch -std=gnu17"; postPatch = '' substituteInPlace ./makefile --replace '-L/usr/X11R6/lib' "" \ From 3211a7fce579e9a940bf4ee5f98f2c4fbc1b0233 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Chocholat=C3=BD?= Date: Sun, 11 Jan 2026 09:43:30 +0100 Subject: [PATCH 093/115] jjui: Skip failing test on Darwin --- pkgs/by-name/jj/jjui/package.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/by-name/jj/jjui/package.nix b/pkgs/by-name/jj/jjui/package.nix index ad6ceada1b8a..082cd77da9c5 100644 --- a/pkgs/by-name/jj/jjui/package.nix +++ b/pkgs/by-name/jj/jjui/package.nix @@ -4,6 +4,7 @@ fetchFromGitHub, nix-update-script, versionCheckHook, + stdenv, }: buildGoModule (finalAttrs: { pname = "jjui"; @@ -20,6 +21,10 @@ buildGoModule (finalAttrs: { ldflags = [ "-X main.Version=${finalAttrs.version}" ]; + checkFlags = lib.optionals stdenv.hostPlatform.isDarwin [ + "-skip=TestServerAskpass" + ]; + doInstallCheck = true; nativeInstallCheckInputs = [ versionCheckHook ]; versionCheckProgramArg = "-version"; From 7d237943dd891a4fa05fb89240e364fecfc195a4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 12:31:33 +0000 Subject: [PATCH 094/115] subfinder: 2.11.0 -> 2.12.0 --- pkgs/by-name/su/subfinder/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/su/subfinder/package.nix b/pkgs/by-name/su/subfinder/package.nix index a8076cb2aea5..fccef8a88927 100644 --- a/pkgs/by-name/su/subfinder/package.nix +++ b/pkgs/by-name/su/subfinder/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "subfinder"; - version = "2.11.0"; + version = "2.12.0"; src = fetchFromGitHub { owner = "projectdiscovery"; repo = "subfinder"; tag = "v${version}"; - hash = "sha256-kgOI5/EA5ZAH7yColUdKdVoWwqm33qo5D9B8a26b+0w="; + hash = "sha256-AqXTK+1mK5EmK/6T2+VIDD8jYzafMUEduJ/gLTqaYv8="; }; vendorHash = "sha256-ss1lcdqBni5SmHVLDQpFFVTQ3/nL8qPTl5zul1GQpBM="; From 91defc8d32dcffdc5664bc2e039d6679497e44b7 Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Mon, 12 Jan 2026 13:32:29 +0100 Subject: [PATCH 095/115] openmolcas: ensure gcc15 compatibility --- pkgs/by-name/op/openmolcas/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/op/openmolcas/package.nix b/pkgs/by-name/op/openmolcas/package.nix index c3b43cf20f3e..3630ed9622b6 100644 --- a/pkgs/by-name/op/openmolcas/package.nix +++ b/pkgs/by-name/op/openmolcas/package.nix @@ -117,6 +117,9 @@ stdenv.mkDerivation rec { passthru = lib.optionalAttrs enableMpi { inherit mpi; }; + # fix build with GCC 15 + env.NIX_CFLAGS_COMPILE = "-std=gnu17"; + cmakeFlags = [ "-DOPENMP=ON" "-DTOOLS=ON" From c8623bc2cd0fbee67046fa4073cf96c9af434aa3 Mon Sep 17 00:00:00 2001 From: Hythera <87016780+Hythera@users.noreply.github.com> Date: Mon, 12 Jan 2026 13:36:10 +0100 Subject: [PATCH 096/115] curtail: 1.13.0 -> 1.14.0 --- pkgs/by-name/cu/curtail/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/cu/curtail/package.nix b/pkgs/by-name/cu/curtail/package.nix index ff56de647b5a..eb203b08080f 100644 --- a/pkgs/by-name/cu/curtail/package.nix +++ b/pkgs/by-name/cu/curtail/package.nix @@ -22,14 +22,14 @@ python3.pkgs.buildPythonApplication rec { pname = "curtail"; - version = "1.13.0"; + version = "1.14.0"; format = "other"; src = fetchFromGitHub { owner = "Huluti"; repo = "Curtail"; tag = version; - sha256 = "sha256-JfioWtd0jGTyaD5uELAqH6J+h04MOrfEqdR7GWgXyMw="; + sha256 = "sha256-AxQe7abHZp4SRp90fkFbmXf3ZQH3VmxQVkpxRcit+54="; }; nativeBuildInputs = [ From 18f09a7640f8a9f3aa2096a8c41608fcf35ba385 Mon Sep 17 00:00:00 2001 From: eljamm Date: Mon, 12 Jan 2026 13:55:33 +0100 Subject: [PATCH 097/115] ghidra: add missing `in` keyword in for loop Fixes https://github.com/NixOS/nixpkgs/issues/478986 --- pkgs/tools/security/ghidra/build.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/security/ghidra/build.nix b/pkgs/tools/security/ghidra/build.nix index f019194e0b6f..f620fdfcc18b 100644 --- a/pkgs/tools/security/ghidra/build.nix +++ b/pkgs/tools/security/ghidra/build.nix @@ -179,7 +179,7 @@ stdenv.mkDerivation (finalAttrs: { postFixup = '' mkdir -p "$out/bin" ln -s "${pkg_path}/ghidraRun" "$out/bin/ghidra" - for bin ${pkg_path}/support/*; do + for bin in ${pkg_path}/support/*; do if [[ -x $bin ]]; then ln -s "$bin" "$out/bin/ghidra-$(basename $bin)" fi From de726bf8b29e08e1b4c63b2bd637d9acb0832428 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 13:12:47 +0000 Subject: [PATCH 098/115] amp-cli: 0.0.1767672851-gfc2f63 -> 0.0.1768219292-g8af118 --- pkgs/by-name/am/amp-cli/package-lock.json | 8 ++++---- pkgs/by-name/am/amp-cli/package.nix | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/am/amp-cli/package-lock.json b/pkgs/by-name/am/amp-cli/package-lock.json index 263b8e0f47af..0cd60f0c6c0a 100644 --- a/pkgs/by-name/am/amp-cli/package-lock.json +++ b/pkgs/by-name/am/amp-cli/package-lock.json @@ -5,7 +5,7 @@ "packages": { "": { "dependencies": { - "@sourcegraph/amp": "^0.0.1767672851-gfc2f63" + "@sourcegraph/amp": "^0.0.1768219292-g8af118" } }, "node_modules/@napi-rs/keyring": { @@ -228,9 +228,9 @@ } }, "node_modules/@sourcegraph/amp": { - "version": "0.0.1767672851-gfc2f63", - "resolved": "https://registry.npmjs.org/@sourcegraph/amp/-/amp-0.0.1767672851-gfc2f63.tgz", - "integrity": "sha512-hlr9zHZjcf2RaUGnHwechEee2yxH+KifgszbHyK5mkdYRrk7dAOKMy/jCOJ8LqVFEGaUpqH7f9PAKvvvR1U8ZQ==", + "version": "0.0.1768219292-g8af118", + "resolved": "https://registry.npmjs.org/@sourcegraph/amp/-/amp-0.0.1768219292-g8af118.tgz", + "integrity": "sha512-GW5MyNOiTu4G4cY29UI/0ttXu4b2QRwjmz4I9pvZqvIFrMmotBKC4wQinj8Dt6jD0ey7284Rhm8xHJ1iRtMoxA==", "license": "Amp Commercial License", "dependencies": { "@napi-rs/keyring": "1.1.9" diff --git a/pkgs/by-name/am/amp-cli/package.nix b/pkgs/by-name/am/amp-cli/package.nix index da2b59426979..126cb68a80a5 100644 --- a/pkgs/by-name/am/amp-cli/package.nix +++ b/pkgs/by-name/am/amp-cli/package.nix @@ -9,11 +9,11 @@ buildNpmPackage (finalAttrs: { pname = "amp-cli"; - version = "0.0.1767672851-gfc2f63"; + version = "0.0.1768219292-g8af118"; src = fetchzip { url = "https://registry.npmjs.org/@sourcegraph/amp/-/amp-${finalAttrs.version}.tgz"; - hash = "sha256-o2EgjwaaKnOT6DxxROuZxn3Iso8QPHPr6ecfj9ThttM="; + hash = "sha256-DstiWCfox5CuHKfy3EgLk7N8KK67txuMG/flriiDH3I="; }; postPatch = '' @@ -45,7 +45,7 @@ buildNpmPackage (finalAttrs: { chmod +x bin/amp-wrapper.js ''; - npmDepsHash = "sha256-PWVsz7QiiQHBiuizEXa2yovBIc3T7kz+SaznRLL0Miw="; + npmDepsHash = "sha256-oB8YPiKoCG6+oNGlE6YdZ6F/6FEq96qJq/tdC164nrM="; propagatedBuildInputs = [ ripgrep From 2cd5fc1525e157f625b713c85e2ce598b6bd1ded Mon Sep 17 00:00:00 2001 From: eljamm Date: Mon, 12 Jan 2026 14:14:14 +0100 Subject: [PATCH 099/115] python3Packages.scim2-models: fix doc test; build from source --- .../python-modules/scim2-models/default.nix | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/scim2-models/default.nix b/pkgs/development/python-modules/scim2-models/default.nix index 3f2491c591fe..3bf220fd9227 100644 --- a/pkgs/development/python-modules/scim2-models/default.nix +++ b/pkgs/development/python-modules/scim2-models/default.nix @@ -1,22 +1,23 @@ { lib, buildPythonPackage, - fetchPypi, + fetchFromGitHub, hatchling, pydantic, pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "scim2-models"; version = "0.4.1"; pyproject = true; - src = fetchPypi { - inherit version; - pname = "scim2_models"; - hash = "sha256-SRUPO67otfZsrdjGQyTul5vIrYRU2WFaL0fvAtVd/1c="; + src = fetchFromGitHub { + owner = "python-scim"; + repo = "scim2-models"; + tag = finalAttrs.version; + hash = "sha256-cc9nSqED+gfBHC3QpeHnQ6lBnmvdHa6edp/WGiuiDfc="; }; build-system = [ hatchling ]; @@ -25,13 +26,18 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; + preCheck = '' + substituteInPlace doc/tutorial.rst \ + --replace-fail "TzInfo(UTC)" "TzInfo(0)" + ''; + pythonImportsCheck = [ "scim2_models" ]; meta = { description = "SCIM2 models serialization and validation with pydantic"; homepage = "https://github.com/python-scim/scim2-models"; - changelog = "https://github.com/python-scim/scim2-models/releases/tag/${version}"; + changelog = "https://github.com/python-scim/scim2-models/releases/tag/${finalAttrs.version}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ erictapen ]; }; -} +}) From ca51bd77785dd2f2cc85adf335b521ed47e2ba0c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 13:23:28 +0000 Subject: [PATCH 100/115] flake-edit: 0.0.2 -> 0.3.0 --- pkgs/by-name/fl/flake-edit/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/fl/flake-edit/package.nix b/pkgs/by-name/fl/flake-edit/package.nix index fc963b8fe46b..f330a6f182dc 100644 --- a/pkgs/by-name/fl/flake-edit/package.nix +++ b/pkgs/by-name/fl/flake-edit/package.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "flake-edit"; - version = "0.0.2"; + version = "0.3.0"; src = fetchFromGitHub { owner = "a-kenji"; repo = "flake-edit"; rev = "v${version}"; - hash = "sha256-7n8WANm9AijZYI5nlnevLI+aZtV55teroeQIEld7tkE="; + hash = "sha256-cBW2UH25MRSqqQ1930xxIydg+sSf62NFvbjqfkK0vnI="; }; - cargoHash = "sha256-hK79yHSneD9OFm+M+RPSfu6HW1MmdpcMLysPIKlFDv8="; + cargoHash = "sha256-VhDN9Wq6O5lB78zEE/vjO7uzr5de0jKWfd2nRlyLtu8="; nativeBuildInputs = [ installShellFiles From 24cbf25d5fe2e381130b4e1f5408500ed6759f1e Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Mon, 12 Jan 2026 14:57:31 +0100 Subject: [PATCH 101/115] nwchem: ensure gcc15 compatibility --- pkgs/applications/science/chemistry/nwchem/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/science/chemistry/nwchem/default.nix b/pkgs/applications/science/chemistry/nwchem/default.nix index 910c3f19acec..9b082276f676 100644 --- a/pkgs/applications/science/chemistry/nwchem/default.nix +++ b/pkgs/applications/science/chemistry/nwchem/default.nix @@ -158,7 +158,7 @@ stdenv.mkDerivation rec { ''; # Required for build with gcc-14 - env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-int"; + env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-int -std=gnu17"; enableParallelBuilding = true; From 01d26fac81c962fd5ecbc3a9a4f65f5b9d2279d0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 14:00:11 +0000 Subject: [PATCH 102/115] hawkeye: 6.3.0 -> 6.4.0 --- pkgs/by-name/ha/hawkeye/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ha/hawkeye/package.nix b/pkgs/by-name/ha/hawkeye/package.nix index 19cd5347a465..cb26366ba51c 100644 --- a/pkgs/by-name/ha/hawkeye/package.nix +++ b/pkgs/by-name/ha/hawkeye/package.nix @@ -7,16 +7,16 @@ rustPackages.rustPlatform.buildRustPackage (finalAttrs: { pname = "hawkeye"; - version = "6.3.0"; + version = "6.4.0"; src = fetchFromGitHub { owner = "korandoru"; repo = "hawkeye"; tag = "v${finalAttrs.version}"; - hash = "sha256-73v09Lb8okJBtjQ/Kdfla9e3ezgMrSxifE83z6bjj64="; + hash = "sha256-iK6h4xxZzahK045711TWbhjxwWNPShOX7V8HMmADkaA="; }; - cargoHash = "sha256-tjdxBl/XjL801yrtLZ/iEuF3kkXwSob0S2eIgW8jp7k="; + cargoHash = "sha256-QmVERRi4rB92Z7hn5gQJaWNQCQrzGC9lf8eHjUODmv0="; nativeBuildInputs = [ pkg-config From 9a90e001735e0d9cf97d2495e0905ff81e9d29cb Mon Sep 17 00:00:00 2001 From: koi Date: Mon, 12 Jan 2026 15:01:23 +0100 Subject: [PATCH 103/115] maintainers: rename adamperkowski to koi, update upstream references --- maintainers/maintainer-list.nix | 22 +++++++++---------- nixos/modules/programs/nvrs.nix | 2 +- pkgs/by-name/gh/gh-webhook/package.nix | 2 +- pkgs/by-name/go/gocheat/package.nix | 2 +- pkgs/by-name/ju/julec/package.nix | 2 +- pkgs/by-name/ki/kitget/package.nix | 6 ++--- pkgs/by-name/nv/nvrs/package.nix | 6 ++--- .../package.nix | 2 +- pkgs/by-name/zs/zsnow/package.nix | 2 +- 9 files changed, 23 insertions(+), 23 deletions(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 85f64d357539..83ca673e1830 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -606,17 +606,6 @@ githubId = 50264672; name = "Adam Freeth"; }; - adamperkowski = { - name = "Adam Perkowski"; - email = "me@adamperkowski.dev"; - matrix = "@adam:matrix.system72.dev"; - github = "koibtw"; - githubId = 75480869; - keys = [ - { fingerprint = "00F6 1623 FB56 BC5B B709 4E63 4CE6 C117 2DF6 BE79"; } - { fingerprint = "5A53 0832 DA91 20B0 CA57 DDB6 7CBD B58E CF1D 3478"; } - ]; - }; adamt = { email = "mail@adamtulinius.dk"; github = "adamtulinius"; @@ -14032,6 +14021,17 @@ githubId = 67888720; name = "Kira"; }; + koi = { + name = "koi"; + email = "me@koi.rip"; + matrix = "@koi:system72.dev"; + github = "koibtw"; + githubId = 75480869; + keys = [ + { fingerprint = "00F6 1623 FB56 BC5B B709 4E63 4CE6 C117 2DF6 BE79"; } + { fingerprint = "5A53 0832 DA91 20B0 CA57 DDB6 7CBD B58E CF1D 3478"; } + ]; + }; kolaente = { email = "k@knt.li"; github = "kolaente"; diff --git a/nixos/modules/programs/nvrs.nix b/nixos/modules/programs/nvrs.nix index c8bc8817adcb..eaf3950709f8 100644 --- a/nixos/modules/programs/nvrs.nix +++ b/nixos/modules/programs/nvrs.nix @@ -10,7 +10,7 @@ let settingsFormat = pkgs.formats.toml { }; in { - meta.maintainers = with lib.maintainers; [ adamperkowski ]; + meta.maintainers = with lib.maintainers; [ koi ]; options.programs.nvrs = { enable = lib.mkEnableOption "nvrs"; diff --git a/pkgs/by-name/gh/gh-webhook/package.nix b/pkgs/by-name/gh/gh-webhook/package.nix index 86655fa75d45..1b8ad7493534 100644 --- a/pkgs/by-name/gh/gh-webhook/package.nix +++ b/pkgs/by-name/gh/gh-webhook/package.nix @@ -26,7 +26,7 @@ buildGoModule (finalAttrs: { description = "GitHub CLI extension to chatter with Webhooks"; homepage = "https://github.com/cli/gh-webhook"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ adamperkowski ]; + maintainers = with lib.maintainers; [ koi ]; mainProgram = "gh-webhook"; }; }) diff --git a/pkgs/by-name/go/gocheat/package.nix b/pkgs/by-name/go/gocheat/package.nix index 2812b11318c7..20a12e941a56 100644 --- a/pkgs/by-name/go/gocheat/package.nix +++ b/pkgs/by-name/go/gocheat/package.nix @@ -27,7 +27,7 @@ buildGoModule (finalAttrs: { homepage = "https://github.com/Achno/gocheat"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ - adamperkowski + koi sebaguardian ]; mainProgram = "gocheat"; diff --git a/pkgs/by-name/ju/julec/package.nix b/pkgs/by-name/ju/julec/package.nix index c1f76526eed5..18c015796dc9 100644 --- a/pkgs/by-name/ju/julec/package.nix +++ b/pkgs/by-name/ju/julec/package.nix @@ -122,7 +122,7 @@ clangStdenv.mkDerivation (finalAttrs: { ]; mainProgram = "julec"; maintainers = with lib.maintainers; [ - adamperkowski + koi sebaguardian ]; }; diff --git a/pkgs/by-name/ki/kitget/package.nix b/pkgs/by-name/ki/kitget/package.nix index 76f665e7de68..6dc995e5de14 100644 --- a/pkgs/by-name/ki/kitget/package.nix +++ b/pkgs/by-name/ki/kitget/package.nix @@ -12,7 +12,7 @@ rustPlatform.buildRustPackage (finalAttrs: { src = fetchFromGitea { domain = "codeberg.org"; - owner = "adamperkowski"; + owner = "koibtw"; repo = "kitget"; tag = "v${finalAttrs.version}"; hash = "sha256-i26nu5SkcPhqwh+/bw1rz7h8K2u+hhSsOGiLj3sF1RQ="; @@ -28,9 +28,9 @@ rustPlatform.buildRustPackage (finalAttrs: { meta = { description = "Display and customize cat images in your terminal"; - homepage = "https://codeberg.org/adamperkowski/kitget"; + homepage = "https://codeberg.org/koibtw/kitget"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ adamperkowski ]; + maintainers = with lib.maintainers; [ koi ]; mainProgram = "kitget"; platforms = lib.platforms.linux; }; diff --git a/pkgs/by-name/nv/nvrs/package.nix b/pkgs/by-name/nv/nvrs/package.nix index e0509633fe8c..c184373521cf 100644 --- a/pkgs/by-name/nv/nvrs/package.nix +++ b/pkgs/by-name/nv/nvrs/package.nix @@ -12,7 +12,7 @@ rustPlatform.buildRustPackage (finalAttrs: { version = "0.1.9"; src = fetchFromGitHub { - owner = "adamperkowski"; + owner = "koibtw"; repo = "nvrs"; tag = "v${finalAttrs.version}"; hash = "sha256-6ATkebFYuOOvhzSO+gClPbtaz9/Zph4m8/cqkufRYFw="; @@ -47,9 +47,9 @@ rustPlatform.buildRustPackage (finalAttrs: { meta = { description = "Fast new version checker for software releases"; homepage = "https://nvrs.adamperkowski.dev"; - changelog = "https://github.com/adamperkowski/nvrs/blob/v${finalAttrs.version}/CHANGELOG.md"; + changelog = "https://github.com/koibtw/nvrs/blob/v${finalAttrs.version}/CHANGELOG.md"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ adamperkowski ]; + maintainers = with lib.maintainers; [ koi ]; mainProgram = "nvrs"; platforms = lib.platforms.linux; }; diff --git a/pkgs/by-name/pr/prettier-plugin-jinja-template/package.nix b/pkgs/by-name/pr/prettier-plugin-jinja-template/package.nix index 96ea96953512..84824fd0bd1d 100644 --- a/pkgs/by-name/pr/prettier-plugin-jinja-template/package.nix +++ b/pkgs/by-name/pr/prettier-plugin-jinja-template/package.nix @@ -24,7 +24,7 @@ buildNpmPackage (finalAttrs: { description = "Formatter plugin for Jinja2 template files"; homepage = "https://github.com/davidodenwald/prettier-plugin-jinja-template"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ adamperkowski ]; + maintainers = with lib.maintainers; [ koi ]; mainProgram = "prettier-plugin-jinja-template"; }; }) diff --git a/pkgs/by-name/zs/zsnow/package.nix b/pkgs/by-name/zs/zsnow/package.nix index 50af3ea0d486..253e95081101 100644 --- a/pkgs/by-name/zs/zsnow/package.nix +++ b/pkgs/by-name/zs/zsnow/package.nix @@ -65,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: { description = "XSnow for Wayland"; homepage = "https://github.com/DarkVanityOfLight/ZSnoW"; license = lib.licenses.cc-by-nc-sa-40; - maintainers = [ lib.maintainers.adamperkowski ]; + maintainers = [ lib.maintainers.koi ]; platforms = lib.platforms.linux; mainProgram = "zsnow"; }; From c74ff83aceeb35e63d8fadeb1bc478184c203506 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 12 Jan 2026 15:17:51 +0100 Subject: [PATCH 104/115] ocamlPackages.labltk: clean & fix --- .../ocaml-modules/labltk/default.nix | 129 ++++++++---------- 1 file changed, 55 insertions(+), 74 deletions(-) diff --git a/pkgs/development/ocaml-modules/labltk/default.nix b/pkgs/development/ocaml-modules/labltk/default.nix index 0782692d7713..d70a334c2be7 100644 --- a/pkgs/development/ocaml-modules/labltk/default.nix +++ b/pkgs/development/ocaml-modules/labltk/default.nix @@ -11,86 +11,67 @@ }: let - defaultStdenv = stdenv; - params = - let - mkNewParam = - { - version, - sha256, - rev ? version, - stdenv ? defaultStdenv, - }: - { - inherit stdenv version; - src = fetchzip { - url = "https://github.com/garrigue/labltk/archive/${rev}.tar.gz"; - inherit sha256; - }; - }; - in - rec { - "4.06" = mkNewParam { - version = "8.06.4"; - rev = "labltk-8.06.4"; - sha256 = "03xwnnnahb2rf4siymzqyqy8zgrx3h26qxjgbp5dh1wdl7n02c7g"; - stdenv = gcc13Stdenv; - }; - "4.07" = mkNewParam { - version = "8.06.5"; - rev = "1b71e2c6f3ae6847d3d5e79bf099deb7330fb419"; - sha256 = "02vchmrm3izrk7daldd22harhgrjhmbw6i1pqw6hmfmrmrypypg2"; - stdenv = gcc13Stdenv; - }; - _8_06_7 = mkNewParam { - version = "8.06.7"; - sha256 = "1cqnxjv2dvw9csiz4iqqyx6rck04jgylpglk8f69kgybf7k7xk2h"; - stdenv = gcc13Stdenv; - }; - "4.08" = _8_06_7; - "4.09" = _8_06_7; - "4.10" = mkNewParam { - version = "8.06.8"; - sha256 = "0lfjc7lscq81ibqb3fcybdzs2r1i2xl7rsgi7linq46a0pcpkinw"; - }; - "4.11" = mkNewParam { - version = "8.06.9"; - sha256 = "1k42k3bjkf22gk39lwwzqzfhgjyhxnclslldrzpg5qy1829pbnc0"; - }; - "4.12" = mkNewParam { - version = "8.06.10"; - sha256 = "06cck7wijq4zdshzhxm6jyl8k3j0zglj2axsyfk6q1sq754zyf4a"; - }; - "4.13" = mkNewParam { - version = "8.06.11"; - sha256 = "1zjpg9jvs6i9jvbgn6zgispwqiv8rxvaszxcx9ha9fax3wzhv9qy"; - }; - "4.14" = mkNewParam { - version = "8.06.12"; - sha256 = "sha256:17fmb13l18isgwr38hg9r5a0nayf2hhw6acj5153cy1sygsdg3b5"; - }; - "5.0" = mkNewParam { - version = "8.06.13"; - sha256 = "sha256-Vpf13g3DEWlUI5aypiowGp2fkQPK0cOGv2XiRUY/Ip4="; - }; - "5.2" = mkNewParam { - version = "8.06.14"; - sha256 = "sha256-eVSQetk+i3KObjHfsvnD615cIsq3aZ7IxycX42cuPIU="; - }; - "5.3" = mkNewParam { - version = "8.06.15"; - sha256 = "sha256-I/y5qr5sasCtlrwxL/Lex79rg0o4tzDMBmQY7MdpU2w="; - }; + params = { + "4.09" = { + version = "8.06.7"; + sha256 = "1cqnxjv2dvw9csiz4iqqyx6rck04jgylpglk8f69kgybf7k7xk2h"; + stdenv = gcc13Stdenv; }; - param = - params.${lib.versions.majorMinor ocaml.version} - or (throw "labltk is not available for OCaml ${ocaml.version}"); + "4.10" = { + version = "8.06.8"; + sha256 = "0lfjc7lscq81ibqb3fcybdzs2r1i2xl7rsgi7linq46a0pcpkinw"; + stdenv = gcc13Stdenv; + }; + "4.11" = { + version = "8.06.9"; + sha256 = "1k42k3bjkf22gk39lwwzqzfhgjyhxnclslldrzpg5qy1829pbnc0"; + stdenv = gcc13Stdenv; + }; + "4.12" = { + version = "8.06.10"; + sha256 = "06cck7wijq4zdshzhxm6jyl8k3j0zglj2axsyfk6q1sq754zyf4a"; + }; + "4.13" = { + version = "8.06.11"; + sha256 = "1zjpg9jvs6i9jvbgn6zgispwqiv8rxvaszxcx9ha9fax3wzhv9qy"; + }; + "4.14" = { + version = "8.06.12"; + sha256 = "sha256:17fmb13l18isgwr38hg9r5a0nayf2hhw6acj5153cy1sygsdg3b5"; + }; + "5.0" = { + version = "8.06.13"; + sha256 = "sha256-Vpf13g3DEWlUI5aypiowGp2fkQPK0cOGv2XiRUY/Ip4="; + }; + "5.2" = { + version = "8.06.14"; + sha256 = "sha256-eVSQetk+i3KObjHfsvnD615cIsq3aZ7IxycX42cuPIU="; + }; + "5.3" = { + version = "8.06.15"; + sha256 = "sha256-I/y5qr5sasCtlrwxL/Lex79rg0o4tzDMBmQY7MdpU2w="; + }; + }; + param = { + inherit stdenv; + # Dummy version to let the `meta` attribute set evaluate + version = ""; + sha256 = lib.fakeSha256; + } + // (params."${lib.versions.majorMinor ocaml.version}" or { + } + ); in param.stdenv.mkDerivation { - inherit (param) version src; + inherit (param) version; pname = "ocaml${ocaml.version}-labltk"; + src = fetchzip { + url = "https://github.com/garrigue/labltk/archive/${param.version}.tar.gz"; + inherit (param) sha256; + }; + strictDeps = true; nativeBuildInputs = [ From 3ee6c6d460587510861aeecd14ba7bb3f145e424 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 14:20:23 +0000 Subject: [PATCH 105/115] kicad-testing: 9.0-2025-02-21 -> 9.0-2026-01-10 --- pkgs/by-name/ki/kicad/versions.nix | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/ki/kicad/versions.nix b/pkgs/by-name/ki/kicad/versions.nix index cba6c1d4dbcc..1db754067278 100644 --- a/pkgs/by-name/ki/kicad/versions.nix +++ b/pkgs/by-name/ki/kicad/versions.nix @@ -25,23 +25,23 @@ }; "kicad-testing" = { kicadVersion = { - version = "9.0-2025-02-21"; + version = "9.0-2026-01-10"; src = { - rev = "c4c32aa7bbadd3862fb720457b71e7a19420604c"; - sha256 = "01zbvg6n8kajilj3q1sp0zpaqz94bq28wrxjax1968wvwv05g0dp"; + rev = "f6fb40f1108f3a7f9c78ad9d8d1f0fda1cf0069b"; + sha256 = "1lg7jjl80x8apy98fxs6fjxqdkdji7kw195qwjhrwl1vlxlmd3y0"; }; }; libVersion = { - version = "9.0-2025-02-21"; + version = "9.0-2026-01-10"; libSources = { - symbols.rev = "e1c3371228f97b36c6fd61b66d056184930f078e"; - symbols.sha256 = "0l8da2ix917jlsj6v5zclc1cb5pvjaxwmys0gjdv55ic31hhfyyw"; - templates.rev = "3ed4538b0f965d821df63a5fffc4441e723cfe7f"; + symbols.rev = "65d897cc92950ff2af888eb67e527ba7a2b99fe8"; + symbols.sha256 = "08qb4rqxsyhrcvj1k200m2c06jjy7jwjmf9n1qkcm0biqqc5dba4"; + templates.rev = "cdf507d0373b5bfd8161b45f6fb86a49b56c4694"; templates.sha256 = "0zs29zn8qjgxv0w1vyr8yxmj02m8752zagn4vcraqgik46dwg2id"; - footprints.rev = "ef91963f57028aa095f2d0c4239ba994ea822f73"; - footprints.sha256 = "16zslgvjg4swgkkvnd9fmiks3wzg63364d03hixiyzcpjlgk2bbk"; - packages3d.rev = "b40831fd7ea2ca8f9c7282143dbb7d2f5015cd69"; - packages3d.sha256 = "0bg54lg1iw01gw06ajg34y7x4y36wm6ls3jnpjy13i18d4ik77g4"; + footprints.rev = "084757e0326f98c10943b8ffe5be284fe912a160"; + footprints.sha256 = "1w7dkb93s84ymi1syxpzacbmkxlnlh0k4z1c62nabspb901nn524"; + packages3d.rev = "123ddef066ce40e20443e678c5baf6a7d4a04399"; + packages3d.sha256 = "1bv1k8i01x7gyayrlkzl3d2nsf7mcdmzx8gjwx1i2va9557rgli9"; }; }; }; From 86af7e07e7fece0343492680d54b8c0ce2deb500 Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Mon, 12 Jan 2026 15:24:49 +0100 Subject: [PATCH 106/115] pcmsolver: ensure gcc15 compatibility --- pkgs/by-name/pc/pcmsolver/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/pc/pcmsolver/package.nix b/pkgs/by-name/pc/pcmsolver/package.nix index 3f6b02e04247..bd55423f77de 100644 --- a/pkgs/by-name/pc/pcmsolver/package.nix +++ b/pkgs/by-name/pc/pcmsolver/package.nix @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { ]; # Required for build with gcc-14 - env.NIX_CFLAGS_COMPILE = "-std=c++14"; + env.NIX_CFLAGS_COMPILE = "-std=c++14 -Wno-template-body"; cmakeFlags = [ "-DENABLE_OPENMP=ON" From 08b5ecad75d41783f29d69d6d159c69d6eecd89c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 14:25:15 +0000 Subject: [PATCH 107/115] vivaldi: 7.7.3851.66 -> 7.7.3851.67 --- 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 290dbdbdb669..8a793bba5835 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.7.3851.66"; + version = "7.7.3851.67"; suffix = { @@ -79,8 +79,8 @@ stdenv.mkDerivation rec { url = "https://downloads.vivaldi.com/stable/vivaldi-stable_${version}-1_${suffix}.deb"; hash = { - aarch64-linux = "sha256-xXhRTTieuoLXIVYgc0jAiUJrrSWfKmurstQqTDkfyPU="; - x86_64-linux = "sha256-kVD0aVfhqM1ZhFhyVcZ6teF3SM2GleY4BdsRXdxu1r4="; + aarch64-linux = "sha256-oNElLW9J010JIhvbocVd+mbK8w2oZVnbfmyi5DjjouQ="; + x86_64-linux = "sha256-bvc5QVt+Qcaw9Za36S6TugfXLAj75bu8F72nS6F0pvE="; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); }; From ee8a02dd63cb29645cc78b51d54a9a2343269b0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 12 Jan 2026 06:51:23 -0800 Subject: [PATCH 108/115] home-assistant-custom-components.elevenlabs_tts: drop It was deprecated in favor of the official integration available directly in Home Assistant. --- .../elevenlabs_tts/package.nix | 26 ------------------- 1 file changed, 26 deletions(-) delete mode 100644 pkgs/servers/home-assistant/custom-components/elevenlabs_tts/package.nix diff --git a/pkgs/servers/home-assistant/custom-components/elevenlabs_tts/package.nix b/pkgs/servers/home-assistant/custom-components/elevenlabs_tts/package.nix deleted file mode 100644 index 087c5bd5b149..000000000000 --- a/pkgs/servers/home-assistant/custom-components/elevenlabs_tts/package.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - lib, - fetchFromGitHub, - buildHomeAssistantComponent, -}: - -buildHomeAssistantComponent rec { - owner = "carleeno"; - domain = "elevenlabs_tts"; - version = "2.4.0"; - - src = fetchFromGitHub { - owner = "carleeno"; - repo = "elevenlabs_tts"; - tag = version; - hash = "sha256-/hszK5J1iGB46WfmCCK9/F0JOR405gplMwVC4niAqig="; - }; - - meta = { - changelog = "https://github.com/carleeno/elevenlabs_tts/releases/tag/${version}"; - description = "Home Assistant Eleven Labs TTS Integration"; - homepage = "https://github.com/carleeno/elevenlabs_tts"; - maintainers = with lib.maintainers; [ mindstorms6 ]; - license = lib.licenses.asl20; - }; -} From 65416849b2a5e4c41c2032d9d5b21e77121ed3f3 Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Fri, 9 Jan 2026 15:53:58 -0500 Subject: [PATCH 109/115] ocamlPackages_latest: 5.3 -> 5.4 --- pkgs/top-level/ocaml-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index d45ed5935a2d..d253220fe94d 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -2321,7 +2321,7 @@ rec { ocamlPackages_5_4 = mkOcamlPackages (callPackage ../development/compilers/ocaml/5.4.nix { }); - ocamlPackages_latest = ocamlPackages_5_3; + ocamlPackages_latest = ocamlPackages_5_4; ocamlPackages = ocamlPackages_5_3; From bcfc4d6991a207c9df3770313ba2b492cbc87ff8 Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Fri, 9 Jan 2026 15:54:53 -0500 Subject: [PATCH 110/115] ocamlPackages_latest: recurseIntoAttrs to build in hydra --- pkgs/top-level/all-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 700ae2629131..f7852dcfbe54 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4968,6 +4968,7 @@ with pkgs; ocaml = ocamlPackages.ocaml; ocamlPackages = recurseIntoAttrs ocaml-ng.ocamlPackages; + ocamlPackages_latest = recurseIntoAttrs ocaml-ng.ocamlPackages_latest; ocaml-crunch = ocamlPackages.crunch.bin; From cb589d4c98165f99cbf0d7f2690174f287a58d31 Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Fri, 9 Jan 2026 16:02:29 -0500 Subject: [PATCH 111/115] ocamlPackages.camlp4: add 5.4 support --- pkgs/development/tools/ocaml/camlp4/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/ocaml/camlp4/default.nix b/pkgs/development/tools/ocaml/camlp4/default.nix index 1b6674f1c7ce..4f0a11ab5467 100644 --- a/pkgs/development/tools/ocaml/camlp4/default.nix +++ b/pkgs/development/tools/ocaml/camlp4/default.nix @@ -9,7 +9,7 @@ findlib, }: -if lib.versionAtLeast ocaml.version "5.4" then +if lib.versionAtLeast ocaml.version "5.5" then throw "camlp4 is not available for OCaml ${ocaml.version}" else @@ -84,6 +84,10 @@ else version = "5.3"; sha256 = "sha256-V/kKhTP9U4jWDFuQKuB7BS3XICg1lq/2Avj7UJR55+k="; }; + "5.4" = { + version = "5.4"; + sha256 = "sha256-7FsKEr0cRVF4LIOvROWMyXBefRTBaS66ZqwtP2VLefM="; + }; } .${ocaml.meta.branch}; in From 90221290f149cd2ffeb7097c969e2fc10e360cab Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Fri, 9 Jan 2026 16:20:05 -0500 Subject: [PATCH 112/115] ocamlPackages.morbig: use broken instead of throw on incompatible ocaml --- .../ocaml-modules/morbig/default.nix | 53 +++++++++---------- 1 file changed, 25 insertions(+), 28 deletions(-) diff --git a/pkgs/development/ocaml-modules/morbig/default.nix b/pkgs/development/ocaml-modules/morbig/default.nix index 9197c9352e1e..163c3322cbf7 100644 --- a/pkgs/development/ocaml-modules/morbig/default.nix +++ b/pkgs/development/ocaml-modules/morbig/default.nix @@ -9,35 +9,32 @@ visitors, }: -lib.throwIf (lib.versionAtLeast ocaml.version "5.4") - "morbig is not available for OCaml ${ocaml.version}" +buildDunePackage rec { + pname = "morbig"; + version = "0.11.0"; - buildDunePackage - rec { - pname = "morbig"; - version = "0.11.0"; + src = fetchFromGitHub { + owner = "colis-anr"; + repo = pname; + rev = "v${version}"; + hash = "sha256-fOBaJHHP/Imi9UDLflI52OdKDcmMxpl+NH3pfofmv/o="; + }; - src = fetchFromGitHub { - owner = "colis-anr"; - repo = pname; - rev = "v${version}"; - hash = "sha256-fOBaJHHP/Imi9UDLflI52OdKDcmMxpl+NH3pfofmv/o="; - }; + nativeBuildInputs = [ + menhir + ]; - nativeBuildInputs = [ - menhir - ]; + propagatedBuildInputs = [ + menhirLib + ppx_deriving_yojson + visitors + ]; - propagatedBuildInputs = [ - menhirLib - ppx_deriving_yojson - visitors - ]; - - meta = { - homepage = "https://github.com/colis-anr/${pname}"; - description = "Static parser for POSIX Shell"; - license = lib.licenses.gpl3Plus; - maintainers = with lib.maintainers; [ niols ]; - }; - } + meta = { + homepage = "https://github.com/colis-anr/${pname}"; + description = "Static parser for POSIX Shell"; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ niols ]; + broken = lib.versionAtLeast ocaml.version "5.4"; + }; +} From b6f4fbf448c568f0dd5de0cdce44a814bdce3369 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 11 Jan 2026 20:02:19 +0000 Subject: [PATCH 113/115] python3Packages.oslo-concurrency: 7.2.0 -> 7.3.0 --- .../python-modules/oslo-concurrency/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/oslo-concurrency/default.nix b/pkgs/development/python-modules/oslo-concurrency/default.nix index 2e473ae3e58d..e9244c7bc843 100644 --- a/pkgs/development/python-modules/oslo-concurrency/default.nix +++ b/pkgs/development/python-modules/oslo-concurrency/default.nix @@ -22,14 +22,14 @@ buildPythonPackage rec { pname = "oslo-concurrency"; - version = "7.2.0"; + version = "7.3.0"; pyproject = true; src = fetchFromGitHub { owner = "openstack"; repo = "oslo.concurrency"; tag = version; - hash = "sha256-72KatSWTCx4hyUel2Fu5yiqrdYveRGruvJDWWo1hkIk="; + hash = "sha256-vZWEeyYkdUl9EL4bw6AIbZgVpKXgakvRyFkQAT5GqJ4="; }; postPatch = '' @@ -38,6 +38,9 @@ buildPythonPackage rec { --replace-fail "/bin/bash" "${bash}/bin/bash" \ --replace-fail "/bin/true" "${coreutils}/bin/true" \ --replace-fail "/bin/env" "${coreutils}/bin/env" + + substituteInPlace pyproject.toml \ + --replace-fail '"oslo_concurrency"' '"oslo_concurrency", "oslo_concurrency.fixture", "oslo_concurrency.tests"' ''; env.PBR_VERSION = version; From ace2eca1396f3bf7c252dbfd81209b99e4a55490 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 12 Jan 2026 15:36:35 +0000 Subject: [PATCH 114/115] scalingo: 1.41.1 -> 1.42.0 --- pkgs/by-name/sc/scalingo/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sc/scalingo/package.nix b/pkgs/by-name/sc/scalingo/package.nix index 92af876c2186..2ee62a45eeec 100644 --- a/pkgs/by-name/sc/scalingo/package.nix +++ b/pkgs/by-name/sc/scalingo/package.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "scalingo"; - version = "1.41.1"; + version = "1.42.0"; src = fetchFromGitHub { owner = pname; repo = "cli"; rev = version; - hash = "sha256-1y5YDTeXsr1DPXVV01W6aLHlgr2O5sEBeZ8YW9O01w4="; + hash = "sha256-Ifrt3pvKw40f7lDwM2C2EVm/g6i4Dd+3fxVphAxU3as="; }; vendorHash = null; From 06b34b54953de7613682f06373419d7e8af17072 Mon Sep 17 00:00:00 2001 From: Manuel Sanchez Pinar Date: Fri, 9 Jan 2026 21:08:24 +0100 Subject: [PATCH 115/115] silverbullet: 2.0.0 -> 2.3.0 --- pkgs/by-name/si/silverbullet/package.nix | 57 +++++++++++++++++------- 1 file changed, 40 insertions(+), 17 deletions(-) diff --git a/pkgs/by-name/si/silverbullet/package.nix b/pkgs/by-name/si/silverbullet/package.nix index 06f9d206adc5..f7edf39e960d 100644 --- a/pkgs/by-name/si/silverbullet/package.nix +++ b/pkgs/by-name/si/silverbullet/package.nix @@ -1,31 +1,54 @@ { + autoPatchelfHook, + fetchzip, lib, - stdenv, - fetchurl, - deno, - makeWrapper, nixosTests, + stdenv, + stdenvNoCC, }: -stdenv.mkDerivation (finalAttrs: { +let + platformMap = { + "x86_64-linux" = { + os = "linux"; + arch = "x86_64"; + hash = "sha256-IGks7vmJd/xuJzqhogR5aLVM6eUUe6bACe5VuAWJOWA="; + }; + "aarch64-linux" = { + os = "linux"; + arch = "aarch64"; + hash = "sha256-brqotISLIwD1t/2E2oyI7HSkfPpVgUODaNZJcc9o6zI="; + }; + "x86_64-darwin" = { + os = "darwin"; + arch = "x86_64"; + hash = "sha256-n8GN2ZmeYEpZ0DB7zwEkXnSUZkAySNAGVn5BLw46fZI="; + }; + "aarch64-darwin" = { + os = "darwin"; + arch = "aarch64"; + hash = "sha256-BISrkxLuxlo7KQiW9cUipJpEhOm94gL3GvyivO6LaBU="; + }; + }; + platform = platformMap.${stdenvNoCC.hostPlatform.system}; +in +stdenvNoCC.mkDerivation (finalAttrs: { pname = "silverbullet"; - version = "2.0.0"; + version = "2.3.0"; - src = fetchurl { - url = "https://github.com/silverbulletmd/silverbullet/releases/download/${finalAttrs.version}/silverbullet.js"; - hash = "sha256-O0QuzbY/ZdhOZvsUcgpZ55E+CSxbAsRxJmBQird5vCk="; + src = fetchzip { + url = "https://github.com/silverbulletmd/silverbullet/releases/download/${finalAttrs.version}/silverbullet-server-${platform.os}-${platform.arch}.zip"; + hash = platform.hash; + stripRoot = false; }; - dontUnpack = true; + nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; - nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ stdenv.cc.cc.lib ]; installPhase = '' runHook preInstall - mkdir -p $out/{bin,lib} - cp $src $out/lib/silverbullet.js - makeWrapper ${lib.getExe deno} $out/bin/silverbullet \ - --set DENO_NO_UPDATE_CHECK "1" \ - --add-flags "run -A --unstable-kv --unstable-worker-options ${placeholder "out"}/lib/silverbullet.js" + mkdir -p $out/bin + cp $src/silverbullet $out/bin/ runHook postInstall ''; @@ -40,6 +63,6 @@ stdenv.mkDerivation (finalAttrs: { license = lib.licenses.mit; maintainers = with lib.maintainers; [ aorith ]; mainProgram = "silverbullet"; - inherit (deno.meta) platforms; + platforms = builtins.attrNames platformMap; }; })