diff --git a/pkgs/tools/virtualization/nixos-container/nixos-container.pl b/pkgs/tools/virtualization/nixos-container/nixos-container.pl index df4c8fee21b4a0..8b57a7b0e6830e 100755 --- a/pkgs/tools/virtualization/nixos-container/nixos-container.pl +++ b/pkgs/tools/virtualization/nixos-container/nixos-container.pl @@ -9,6 +9,7 @@ use Cwd 'abs_path'; use Time::HiRes; +my $nsenter = "@utillinux@/bin/nsenter"; my $su = "@su@"; # Ensure a consistent umask. @@ -319,10 +320,9 @@ sub restartContainer { # Run a command in the container. sub runInContainer { my @args = @_; - - exec("systemd-run", "--machine", $containerName, "--pty", "--quiet", "--", @args); - - die "cannot run ‘systemd-run’: $!\n"; + my $leader = getLeader; + exec($nsenter, "-t", $leader, "-m", "-u", "-i", "-n", "-p", "--", @args); + die "cannot run ‘nsenter’: $!\n"; } # Remove a directory while recursively unmounting all mounted filesystems within