Skip to content

[Backport release-25.11] nixos: remove optional builtins prefixes from prelude functions#480781

Merged
bjornfor merged 1 commit into
NixOS:release-25.11from
trueNAHO:backport-447403-to-release-25.11
Jan 17, 2026
Merged

[Backport release-25.11] nixos: remove optional builtins prefixes from prelude functions#480781
bjornfor merged 1 commit into
NixOS:release-25.11from
trueNAHO:backport-447403-to-release-25.11

Conversation

@trueNAHO

Copy link
Copy Markdown
Member

This is a semi-manual backport of #447403, as proposed in #447403 (comment). The diff has been generated by running the provided script against this branch.

For convenience, here is the relevant diff against the original commit:

diff against the original commit
--- 2026-01-15 (a2ed7e8d882c2b9deba7b7c2cc8e1a97b29aa415)
+++ 2026-01-16 (f48f9dd7ec211800f8ee6f6ce1c5cf060de29cc6)
@@ -661,24 +662,11 @@
                "name"
                "extraConfig"
                "hash"
-diff --git a/nixos/modules/services/audio/mpd.nix b/nixos/modules/services/audio/mpd.nix
-index d21dcdac9b03..1bf0723126ef 100644
---- a/nixos/modules/services/audio/mpd.nix
-+++ b/nixos/modules/services/audio/mpd.nix
-@@ -27,7 +27,7 @@ let
-       )
-     ) a;
-   nonBlockSettings = lib.filterAttrs (n: v: !(builtins.isAttrs v || builtins.isList v)) cfg.settings;
--  pureBlockSettings = builtins.removeAttrs cfg.settings (builtins.attrNames nonBlockSettings);
-+  pureBlockSettings = removeAttrs cfg.settings (builtins.attrNames nonBlockSettings);
-   blocks =
-     pureBlockSettings
-     // lib.optionalAttrs cfg.fluidsynth {
 diff --git a/nixos/modules/services/audio/pulseaudio.nix b/nixos/modules/services/audio/pulseaudio.nix
-index 8f1bfb98cd08..d6afa095fc3e 100644
+index b4ef09f49760..711dbe337a19 100644
 --- a/nixos/modules/services/audio/pulseaudio.nix
 +++ b/nixos/modules/services/audio/pulseaudio.nix
-@@ -282,11 +282,9 @@ in
+@@ -262,11 +262,9 @@ in
        (lib.mkIf (cfg.extraModules != [ ]) {
          services.pulseaudio.daemon.config.dl-search-path =
            let
@@ -853,16 +841,7 @@

    # The main PostgreSQL configuration file.
    configFile = pkgs.writeTextDir "postgresql.conf" (
-@@ -83,7 +83,7 @@ let
-       else if builtins.isString v then
-         "${directive} '${v}'"
-       else
--        "${directive} ${builtins.toString v}"
-+        "${directive} ${toString v}"
-     ) user.ensureClauses;
-
-   generateAlterRoleSQL =
-@@ -882,7 +882,7 @@ in
+@@ -907,7 +907,7 @@ in
        };

        path = [ cfg.finalPackage ];
@@ -1472,25 +1451,6 @@
      "Identity"
      "Pinning"
    ];
