about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/minimal-bootstrap
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2023-05-14 13:32:53 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2023-05-14 18:56:01 -0400
commit6dfead1d52f7347fab6cac621e5dd45a67ca56a3 (patch)
tree9423470f3fff7dbb5e8d7c5b1c1325059ba62031 /pkgs/os-specific/linux/minimal-bootstrap
parent0c7631d319ef137503ddbf1899890c64364f870e (diff)
downloadnixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.tar
nixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.tar.gz
nixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.tar.bz2
nixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.tar.lz
nixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.tar.xz
nixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.tar.zst
nixlib-6dfead1d52f7347fab6cac621e5dd45a67ca56a3.zip
minimal-bootstrap.derivationWithMeta: Do more conds at eval time
Nice to keep run time as simple as possible / embrace phase separations.
Diffstat (limited to 'pkgs/os-specific/linux/minimal-bootstrap')
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/utils.nix18
1 files changed, 8 insertions, 10 deletions
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/utils.nix b/pkgs/os-specific/linux/minimal-bootstrap/utils.nix
index ec4bd72b779e..e710c34aa6ae 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/utils.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/utils.nix
@@ -40,7 +40,7 @@ rec {
     , preferLocalBuild ? true
     }:
     derivationWithMeta {
-      inherit name text executable allowSubstitutes preferLocalBuild;
+      inherit name text allowSubstitutes preferLocalBuild;
       passAsFile = [ "text" ];
 
       builder = "${kaem}/bin/kaem";
@@ -48,20 +48,18 @@ rec {
         "--verbose"
         "--strict"
         "--file"
-        (builtins.toFile "write-text-file.kaem" ''
+        (builtins.toFile "write-text-file.kaem" (''
           target=''${out}''${destination}
-          if match x''${mkdirDestination} x1; then
-            mkdir -p ''${out}''${destinationDir}
-          fi
+        '' + lib.optionalString (builtins.dirOf destination == ".") ''
+          mkdir -p ''${out}''${destinationDir}
+        '' + ''
           cp ''${textPath} ''${target}
-          if match x''${executable} x1; then
-            chmod 555 ''${target}
-          fi
-        '')
+        '' + lib.optionalString executable ''
+          chmod 555 ''${target}
+        ''))
       ];
 
       PATH = lib.makeBinPath [ mescc-tools-extra ];
-      mkdirDestination = if builtins.dirOf destination == "." then "0" else "1";
       destinationDir = builtins.dirOf destination;
       inherit destination;
     };