From db42eeba6b191e01356d4537546a9ca33699ad61 Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Tue, 13 Feb 2024 16:35:33 -0500 Subject: [PATCH 01/12] nixos/iso-image: Support systemd initrd --- nixos/modules/installer/cd-dvd/iso-image.nix | 80 +++++++++++++++----- 1 file changed, 60 insertions(+), 20 deletions(-) diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix index 47397b99d922..040d9bb02ea5 100644 --- a/nixos/modules/installer/cd-dvd/iso-image.nix +++ b/nixos/modules/installer/cd-dvd/iso-image.nix @@ -4,6 +4,7 @@ { config, lib, + utils, pkgs, ... }: @@ -785,7 +786,11 @@ in # specified on the kernel command line, created in the stage 1 # init script. "/iso" = lib.mkImageMediaOverride { - device = "/dev/root"; + device = + if config.boot.initrd.systemd.enable then + "/dev/disk/by-label/${config.isoImage.volumeID}" + else + "/dev/root"; neededForBoot = true; noCheck = true; }; @@ -794,7 +799,7 @@ in # image) to make this a live CD. "/nix/.ro-store" = lib.mkImageMediaOverride { fsType = "squashfs"; - device = "/iso/nix-store.squashfs"; + device = "${lib.optionalString config.boot.initrd.systemd.enable "/sysroot"}/iso/nix-store.squashfs"; options = [ "loop" ] @@ -809,18 +814,11 @@ in }; "/nix/store" = lib.mkImageMediaOverride { - fsType = "overlay"; - device = "overlay"; - options = [ - "lowerdir=/nix/.ro-store" - "upperdir=/nix/.rw-store/store" - "workdir=/nix/.rw-store/work" - ]; - depends = [ - "/nix/.ro-store" - "/nix/.rw-store/store" - "/nix/.rw-store/work" - ]; + overlay = { + lowerdir = [ "/nix/.ro-store" ]; + upperdir = "/nix/.rw-store/store"; + workdir = "/nix/.rw-store/work"; + }; }; }; @@ -882,9 +880,9 @@ in # UUID of the USB stick. It would be nicer to write # `root=/dev/disk/by-label/...' here, but UNetbootin doesn't # recognise that. - boot.kernelParams = [ - "root=LABEL=${config.isoImage.volumeID}" + boot.kernelParams = lib.optionals (!config.boot.initrd.systemd.enable) [ "boot.shell_on_fail" + "root=LABEL=${config.isoImage.volumeID}" ]; fileSystems = config.lib.isoFileSystems; @@ -901,6 +899,44 @@ in "overlay" ]; + boot.initrd.systemd = lib.mkIf config.boot.initrd.systemd.enable { + emergencyAccess = true; + + # Most of util-linux is not included by default. + initrdBin = [ config.boot.initrd.systemd.package.util-linux ]; + services.copytoram = { + description = "Copy ISO contents to RAM"; + requiredBy = [ "initrd.target" ]; + before = [ + "${utils.escapeSystemdPath "/sysroot/nix/.ro-store"}.mount" + "initrd-switch-root.target" + ]; + unitConfig = { + RequiresMountsFor = "/sysroot/iso"; + ConditionKernelCommandLine = "copytoram"; + }; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + }; + path = [ + pkgs.coreutils + config.boot.initrd.systemd.package.util-linux + ]; + script = '' + device=$(findmnt -n -o SOURCE --target /sysroot/iso) + fsSize=$(blockdev --getsize64 "$device" || stat -Lc '%s' "$device") + mkdir -p /tmp-iso + mount --bind --make-private /sysroot/iso /tmp-iso + umount /sysroot/iso + mount -t tmpfs -o size="$fsSize" tmpfs /sysroot/iso + cp -r /tmp-iso/* /sysroot/iso/ + umount /tmp-iso + rm -r /tmp-iso + ''; + }; + }; + # Closures to be copied to the Nix store on the CD, namely the init # script and the top-level system configuration directory. isoImage.storeContents = [ @@ -958,15 +994,19 @@ in source = "${efiDir}/EFI"; target = "/EFI"; } - { - source = (pkgs.writeTextDir "grub/loopback.cfg" "source /EFI/BOOT/grub.cfg") + "/grub"; - target = "/boot/grub"; - } { source = config.isoImage.efiSplashImage; target = "/EFI/BOOT/efi-background.png"; } ] + ++ lib.optionals (config.isoImage.makeEfiBootable && !config.boot.initrd.systemd.enable) [ + # http://www.supergrubdisk.org/wiki/Loopback.cfg + # This feature will be removed, and thus is not supported by systemd initrd + { + source = (pkgs.writeTextDir "grub/loopback.cfg" "source /EFI/BOOT/grub.cfg") + "/grub"; + target = "/boot/grub"; + } + ] ++ lib.optionals (config.boot.loader.grub.memtest86.enable && config.isoImage.makeBiosBootable) [ { source = "${pkgs.memtest86plus}/memtest.bin"; From fcf82c51ca478ad825546d33d7026cc39c4566c4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 3 Aug 2025 18:52:49 +0000 Subject: [PATCH 02/12] _7zz: 25.00 -> 25.01 --- pkgs/by-name/_7/_7zz/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/_7/_7zz/package.nix b/pkgs/by-name/_7/_7zz/package.nix index 92244f056b2e..9b539cf98d2d 100644 --- a/pkgs/by-name/_7/_7zz/package.nix +++ b/pkgs/by-name/_7/_7zz/package.nix @@ -28,14 +28,14 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "7zz"; - version = "25.00"; + version = "25.01"; src = fetchzip { url = "https://7-zip.org/a/7z${lib.replaceStrings [ "." ] [ "" ] finalAttrs.version}-src.tar.xz"; hash = { - free = "sha256-YY2Nw1aeQjXay9IEd4SwuhgqzeK95nH4nlZGwAlud6o="; - unfree = "sha256-gwC/5OkIAHp0OHJWhwD7JpJVSx06oCFs1Ndf+iG5qB8="; + free = "sha256-A1BBdSGepobpguzokL1zpjce5EOl0zqABYciv9zCOac="; + unfree = "sha256-Jkj6T4tMols33uyJSOCcVmxh5iBYYCO/rq9dF4NDMko="; } .${if enableUnfree then "unfree" else "free"}; stripRoot = false; From ebcc3155c5610f66b4117b275f236cfc7dfa8d33 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 7 Aug 2025 23:54:31 +0000 Subject: [PATCH 03/12] frida-tools: 14.4.2 -> 14.4.5 --- pkgs/by-name/fr/frida-tools/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/fr/frida-tools/package.nix b/pkgs/by-name/fr/frida-tools/package.nix index 68bdc5fa195b..f158daa44913 100644 --- a/pkgs/by-name/fr/frida-tools/package.nix +++ b/pkgs/by-name/fr/frida-tools/package.nix @@ -6,12 +6,12 @@ python3Packages.buildPythonApplication rec { pname = "frida-tools"; - version = "14.4.2"; + version = "14.4.5"; format = "pyproject"; src = fetchPypi { inherit pname version; - hash = "sha256-M+iKHoJpxIUUoEVYntL8PPR7B3TbBDiW/Oc8ZE15wo8="; + hash = "sha256-sId91KB2qLasJHsfrS6Nfqctn0kCPS6ieNwtfheai8M="; }; build-system = with python3Packages; [ From bac390c03044b4256aba94f7d8f2876c933f4f32 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 00:28:22 +0000 Subject: [PATCH 04/12] rime-wanxiang: 9.1.3 -> 10.0.10 --- pkgs/by-name/ri/rime-wanxiang/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ri/rime-wanxiang/package.nix b/pkgs/by-name/ri/rime-wanxiang/package.nix index 382ba82970c1..eacf0a15b123 100644 --- a/pkgs/by-name/ri/rime-wanxiang/package.nix +++ b/pkgs/by-name/ri/rime-wanxiang/package.nix @@ -9,13 +9,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "rime-wanxiang"; - version = "9.1.3"; + version = "10.0.10"; src = fetchFromGitHub { owner = "amzxyz"; repo = "rime_wanxiang"; tag = "v" + finalAttrs.version; - hash = "sha256-jcYvDktk1zj32i92LQKYu35Br2uPRcoNtoyPKo3hP/Y="; + hash = "sha256-lDjvaVkHEHhfL7iI7psaaVlUO4SNe2e49N5Nz+Lex68="; }; nativeBuildInputs = [ From facda181d5b69fb2c3dfe6147513e5913c8053d0 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 9 Aug 2025 02:52:53 +0000 Subject: [PATCH 05/12] xfce.orage: 4.20.1 -> 4.20.2 https://gitlab.xfce.org/apps/orage/-/compare/orage-4.20.1...orage-4.20.2 --- pkgs/desktops/xfce/applications/orage/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/orage/default.nix b/pkgs/desktops/xfce/applications/orage/default.nix index c654664ed9c7..29c036561481 100644 --- a/pkgs/desktops/xfce/applications/orage/default.nix +++ b/pkgs/desktops/xfce/applications/orage/default.nix @@ -13,9 +13,9 @@ mkXfceDerivation { category = "apps"; pname = "orage"; - version = "4.20.1"; + version = "4.20.2"; - sha256 = "sha256-WdvqsgHfhJ2sk4vQ75m1zmWjefJBJdDKH8E0GA4fCNg="; + sha256 = "sha256-iV4eVYmOXfEpq5cnHeCXRvx0Ms0Dis3EIwbcSakGLXs="; buildInputs = [ glib From 9a38419734001a49a23d7683df0bf7be74ed3b6f Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 9 Aug 2025 11:11:46 +0800 Subject: [PATCH 06/12] mate.mate-panel: 1.28.4 -> 1.28.5 https://github.com/mate-desktop/mate-panel/compare/v1.28.4...v1.28.5 Upstream is (still) experiencing problems releasing tarballs, so switch to fetchFromGitHub for now. --- pkgs/desktops/mate/mate-panel/default.nix | 30 +++++++++++++++++------ 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/pkgs/desktops/mate/mate-panel/default.nix b/pkgs/desktops/mate/mate-panel/default.nix index 58824e4d0d55..9a9d89effab2 100644 --- a/pkgs/desktops/mate/mate-panel/default.nix +++ b/pkgs/desktops/mate/mate-panel/default.nix @@ -1,9 +1,12 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, + autoconf-archive, + autoreconfHook, pkg-config, gettext, + gtk-doc, itstool, glib, gtk-layer-shell, @@ -14,32 +17,42 @@ libxml2, dconf, dconf-editor, + mate-common, mate-desktop, mate-menus, hicolor-icon-theme, wayland, gobject-introspection, wrapGAppsHook3, + yelp-tools, marco, - mateUpdateScript, + gitUpdater, }: stdenv.mkDerivation rec { pname = "mate-panel"; - version = "1.28.4"; + version = "1.28.5"; - src = fetchurl { - url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - hash = "sha256-AvCesDFMKsGXtvCJlQpXHNujm/0D1sOguP13JSqWiHQ="; + src = fetchFromGitHub { + owner = "mate-desktop"; + repo = "mate-panel"; + tag = "v${version}"; + fetchSubmodules = true; + hash = "sha256-P1zrOH1xTbKXIoP13azAFDv2Q05dubR1AfmuLbgh250="; }; nativeBuildInputs = [ + autoconf-archive + autoreconfHook gobject-introspection gettext + gtk-doc itstool libxml2 # xmllint + mate-common # mate-common.m4 macros pkg-config wrapGAppsHook3 + yelp-tools ]; buildInputs = [ @@ -81,7 +94,10 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - passthru.updateScript = mateUpdateScript { inherit pname; }; + passthru.updateScript = gitUpdater { + rev-prefix = "v"; + odd-unstable = true; + }; meta = with lib; { description = "MATE panel"; From 123c0442cf1c1e2e4654c4ee09bc769bcec86882 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 9 Aug 2025 12:41:59 +0800 Subject: [PATCH 07/12] pantheon.elementary-code: 8.0.0 -> 8.1.0 https://github.com/elementary/code/compare/8.0.0...8.1.0 --- .../pantheon/apps/elementary-code/default.nix | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-code/default.nix b/pkgs/desktops/pantheon/apps/elementary-code/default.nix index 1a838e61759e..bd03337514d0 100644 --- a/pkgs/desktops/pantheon/apps/elementary-code/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-code/default.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - fetchpatch, nix-update-script, meson, ninja, @@ -26,24 +25,15 @@ stdenv.mkDerivation rec { pname = "elementary-code"; - version = "8.0.0"; + version = "8.1.0"; src = fetchFromGitHub { owner = "elementary"; repo = "code"; rev = version; - hash = "sha256-muW7K9cFITZaoNi3id+iplmokN5sSE8x1CVQ62+myUU="; + hash = "sha256-pL/xyD9jwuPixbVdjPa3vdZWHxI+T2ARI4BvcTV61jc="; }; - patches = [ - # Fix build with GCC 14 - # https://github.com/elementary/code/pull/1606 - (fetchpatch { - url = "https://github.com/elementary/code/commit/9b8347adcbb94f3186815413d927eecc51be2ccf.patch"; - hash = "sha256-VhpvWgOGniOEjxBOjvX30DZIRGalxfPlb9j1VaOAJTA="; - }) - ]; - strictDeps = true; nativeBuildInputs = [ From e94086afcba8b18f16beac08bd0fda3458fbd0c3 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 9 Aug 2025 17:10:30 +0800 Subject: [PATCH 08/12] xapp: 2.8.11 -> 2.8.12 https://github.com/linuxmint/xapp/compare/2.8.11...2.8.12 --- pkgs/by-name/xa/xapp/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/xa/xapp/package.nix b/pkgs/by-name/xa/xapp/package.nix index 2962ed6d683b..251038b73341 100644 --- a/pkgs/by-name/xa/xapp/package.nix +++ b/pkgs/by-name/xa/xapp/package.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { pname = "xapp"; - version = "2.8.11"; + version = "2.8.12"; outputs = [ "out" @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { owner = "linuxmint"; repo = "xapp"; rev = version; - hash = "sha256-dmMjGWjq0s4MkobeqssbG5G3+gHRqA6lmu95uJX3RJY="; + hash = "sha256-LGONOsllf9POLLcRG2JN6VNvvMZorcG+aXVNLUz31Tc="; }; # Recommended by upstream, which enables the build of xapp-debug. From 20019fa747a264ce878a75b94391ce8eda74b61f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 15:41:39 +0000 Subject: [PATCH 09/12] vala-lint: 0-unstable-2024-08-28 -> 0-unstable-2025-08-03 https://github.com/vala-lang/vala-lint/compare/4ed1443c35a8a84445fb59292d539358365d8263...a1d1a7bc0f740920e592fd788a836c402fd9825c --- pkgs/by-name/va/vala-lint/package.nix | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/va/vala-lint/package.nix b/pkgs/by-name/va/vala-lint/package.nix index 38fe25d0611f..4a7e0450194c 100644 --- a/pkgs/by-name/va/vala-lint/package.nix +++ b/pkgs/by-name/va/vala-lint/package.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation { pname = "vala-lint"; - version = "0-unstable-2024-08-28"; + version = "0-unstable-2025-08-03"; src = fetchFromGitHub { owner = "vala-lang"; repo = "vala-lint"; - rev = "4ed1443c35a8a84445fb59292d539358365d8263"; - sha256 = "sha256-NPadBrL2g5w95slwDpp7kNXBgLJ9na8Yd/J7zm28SSo="; + rev = "a1d1a7bc0f740920e592fd788a836c402fd9825c"; + sha256 = "sha256-63T+wLdnGtVBxKkkkj7gJx0ebApam922Z+cmk2R7Ys0="; }; nativeBuildInputs = [ @@ -39,12 +39,6 @@ stdenv.mkDerivation { json-glib ]; - postPatch = '' - # https://github.com/vala-lang/vala-lint/issues/181 - substituteInPlace test/meson.build \ - --replace "test('auto-fix', auto_fix_test, env: test_envars)" "" - ''; - doCheck = true; passthru = { From ab06429e996e0041042fd4d3b7eafc733d7be9aa Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 22:29:57 +0000 Subject: [PATCH 10/12] aider-chat-full: 0.85.2 -> 0.86.0 --- pkgs/by-name/ai/aider-chat/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ai/aider-chat/package.nix b/pkgs/by-name/ai/aider-chat/package.nix index 588216b36ad7..0916cb7f11ec 100644 --- a/pkgs/by-name/ai/aider-chat/package.nix +++ b/pkgs/by-name/ai/aider-chat/package.nix @@ -19,7 +19,7 @@ let d.stopwords ]); - version = "0.85.2"; + version = "0.86.0"; aider-chat = python3Packages.buildPythonApplication { pname = "aider-chat"; inherit version; @@ -29,7 +29,7 @@ let owner = "Aider-AI"; repo = "aider"; tag = "v${version}"; - hash = "sha256-J2xCx1edbu8mEGzNq2PKMxPCMlMZkArEwz6338Sm1tw="; + hash = "sha256-pqwsYObgio50rbuGGOmi7PlEMxdX75B1ONKs+VAJrd8="; }; pythonRelaxDeps = true; From b9e68209965446e01e7afe178c85215eea4a0b85 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 23:59:14 +0000 Subject: [PATCH 11/12] opentofu: 1.10.4 -> 1.10.5 --- pkgs/by-name/op/opentofu/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/op/opentofu/package.nix b/pkgs/by-name/op/opentofu/package.nix index 93424951f681..d9959676436c 100644 --- a/pkgs/by-name/op/opentofu/package.nix +++ b/pkgs/by-name/op/opentofu/package.nix @@ -15,13 +15,13 @@ let package = buildGoModule rec { pname = "opentofu"; - version = "1.10.4"; + version = "1.10.5"; src = fetchFromGitHub { owner = "opentofu"; repo = "opentofu"; tag = "v${version}"; - hash = "sha256-COAX185U35htUL/ZdUy5Rq2/OUVcdGe3zAg8NnjoqnQ="; + hash = "sha256-w7uzTG0zqa+izncQoqCSbIJCCIz+jOVbPg9/HiCm7Ik="; }; vendorHash = "sha256-+cwFkqhFuLJCb02tvYjccpkNzy7tz979mjgCeqi2DC4="; From 7d3ccfcc8ccafb7e4acfa244808f921adec193a9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 10 Aug 2025 02:55:21 +0000 Subject: [PATCH 12/12] boring: 0.11.6 -> 0.11.7 --- pkgs/by-name/bo/boring/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/bo/boring/package.nix b/pkgs/by-name/bo/boring/package.nix index d4d199ff8cd5..0fd622c9c5d0 100644 --- a/pkgs/by-name/bo/boring/package.nix +++ b/pkgs/by-name/bo/boring/package.nix @@ -10,20 +10,20 @@ buildGoModule (finalAttrs: { pname = "boring"; - version = "0.11.6"; + version = "0.11.7"; src = fetchFromGitHub { owner = "alebeck"; repo = "boring"; tag = finalAttrs.version; - hash = "sha256-mIR12OkdZll3MqlKF3OMqrc3C73SPmqypj0as9Y5LRQ="; + hash = "sha256-RXLFIOGJEvE6kV14+rnN4zPV8bloikxjksdlSHQFwUU="; }; nativeBuildInputs = [ installShellFiles ]; - vendorHash = "sha256-1FVSKjsPDe4faaIioJG89556ibREcJt6xi28mp68Ea0="; + vendorHash = "sha256-/MAkVesn8ub2MrguWTueMI9+/lgCRdaXUEioHE/bg8w="; ldflags = [ "-s"