nixos/programs/fish: set absolute path in babelfishTranslate

Babelfish translates `source script.sh` to `argv0 < script.sh | source`,
which is impure, and breaks when babelfish isn't in `systemPackages`.

To fix this, exec babelfish with argv0 set to babelfish from the final
system.
This commit is contained in:
Gaute Ravndal
2026-01-10 10:31:35 +01:00
parent a3b3677857
commit 40c21b15cd
+1 -1
View File
@@ -48,7 +48,7 @@ let
path: name:
pkgs.runCommandLocal "${name}.fish" {
nativeBuildInputs = [ pkgs.babelfish ];
} "babelfish < ${path} > $out;";
} "exec -a ${lib.getExe pkgs.babelfish} babelfish < ${path} > $out;";
in
{
options = {