diff options
author | Emily Trau <emily@downunderctf.com> | 2023-05-12 01:05:30 +1000 |
---|---|---|
committer | Emily Trau <emily@downunderctf.com> | 2023-05-12 01:43:40 +1000 |
commit | aa0a36bcd80f78e468d084ecdb90cf61331ececd (patch) | |
tree | 422ee324c7e97cdaefa1cb9ea9e04bc87508dff4 /pkgs/os-specific/linux/minimal-bootstrap | |
parent | 35dabd5b5e02da78bb0b652639f071cc1cd897d3 (diff) | |
download | nixlib-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')
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" ])); - } |