about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/minimal-bootstrap
diff options
context:
space:
mode:
authorEmily Trau <emily@downunderctf.com>2023-05-12 01:05:30 +1000
committerEmily Trau <emily@downunderctf.com>2023-05-12 01:43:40 +1000
commitaa0a36bcd80f78e468d084ecdb90cf61331ececd (patch)
tree422ee324c7e97cdaefa1cb9ea9e04bc87508dff4 /pkgs/os-specific/linux/minimal-bootstrap
parent35dabd5b5e02da78bb0b652639f071cc1cd897d3 (diff)
downloadnixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.tar
nixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.tar.gz
nixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.tar.bz2
nixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.tar.lz
nixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.tar.xz
nixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.tar.zst
nixlib-aa0a36bcd80f78e468d084ecdb90cf61331ececd.zip
minimal-bootstrap.kaem: move runCommand into kaem
Diffstat (limited to 'pkgs/os-specific/linux/minimal-bootstrap')
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/default.nix2
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix4
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/gnupatch/default.nix4
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/ln-boot/default.nix4
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/mes/default.nix4
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/mes/libc.nix5
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/mes/nyacc.nix4
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/kaem/default.nix18
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/tinycc/bootstrappable.nix6
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/tinycc/common.nix4
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/tinycc/mes.nix6
-rw-r--r--pkgs/os-specific/linux/minimal-bootstrap/utils.nix16
12 files changed, 40 insertions, 37 deletions
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/default.nix
index 97c9a26b53fb..9c897aa1558a 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/default.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/default.nix
@@ -25,6 +25,6 @@ lib.makeScope
     tinycc-bootstrappable = callPackage ./tinycc/bootstrappable.nix { };
     tinycc-mes = callPackage ./tinycc/mes.nix { };
 
-    inherit (callPackage ./utils.nix { }) fetchurl derivationWithMeta writeTextFile writeText runCommand;
+    inherit (callPackage ./utils.nix { }) fetchurl derivationWithMeta writeTextFile writeText;
 
   })
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix
index 0db52e287425..c843b4434f04 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/gnumake/default.nix
@@ -1,6 +1,6 @@
 { lib
-, runCommand
 , fetchurl
+, kaem
 , tinycc
 , gnupatch
 }:
@@ -145,7 +145,7 @@ let
 
   objects = map (x: lib.replaceStrings [".c"] [".o"] (builtins.baseNameOf x)) sources;
 in
