Files
nixpkgs/nixos/tests/envfs.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

41 lines
1009 B
Nix

{ lib, pkgs, ... }:
let
pythonShebang = pkgs.writeScript "python-shebang" ''
#!/usr/bin/python
print("OK")
'';
bashShebang = pkgs.writeScript "bash-shebang" ''
#!/usr/bin/bash
echo "OK"
'';
in
{
name = "envfs";
nodes.machine.services.envfs.enable = true;
testScript = ''
start_all()
machine.wait_until_succeeds("mountpoint -q /usr/bin/")
machine.succeed(
"PATH=${pkgs.coreutils}/bin /usr/bin/cp --version",
# check fallback paths
"PATH= /usr/bin/sh --version",
"PATH= /usr/bin/env --version",
"PATH= test -e /usr/bin/sh",
"PATH= test -e /usr/bin/env",
# also picks up PATH that was set after execve
"! /usr/bin/hello",
"PATH=${pkgs.hello}/bin /usr/bin/hello",
)
out = machine.succeed("PATH=${pkgs.python3}/bin ${pythonShebang}")
print(out)
assert out == "OK\n"
out = machine.succeed("PATH=${pkgs.bash}/bin ${bashShebang}")
print(out)
assert out == "OK\n"
'';
}