-diff --git a/nixos/modules/services/network-filesystems/openafs/server.nix b/nixos/modules/services/network-filesystems/openafs/server.nix
-index a9656bafb26d..43370bea3809 100644
---- a/nixos/modules/services/network-filesystems/openafs/server.nix
-+++ b/nixos/modules/services/network-filesystems/openafs/server.nix
-@@ -303,12 +303,12 @@ in
-
-     warnings =
-       lib.optional ((builtins.attrNames cfg.cellServDB) != [ cfg.cellName ]) ''
--        config.services.openafsServer.cellServDB should normally only contain servers for one cell. It currently contains servers for ${builtins.toString (builtins.attrNames cfg.cellServDB)}.
-+        config.services.openafsServer.cellServDB should normally only contain servers for one cell. It currently contains servers for ${toString (builtins.attrNames cfg.cellServDB)}.
-       ''
-       ++
-         lib.optional (useBuCellServDB && (builtins.attrNames cfg.backup.cellServDB) != [ cfg.cellName ])
-           ''
--            config.services.openafsServer.backup.cellServDB should normally only contain servers for one cell. It currently contains servers for ${builtins.toString (builtins.attrNames cfg.cellServDB)}.
-+            config.services.openafsServer.backup.cellServDB should normally only contain servers for one cell. It currently contains servers for ${toString (builtins.attrNames cfg.cellServDB)}.
-           '';
-
-     assertions = [
 diff --git a/nixos/modules/services/networking/aria2.nix b/nixos/modules/services/networking/aria2.nix
 index 24fe3452927e..18edd9efe960 100644
 --- a/nixos/modules/services/networking/aria2.nix
@@ -1691,19 +1651,6 @@
            } ${cfg.server.ip} ${cfg.server.domain}";
            serviceConfig = {
              # Filesystem access
-diff --git a/nixos/modules/services/networking/meshtasticd.nix b/nixos/modules/services/networking/meshtasticd.nix
-index d72affb8b6df..3afa29a0c0b8 100644
---- a/nixos/modules/services/networking/meshtasticd.nix
-+++ b/nixos/modules/services/networking/meshtasticd.nix
-@@ -115,7 +115,7 @@ in
-         AmbientCapabilities = [
-           "CAP_NET_BIND_SERVICE"
-         ];
--        ExecStart = "${lib.getExe cfg.package} --port=${builtins.toString cfg.port} --fsdir=${cfg.dataDir} --config=${configFile} --verbose";
-+        ExecStart = "${lib.getExe cfg.package} --port=${toString cfg.port} --fsdir=${cfg.dataDir} --config=${configFile} --verbose";
-         Restart = "always";
-         RestartSec = "3";
-       };
 diff --git a/nixos/modules/services/networking/nat-iptables.nix b/nixos/modules/services/networking/nat-iptables.nix
 index 16cd8c4686b5..650b71b038cf 100644
 --- a/nixos/modules/services/networking/nat-iptables.nix
@@ -2116,6 +2063,19 @@

    privateKeyCredential = interfaceName: escapeCredentialName "wireguard-${interfaceName}-private-key";
    presharedKeyCredential =
+diff --git a/nixos/modules/services/networking/yggdrasil.nix b/nixos/modules/services/networking/yggdrasil.nix
+index 5d1ecd7f4797..c773ff3799ef 100644
+--- a/nixos/modules/services/networking/yggdrasil.nix
++++ b/nixos/modules/services/networking/yggdrasil.nix
+@@ -166,7 +166,7 @@ in
+         script = ''
+           if [ ! -e ${keysPath} ]
+           then
+-            mkdir --mode=700 -p ${builtins.dirOf keysPath}
++            mkdir --mode=700 -p ${dirOf keysPath}
+             ${binYggdrasil} -genconf -json \
+               | ${pkgs.jq}/bin/jq \
+                   'to_entries|map(select(.key|endswith("Key")))|from_entries' \
 diff --git a/nixos/modules/services/printing/cups-pdf.nix b/nixos/modules/services/printing/cups-pdf.nix
 index 25c5fb8a89b1..a5fd0c3c1f6d 100644
 --- a/nixos/modules/services/printing/cups-pdf.nix