-runCommand "${pname}-${version}" {
+kaem.runCommand "${pname}-${version}" {
   inherit pname version;
 
   nativeBuildInputs = [ tinycc gnupatch ];
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/default.nix
index 2a44f3805d42..449f7b3172e8 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/default.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/gnupatch/default.nix
@@ -1,6 +1,6 @@
 { lib
-, runCommand
 , fetchurl
+, kaem
 , tinycc
 }:
 let
@@ -67,7 +67,7 @@ let
 
   objects = map (x: lib.replaceStrings [".c"] [".o"] (builtins.baseNameOf x)) sources;
 in
-runCommand "${pname}-${version}" {
+kaem.runCommand "${pname}-${version}" {
   inherit pname version;
 
   nativeBuildInputs = [ tinycc ];
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/ln-boot/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/ln-boot/default.nix
index 23c634421cbe..3ccc3042fd76 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/ln-boot/default.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/ln-boot/default.nix
@@ -1,5 +1,5 @@
 { lib
-, runCommand
+, kaem
 , mes
 }:
 let
@@ -8,7 +8,7 @@ let
 
   src = ./ln.c;
 in
-runCommand "${pname}-${version}" {
+kaem.runCommand "${pname}-${version}" {
   inherit pname version;
 
   meta = with lib; {
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/mes/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/mes/default.nix
index abf3955eb2d9..23257ca44282 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/mes/default.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/mes/default.nix
@@ -1,8 +1,8 @@
 { lib
-, runCommand
 , fetchurl
 , writeText
 , callPackage
+, kaem
 , m2libc
 , mescc-tools
 }:
@@ -43,7 +43,7 @@ let
   sourceArchive = out: sources:
     "catm ${out} ${lib.concatMapStringsSep " " (replaceExt ".s") sources}";
 in
-runCommand "${pname}-${version}" {
+kaem.runCommand "${pname}-${version}" {
   inherit pname version;
 
   passthru = { inherit src nyacc; };
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/mes/libc.nix b/pkgs/os-specific/linux/minimal-bootstrap/mes/libc.nix
index 06cd95de87e9..d036cb10125d 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/mes/libc.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/mes/libc.nix
@@ -1,5 +1,5 @@
 { lib
-, runCommand
+, kaem
 , ln-boot
 , mes
 , mes-libc
@@ -21,7 +21,8 @@ let
   # the operation in two
   firstLibc = lib.take 100 libc_gnu_SOURCES;
   lastLibc = lib.drop 100 libc_gnu_SOURCES;
-in runCommand "${pname}-${version}" {
+in
+kaem.runCommand "${pname}-${version}" {
   inherit pname version;
 
   nativeBuildInputs = [ ln-boot ];
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/mes/nyacc.nix b/pkgs/os-specific/linux/minimal-bootstrap/mes/nyacc.nix
index 7a196fd5ef99..220b9b667302 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/mes/nyacc.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/mes/nyacc.nix
@@ -1,6 +1,6 @@
 { lib
-, runCommand
 , fetchurl
+, kaem
 , nyacc
 }:
 let
@@ -15,7 +15,7 @@ let
     sha256 = "065ksalfllbdrzl12dz9d9dcxrv97wqxblslngsc6kajvnvlyvpk";
   };
 in
-runCommand "${pname}-${version}" {
+kaem.runCommand "${pname}-${version}" {
   inherit pname version;
 
   passthru.guilePath = "${nyacc}/share/${pname}-${version}/module";
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/kaem/default.nix b/pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/kaem/default.nix
index 2af660ad7a44..969dd35845ef 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/kaem/default.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/kaem/default.nix
@@ -1,6 +1,9 @@
 { lib
 , derivationWithMeta
+, writeText
+, kaem
 , kaem-unwrapped
+, mescc-tools
 , mescc-tools-extra
 , version
 }:
@@ -23,6 +26,21 @@ derivationWithMeta {
   ];
   PATH = lib.makeBinPath [ mescc-tools-extra ];
 
+  passthru.runCommand = name: env: buildCommand:
+    derivationWithMeta ({
+      inherit name;
+
+      builder = "${kaem}/bin/kaem";
+      args = [
+        "--verbose"
+        "--strict"
+        "--file"
+        (writeText "${name}-builder" buildCommand)
+      ];
+
+      PATH = lib.makeBinPath ((env.nativeBuildInputs or []) ++ [ kaem mescc-tools mescc-tools-extra ]);
+    } // (builtins.removeAttrs env [ "nativeBuildInputs" ]));
+
   meta = with lib; {
     description = "Minimal build tool for running scripts on systems that lack any shell";
     homepage = "https://github.com/oriansj/mescc-tools";
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/tinycc/bootstrappable.nix b/pkgs/os-specific/linux/minimal-bootstrap/tinycc/bootstrappable.nix
index bb0e058906cb..01207c707e96 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/tinycc/bootstrappable.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/tinycc/bootstrappable.nix
@@ -8,9 +8,9 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 
 { lib
-, runCommand
 , callPackage
 , fetchurl
+, kaem
 , mes
 , mes-libc
 }:
@@ -24,7 +24,7 @@ let
     url = "https://gitlab.com/janneke/tinycc/-/archive/${rev}/tinycc-${rev}.tar.gz";
     sha256 = "1a0cw9a62qc76qqn5sjmp3xrbbvsz2dxrw21lrnx9q0s74mwaxbq";
   };
-  src = (runCommand "tinycc-bootstrappable-${version}-source" {} ''
+  src = (kaem.runCommand "tinycc-bootstrappable-${version}-source" {} ''
     ungz --file ${tarball} --output tinycc.tar
     mkdir -p ''${out}
     cd ''${out}
@@ -39,7 +39,7 @@ let
     platforms = [ "i686-linux" ];
   };
 
-  tinycc-boot-mes = runCommand "tinycc-boot-mes-${version}" {} ''
+  tinycc-boot-mes = kaem.runCommand "tinycc-boot-mes-${version}" {} ''
     catm config.h
     ${mes}/bin/mes --no-auto-compile -e main ${mes}/bin/mescc.scm -- \
       -S \
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/tinycc/common.nix b/pkgs/os-specific/linux/minimal-bootstrap/tinycc/common.nix
index 84f4bcc0ed5a..7cb3feb19c04 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/tinycc/common.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/tinycc/common.nix
@@ -1,5 +1,5 @@
 { lib
-, runCommand
+, kaem
 , mes-libc
 , ln-boot
 }:
@@ -17,7 +17,7 @@
       options = lib.strings.concatStringsSep " " buildOptions;
       libtccOptions = lib.strings.concatStringsSep " " libtccBuildOptions;
     in
-    runCommand "${pname}-${version}" {
+    kaem.runCommand "${pname}-${version}" {
       inherit pname version meta;
       nativeBuildInputs = [ ln-boot ];
     } ''
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/tinycc/mes.nix b/pkgs/os-specific/linux/minimal-bootstrap/tinycc/mes.nix
index 81674893eada..6d0a529b1004 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/tinycc/mes.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/tinycc/mes.nix
@@ -5,9 +5,9 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 
 { lib
-, runCommand
 , fetchurl
 , callPackage
+, kaem
 , tinycc-bootstrappable
 }:
 let
@@ -20,7 +20,7 @@ let
     url = "https://repo.or.cz/tinycc.git/snapshot/${rev}.tar.gz";
     sha256 = "11idrvbwfgj1d03crv994mpbbbyg63j1k64lw1gjy7mkiifw2xap";
   };
-  src = (runCommand "tinycc-${version}-source" {} ''
+  src = (kaem.runCommand "tinycc-${version}-source" {} ''
     ungz --file ${tarball} --output tinycc.tar
     mkdir -p ''${out}
     cd ''${out}
@@ -35,7 +35,7 @@ let
     platforms = [ "i686-linux" ];
   };
 
-  tccdefs = runCommand "tccdefs-${version}" {} ''
+  tccdefs = kaem.runCommand "tccdefs-${version}" {} ''
     mkdir ''${out}
     ${tinycc-bootstrappable}/bin/tcc -static -DC2STR -o c2str ${src}/conftest.c
     ./c2str ${src}/include/tccdefs.h ''${out}/tccdefs_.h
diff --git a/pkgs/os-specific/linux/minimal-bootstrap/utils.nix b/pkgs/os-specific/linux/minimal-bootstrap/utils.nix
index 1cc56654d7b0..93d8f7255524 100644
--- a/pkgs/os-specific/linux/minimal-bootstrap/utils.nix
+++ b/pkgs/os-specific/linux/minimal-bootstrap/utils.nix
@@ -2,7 +2,6 @@
 , buildPlatform
 , callPackage
 , kaem
-, mescc-tools
 , mescc-tools-extra
 }:
 
@@ -65,19 +64,4 @@ rec {
 
   writeText = name: text: writeTextFile {inherit name text;};
 
-  runCommand = name: env: buildCommand:
-    derivationWithMeta ({
-      inherit name;
-
-      builder = "${kaem}/bin/kaem";
-      args = [
-        "--verbose"
-        "--strict"
-        "--file"
-        (writeText "${name}-builder" buildCommand)
-      ];
-
-      PATH = lib.makeBinPath ((env.nativeBuildInputs or []) ++ [ kaem mescc-tools mescc-tools-extra ]);
-    } // (builtins.removeAttrs env [ "nativeBuildInputs" ]));
-
 }