static-nix-shell.mkYsh: init

This commit is contained in:
2025-03-22 09:05:38 +00:00
parent c9699b7bc4
commit 3d3bd5e5b2

View File

@@ -3,6 +3,7 @@
bash,
lib,
makeBinaryWrapper,
oils-for-unix,
python3,
stdenv,
zsh,
@@ -148,6 +149,18 @@ in rec {
} // (removeAttrs attrs [ "bash" "pkgs" ])
);
# `mkShell` specialization for `nix-shell -i ysh` (oil) scripts.
mkYsh = { pkgs ? {}, ...}@attrs:
let
pkgsAsAttrs = pkgsToAttrs "" pkgs' pkgs;
pkgsEnv = [ oils-for-unix ] ++ (builtins.attrValues pkgsAsAttrs);
pkgExprs = insertTopo "oils-for-unix" (builtins.attrNames pkgsAsAttrs);
in mkShell ({
inherit pkgsEnv pkgExprs;
interpreter = lib.getExe' oils-for-unix "ysh";
} // (removeAttrs attrs [ "oils-for-unix" "pkgs" ])
);
# `mkShell` specialization for `nix-shell -i zsh` scripts.
mkZsh = { pkgs ? {}, ...}@attrs:
let