@@ -2325,29 +2285,8 @@
        in
        {
          sks-db = {
-diff --git a/nixos/modules/services/system/nix-daemon-firewall.nix b/nixos/modules/services/system/nix-daemon-firewall.nix
-index 9c3945d3c9ef..d3f89cc50c06 100644
---- a/nixos/modules/services/system/nix-daemon-firewall.nix
-+++ b/nixos/modules/services/system/nix-daemon-firewall.nix
-@@ -117,14 +117,14 @@ in
-
-           # TCP
-           ${lib.optionalString (cfg.allowedTCPPorts != [ ]) ''
--            tcp dport { ${lib.concatStringsSep ", " (map builtins.toString cfg.allowedTCPPorts)} } accept
-+            tcp dport { ${lib.concatStringsSep ", " (map toString cfg.allowedTCPPorts)} } accept
-             ip protocol tcp counter drop
-             ip6 nexthdr tcp counter drop
-           ''}
-
-           # UDP
-           ${lib.optionalString (cfg.allowedUDPPorts != [ ]) ''
--            udp dport { ${lib.concatStringsSep ", " (map builtins.toString cfg.allowedUDPPorts)} } accept
-+            udp dport { ${lib.concatStringsSep ", " (map toString cfg.allowedUDPPorts)} } accept
-             ip protocol udp counter drop
-             ip6 nexthdr udp counter drop
-           ''}
 diff --git a/nixos/modules/services/web-apps/akkoma.nix b/nixos/modules/services/web-apps/akkoma.nix
-index 250f799718ab..c351c87e72a8 100644
+index f88e8db6fa5b..8a26caf1f2d2 100644
 --- a/nixos/modules/services/web-apps/akkoma.nix
 +++ b/nixos/modules/services/web-apps/akkoma.nix
 @@ -965,12 +965,12 @@ in
@@ -2393,6 +2332,28 @@
          Restart = "on-failure";
          RestartSec = "5s";
          ConfigurationDirectory = [ "artalk" ];
+diff --git a/nixos/modules/services/web-apps/crabfit.nix b/nixos/modules/services/web-apps/crabfit.nix
+index 77275a6acdd9..369b3b21ad98 100644
+--- a/nixos/modules/services/web-apps/crabfit.nix
++++ b/nixos/modules/services/web-apps/crabfit.nix
+@@ -118,7 +118,7 @@ in
+         };
+
+         environment = {
+-          API_LISTEN = "127.0.0.1:${builtins.toString cfg.api.port}";
++          API_LISTEN = "127.0.0.1:${toString cfg.api.port}";
+           DATABASE_URL = "postgres:///crabfit?host=/run/postgresql";
+           FRONTEND_URL = "https://${cfg.frontend.host}";
+         }
+@@ -140,7 +140,7 @@ in
+
+         environment = {
+           NEXT_PUBLIC_API_URL = "https://${cfg.api.host}";
+-          PORT = builtins.toString cfg.frontend.port;
++          PORT = toString cfg.frontend.port;
+         }
+         // cfg.frontend.environment;
+       };
 diff --git a/nixos/modules/services/web-apps/cryptpad.nix b/nixos/modules/services/web-apps/cryptpad.nix
 index cc24766b4763..ddb7ad88119a 100644
 --- a/nixos/modules/services/web-apps/cryptpad.nix
@@ -2557,10 +2518,10 @@

        ${cfg.extraConfig}
 diff --git a/nixos/modules/services/web-apps/keycloak.nix b/nixos/modules/services/web-apps/keycloak.nix
-index 66a501c5c267..31ee97320492 100644
+index 8501c2e874ef..06ee41e41129 100644
 --- a/nixos/modules/services/web-apps/keycloak.nix
 +++ b/nixos/modules/services/web-apps/keycloak.nix
-@@ -701,7 +701,7 @@ in
+@@ -671,7 +671,7 @@ in
            mkTarget =
              file:
              let
@@ -2582,19 +2543,6 @@
          };
        };

-diff --git a/nixos/modules/services/web-apps/librechat.nix b/nixos/modules/services/web-apps/librechat.nix
-index a1cfd2e67559..95f684a491f6 100644
---- a/nixos/modules/services/web-apps/librechat.nix
-+++ b/nixos/modules/services/web-apps/librechat.nix
-@@ -205,7 +205,7 @@ in
-         Type = "simple";
-         User = cfg.user;
-         Group = cfg.group;
--        StateDirectory = builtins.baseNameOf cfg.dataDir;
-+        StateDirectory = baseNameOf cfg.dataDir;
-         WorkingDirectory = cfg.dataDir;
-         LoadCredential = getLoadCredentialList;
-         EnvironmentFile = cfg.credentialsFile;
 diff --git a/nixos/modules/services/web-apps/mastodon.nix b/nixos/modules/services/web-apps/mastodon.nix
 index 9d71b8112cf4..8021abb42ede 100644
 --- a/nixos/modules/services/web-apps/mastodon.nix
@@ -3448,33 +3396,6 @@
              # Note: Firefox doesn't use a regular "-" in the window title, but "—" (Hex: 0xe2 0x80 0x94)
              machine.wait_for_window("Test — Mozilla Firefox")
              machine.send_key("ctrl-minus")
