From 73c38365527a611c2b9be8cc306f3661c23517af Mon Sep 17 00:00:00 2001 From: Jacek Galowicz Date: Thu, 16 Apr 2026 11:44:14 +0100 Subject: [PATCH] nixos-test-driver: don't prepare sandbox environemnt outside of sandbox --- nixos/lib/test-driver/src/test_driver/driver.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/nixos/lib/test-driver/src/test_driver/driver.py b/nixos/lib/test-driver/src/test_driver/driver.py index 50b6fdb2170d..f87728f55a95 100644 --- a/nixos/lib/test-driver/src/test_driver/driver.py +++ b/nixos/lib/test-driver/src/test_driver/driver.py @@ -64,6 +64,14 @@ def pythonize_name(name: str) -> str: return re.sub(r"^[^A-Za-z_]|[^A-Za-z0-9_]", "_", name) +def in_nix_sandbox() -> bool: + # There seems to be no better method at the time + typical_nix_env_vars = "NIX_BUILD_TOP" in os.environ + nix_shell_marker = "IN_NIX_SHELL" in os.environ + + return typical_nix_env_vars and not nix_shell_marker + + @dataclass class VsockPair: guest: Path @@ -191,7 +199,7 @@ class Driver: for name, vm_start_script in self.vm_start_scripts.items() ] - if len(self.container_start_scripts) > 0: + if len(self.container_start_scripts) > 0 and in_nix_sandbox(): self._init_nspawn_environment() self.machines_nspawn = [