Compare commits

..

2 commits

Author SHA1 Message Date
atagen
cdca8dd72a switch to homegrown pinning
All checks were successful
Nix Build / nix build (push) Successful in 12s
2026-05-20 14:42:24 +10:00
atagen
39acafd067 nu
All checks were successful
Nix Build / nix build (push) Successful in 8s
2026-05-19 23:59:38 +10:00
2 changed files with 4 additions and 16 deletions

16
meat.nu
View file

@ -43,19 +43,7 @@ def nix-conf-attr []: nothing -> string {
}
def nix-build-nom [out: string, source: string, attr: string, extras: list<string> = []] {
if ($env.MONITOR? | is-empty) {
^nix-build --out-link $out $source -A $attr ...$extras
} else {
^nix-build --log-format internal-json -v --out-link $out $source -A $attr ...$extras out+err>| ^$env.MONITOR --json
}
}
def differ-step [build: string] {
if ($env.DIFFER? | is-empty) {
meat-print " (no DIFFER set; skipping diff)"
} else {
^$env.DIFFER /nix/var/nix/profiles/system $build
}
^nix-build --log-format internal-json -v --out-link $out $source -A $attr ...$extras out+err>| ^$env.MONITOR --json
}
def activate [build_path: string] {
@ -66,7 +54,7 @@ def do-build [extras: list<string> = []] {
let tmpdir = ^mktemp -d -t "meat-build.XXXXXX" | str trim
let build = $"($tmpdir)/build"
nix-build-nom $build $"($env.MEATS)/entry.nix" (system-attr) $extras
differ-step $build
^$env.DIFFER /nix/var/nix/profiles/system $build
activate $build
try { rm $build }
}

View file

@ -25,8 +25,8 @@ stdenvNoCC.mkDerivation {
mkdir -p $out/bin
makeBinaryWrapper ${nushell}/bin/nu $out/bin/meat \
--add-flags "$out/share/meat/meat.nu" \
--set DIFFER ${lib.getExe differ} \
--set MONITOR ${lib.getExe monitor}
--set DIFFER ${lib.makeBinPath [ differ ]} \
--set MONITOR ${lib.makeBinPath [ monitor ]}
runHook postInstall
'';
}