-diff --git a/nixos/tests/gitlab/runner/podman-runner/nix-image.nix b/nixos/tests/gitlab/runner/podman-runner/nix-image.nix
-index 43c11ae25175..bfb11e9573d9 100644
---- a/nixos/tests/gitlab/runner/podman-runner/nix-image.nix
-+++ b/nixos/tests/gitlab/runner/podman-runner/nix-image.nix
-@@ -219,7 +219,7 @@ let
-         cat > $out <<EOF
-         [
-         ${lib.concatStringsSep "\n" (
--          builtins.map (
-+          map (
-             drv:
-             let
-               outputs = drv.outputsToInstall or [ "out" ];
-@@ -227,11 +227,11 @@ let
-             ''
-               {
-                 ${lib.concatStringsSep "\n" (
--                  builtins.map (output: ''
-+                  map (output: ''
-                     ${output} = { outPath = "${lib.getOutput output drv}"; };
-                   '') outputs
-                 )}
--                outputs = [ ${lib.concatStringsSep " " (builtins.map (x: "\"${x}\"") outputs)} ];
-+                outputs = [ ${lib.concatStringsSep " " (map (x: "\"${x}\"") outputs)} ];
-                 name = "${drv.name}";
-                 outPath = "${drv}";
-                 system = "${drv.system}";
 diff --git a/nixos/tests/glance.nix b/nixos/tests/glance.nix
 index dce1c29a4f06..9a92f0c458ea 100644
 --- a/nixos/tests/glance.nix
@@ -3753,22 +3674,6 @@
              pkgs.writeText "ncps-cache-key" "ncps:dcrGsrku0KvltFhrR5lVIMqyloAdo0y8vYZOeIFUSLJS2IToL7dPHSSCk/fi+PJf8EorpBn8PU7MNhfvZoI8mA=="
            );
          };
-diff --git a/nixos/tests/networking/meshtasticd.nix b/nixos/tests/networking/meshtasticd.nix
-index 121886e7910a..d46dbe742ad5 100644
---- a/nixos/tests/networking/meshtasticd.nix
-+++ b/nixos/tests/networking/meshtasticd.nix
-@@ -38,8 +38,8 @@ in
-   testScript = ''
-     with subtest("Test meshtasticd service"):
-       machine.wait_for_unit("meshtasticd.service")
--      machine.wait_for_open_port(${builtins.toString mainPort})
--      machine.wait_for_open_port(${builtins.toString webPort})
--      machine.succeed("curl -fvvv -Ls http://localhost:${builtins.toString webPort} | grep -q 'Meshtastic Web Client'")
-+      machine.wait_for_open_port(${toString mainPort})
-+      machine.wait_for_open_port(${toString webPort})
-+      machine.succeed("curl -fvvv -Ls http://localhost:${toString webPort} | grep -q 'Meshtastic Web Client'")
-   '';
- }
 diff --git a/nixos/tests/networking/networkd-and-scripted.nix b/nixos/tests/networking/networkd-and-scripted.nix
 index b75f82218a69..257fd07d1eb3 100644
 --- a/nixos/tests/networking/networkd-and-scripted.nix

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

Add a 👍 reaction to pull requests you find important.

Remove optional builtins prefixes from prelude functions by running:

    builtins=(
      abort
      baseNameOf
      break
      derivation
      derivationStrict
      dirOf
      false
      fetchGit
      fetchMercurial
      fetchTarball
      fetchTree
      fromTOML
      import
      isNull
      map
      null
      placeholder
      removeAttrs
      scopedImport
      throw
      toString
      true
    )

    fd \
      --exclude doc/manual/release-notes \
      --type file \
      . \
      nixos \
      --exec-batch sed --in-place --regexp-extended "
        s/\<builtins\.($(
          printf '%s\n' "${builtins[@]}" |
            paste --delimiter '|' --serial -
        ))\>/\1/g
      "

    nix fmt
(cherry picked from commit a2ed7e8)

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This report is automatically generated by the PR / Check / cherry-pick CI workflow.

Some of the commits in this PR require the author's and reviewer's attention.

Sometimes it is not possible to cherry-pick exactly the same patch.
This most frequently happens when resolving merge conflicts.
The range-diff will help to review the resolution of conflicts.

If you need to merge this PR despite the warnings, please dismiss this review shortly before merging.

Warning

Difference between f48f9dd and original a2ed7e8 may warrant inspection.

Show diff
@@ Commit message
           "
 
         nix fmt
+    (cherry picked from commit a2ed7e8d882c2b9deba7b7c2cc8e1a97b29aa415)
 
  ## nixos/lib/eval-config-minimal.nix ##
 @@ nixos/lib/eval-config-minimal.nix: let
@@ nixos/modules/services/audio/lavalink.nix: in
                "extraConfig"
                "hash"
 
- ## nixos/modules/services/audio/mpd.nix ##
-@@ nixos/modules/services/audio/mpd.nix: let
-       )
-     ) a;
-   nonBlockSettings = lib.filterAttrs (n: v: !(builtins.isAttrs v || builtins.isList v)) cfg.settings;
--  pureBlockSettings = builtins.removeAttrs cfg.settings (builtins.attrNames nonBlockSettings);
-+  pureBlockSettings = removeAttrs cfg.settings (builtins.attrNames nonBlockSettings);
-   blocks =
-     pureBlockSettings
-     // lib.optionalAttrs cfg.fluidsynth {
-
  ## nixos/modules/services/audio/pulseaudio.nix ##
 @@ nixos/modules/services/audio/pulseaudio.nix: in
        (lib.mkIf (cfg.extraModules != [ ]) {
@@ nixos/modules/services/databases/postgresql.nix: let
  
    # The main PostgreSQL configuration file.
    configFile = pkgs.writeTextDir "postgresql.conf" (
-@@ nixos/modules/services/databases/postgresql.nix: let
-       else if builtins.isString v then
-         "${directive} '${v}'"
-       else
--        "${directive} ${builtins.toString v}"
-+        "${directive} ${toString v}"
-     ) user.ensureClauses;
- 
-   generateAlterRoleSQL =
 @@ nixos/modules/services/databases/postgresql.nix: in
        };
  
@@ nixos/modules/services/network-filesystems/kubo.nix: let
      "Pinning"
    ];
 
- ## nixos/modules/services/network-filesystems/openafs/server.nix ##
-@@ nixos/modules/services/network-filesystems/openafs/server.nix: in
- 
-     warnings =
-       lib.optional ((builtins.attrNames cfg.cellServDB) != [ cfg.cellName ]) ''
--        config.services.openafsServer.cellServDB should normally only contain servers for one cell. It currently contains servers for ${builtins.toString (builtins.attrNames cfg.cellServDB)}.
-+        config.services.openafsServer.cellServDB should normally only contain servers for one cell. It currently contains servers for ${toString (builtins.attrNames cfg.cellServDB)}.
-       ''
-       ++
-         lib.optional (useBuCellServDB && (builtins.attrNames cfg.backup.cellServDB) != [ cfg.cellName ])
-           ''
--            config.services.openafsServer.backup.cellServDB should normally only contain servers for one cell. It currently contains servers for ${builtins.toString (builtins.attrNames cfg.cellServDB)}.
-+            config.services.openafsServer.backup.cellServDB should normally only contain servers for one cell. It currently contains servers for ${toString (builtins.attrNames cfg.cellServDB)}.
-           '';
- 
-     assertions = [
-
  ## nixos/modules/services/networking/aria2.nix ##
 @@ nixos/modules/services/networking/aria2.nix: let
    portRangesToString =
@@ nixos/modules/services/networking/iodine.nix: in
            serviceConfig = {
              # Filesystem access
 
- ## nixos/modules/services/networking/meshtasticd.nix ##
-@@ nixos/modules/services/networking/meshtasticd.nix: in
-         AmbientCapabilities = [
-           "CAP_NET_BIND_SERVICE"
-         ];
--        ExecStart = "${lib.getExe cfg.package} --port=${builtins.toString cfg.port} --fsdir=${cfg.dataDir} --config=${configFile} --verbose";
-+        ExecStart = "${lib.getExe cfg.package} --port=${toString cfg.port} --fsdir=${cfg.dataDir} --config=${configFile} --verbose";
-         Restart = "always";
-         RestartSec = "3";
-       };
-
  ## nixos/modules/services/networking/nat-iptables.nix ##
 @@ nixos/modules/services/networking/nat-iptables.nix: let
        ${concatMapStrings (fwd: ''
@@ nixos/modules/services/networking/wireguard-networkd.nix: let
    privateKeyCredential = interfaceName: escapeCredentialName "wireguard-${interfaceName}-private-key";
    presharedKeyCredential =
 
+ ## nixos/modules/services/networking/yggdrasil.nix ##
+@@ nixos/modules/services/networking/yggdrasil.nix: in
+         script = ''
+           if [ ! -e ${keysPath} ]
+           then
+-            mkdir --mode=700 -p ${builtins.dirOf keysPath}
++            mkdir --mode=700 -p ${dirOf keysPath}
+             ${binYggdrasil} -genconf -json \
+               | ${pkgs.jq}/bin/jq \
+                   'to_entries|map(select(.key|endswith("Key")))|from_entries' \
+
  ## nixos/modules/services/printing/cups-pdf.nix ##
 @@ nixos/modules/services/printing/cups-pdf.nix: let
        };
@@ nixos/modules/services/security/sks.nix: in
        {
          sks-db = {
 
- ## nixos/modules/services/system/nix-daemon-firewall.nix ##
-@@ nixos/modules/services/system/nix-daemon-firewall.nix: in
- 
-           # TCP
-           ${lib.optionalString (cfg.allowedTCPPorts != [ ]) ''
--            tcp dport { ${lib.concatStringsSep ", " (map builtins.toString cfg.allowedTCPPorts)} } accept
-+            tcp dport { ${lib.concatStringsSep ", " (map toString cfg.allowedTCPPorts)} } accept
-             ip protocol tcp counter drop
-             ip6 nexthdr tcp counter drop
-           ''}
- 
-           # UDP
-           ${lib.optionalString (cfg.allowedUDPPorts != [ ]) ''
--            udp dport { ${lib.concatStringsSep ", " (map builtins.toString cfg.allowedUDPPorts)} } accept
-+            udp dport { ${lib.concatStringsSep ", " (map toString cfg.allowedUDPPorts)} } accept
-             ip protocol udp counter drop
-             ip6 nexthdr udp counter drop
-           ''}
-
  ## nixos/modules/services/web-apps/akkoma.nix ##
 @@ nixos/modules/services/web-apps/akkoma.nix: in
                      type = types.nonEmptyStr;
@@ nixos/modules/services/web-apps/artalk.nix: in
          RestartSec = "5s";
          ConfigurationDirectory = [ "artalk" ];
 
+ ## nixos/modules/services/web-apps/crabfit.nix ##
+@@ nixos/modules/services/web-apps/crabfit.nix: in
+         };
+ 
+         environment = {
+-          API_LISTEN = "127.0.0.1:${builtins.toString cfg.api.port}";
++          API_LISTEN = "127.0.0.1:${toString cfg.api.port}";
+           DATABASE_URL = "postgres:///crabfit?host=/run/postgresql";
+           FRONTEND_URL = "https://${cfg.frontend.host}";
+         }
+@@ nixos/modules/services/web-apps/crabfit.nix: in
+ 
+         environment = {
+           NEXT_PUBLIC_API_URL = "https://${cfg.api.host}";
+-          PORT = builtins.toString cfg.frontend.port;
++          PORT = toString cfg.frontend.port;
+         }
+         // cfg.frontend.environment;
+       };
+
  ## nixos/modules/services/web-apps/cryptpad.nix ##
 @@ nixos/modules/services/web-apps/cryptpad.nix: in
            RestrictSUIDSGID = true;
@@ nixos/modules/services/web-apps/komga.nix: in
        };
  
 
- ## nixos/modules/services/web-apps/librechat.nix ##
-@@ nixos/modules/services/web-apps/librechat.nix: in
-         Type = "simple";
-         User = cfg.user;
-         Group = cfg.group;
--        StateDirectory = builtins.baseNameOf cfg.dataDir;
-+        StateDirectory = baseNameOf cfg.dataDir;
-         WorkingDirectory = cfg.dataDir;
-         LoadCredential = getLoadCredentialList;
-         EnvironmentFile = cfg.credentialsFile;
-
  ## nixos/modules/services/web-apps/mastodon.nix ##
 @@ nixos/modules/services/web-apps/mastodon.nix: let
      name: processCfg:
@@ nixos/tests/galene.nix: in
              machine.wait_for_window("Test — Mozilla Firefox")
              machine.send_key("ctrl-minus")
 
- ## nixos/tests/gitlab/runner/podman-runner/nix-image.nix ##
-@@ nixos/tests/gitlab/runner/podman-runner/nix-image.nix: let
-         cat > $out <<EOF
-         [
-         ${lib.concatStringsSep "\n" (
--          builtins.map (
-+          map (
-             drv:
-             let
-               outputs = drv.outputsToInstall or [ "out" ];
-@@ nixos/tests/gitlab/runner/podman-runner/nix-image.nix: let
-             ''
-               {
-                 ${lib.concatStringsSep "\n" (
--                  builtins.map (output: ''
-+                  map (output: ''
-                     ${output} = { outPath = "${lib.getOutput output drv}"; };
-                   '') outputs
-                 )}
--                outputs = [ ${lib.concatStringsSep " " (builtins.map (x: "\"${x}\"") outputs)} ];
-+                outputs = [ ${lib.concatStringsSep " " (map (x: "\"${x}\"") outputs)} ];
-                 name = "${drv.name}";
-                 outPath = "${drv}";
-                 system = "${drv.system}";
-
  ## nixos/tests/glance.nix ##
 @@
        let
@@ nixos/tests/ncps.nix
            );
          };
 
- ## nixos/tests/networking/meshtasticd.nix ##
-@@ nixos/tests/networking/meshtasticd.nix: in
-   testScript = ''
-     with subtest("Test meshtasticd service"):
-       machine.wait_for_unit("meshtasticd.service")
--      machine.wait_for_open_port(${builtins.toString mainPort})
--      machine.wait_for_open_port(${builtins.toString webPort})
--      machine.succeed("curl -fvvv -Ls http://localhost:${builtins.toString webPort} | grep -q 'Meshtastic Web Client'")
-+      machine.wait_for_open_port(${toString mainPort})
-+      machine.wait_for_open_port(${toString webPort})
-+      machine.succeed("curl -fvvv -Ls http://localhost:${toString webPort} | grep -q 'Meshtastic Web Client'")
-   '';
- }
-
  ## nixos/tests/networking/networkd-and-scripted.nix ##
 @@ nixos/tests/networking/networkd-and-scripted.nix: let
          nodes.machine = {

Hint: The full diffs are also available in the runner logs with slightly better highlighting.

@nixpkgs-ci nixpkgs-ci Bot added 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: module (update) This PR changes an existing module in `nixos/` 6.topic: printing Drivers, CUPS & Co. 6.topic: vim Advanced text editor 6.topic: hardware Drivers, Firmware and Kernels 6.topic: nixos-container Imperative and declarative systemd-nspawn containers 6.topic: testing Tooling for automated testing of packages and modules 6.topic: systemd Software suite that provides an array of system components for Linux operating systems. 6.topic: k3s Kubernates distribution (https://k3s.io/) 4.workflow: backport This targets a stable branch labels Jan 16, 2026
@nixpkgs-ci nixpkgs-ci Bot added the 12.approvals: 1 This PR was reviewed and approved by one person. label Jan 16, 2026
@bjornfor bjornfor added this pull request to the merge queue Jan 17, 2026
Merged via the queue into NixOS:release-25.11 with commit ee95821 Jan 17, 2026
43 of 45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

4.workflow: backport This targets a stable branch 6.topic: hardware Drivers, Firmware and Kernels 6.topic: k3s Kubernates distribution (https://k3s.io/) 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: nixos-container Imperative and declarative systemd-nspawn containers 6.topic: printing Drivers, CUPS & Co. 6.topic: systemd Software suite that provides an array of system components for Linux operating systems. 6.topic: testing Tooling for automated testing of packages and modules 6.topic: vim Advanced text editor 8.has: module (update) This PR changes an existing module in `nixos/` 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 12.approvals: 1 This PR was reviewed and approved by one person.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants