From 22d2fc3657d269874df3229564ca7eee499aab92 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 27 Feb 2015 14:32:22 +0100 Subject: [PATCH] Fix "systemctl reload container@" Fixes #5179. --- nixos/modules/virtualisation/containers.nix | 1 + nixos/modules/virtualisation/nixos-container.pl | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix index c461cf8c00c..ea6bc641dad 100644 --- a/nixos/modules/virtualisation/containers.nix +++ b/nixos/modules/virtualisation/containers.nix @@ -10,6 +10,7 @@ let isExecutable = true; src = ./nixos-container.pl; perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl"; + su = "${pkgs.shadow.su}/bin/su"; inherit (pkgs) utillinux; }; diff --git a/nixos/modules/virtualisation/nixos-container.pl b/nixos/modules/virtualisation/nixos-container.pl index 94edfb37948..1455f7143f1 100644 --- a/nixos/modules/virtualisation/nixos-container.pl +++ b/nixos/modules/virtualisation/nixos-container.pl @@ -8,6 +8,7 @@ use Fcntl ':flock'; use Getopt::Long qw(:config gnu_getopt); my $nsenter = "@utillinux@/bin/nsenter"; +my $su = "@su@"; # Ensure a consistent umask. umask 0022; @@ -271,14 +272,14 @@ elsif ($action eq "login") { } elsif ($action eq "root-login") { - runInContainer("su", "root", "-l"); + runInContainer("@su@", "root", "-l"); } elsif ($action eq "run") { shift @ARGV; shift @ARGV; # Escape command. my $s = join(' ', map { s/'/'\\''/g; "'$_'" } @ARGV); - runInContainer("su", "root", "-l", "-c", "exec " . $s); + runInContainer("@su@", "root", "-l", "-c", "exec " . $s); } elsif ($action eq "show-ip") {