summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/security/sudo/default.nix8
1 files changed, 5 insertions, 3 deletions
diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix
index 6d82744e1f9f..6ed94da10ba0 100644
--- a/pkgs/tools/security/sudo/default.nix
+++ b/pkgs/tools/security/sudo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, coreutils, pam, groff }:
+{ stdenv, fetchurl, coreutils, pam, groff, keepVisudo ? false }:
 
 stdenv.mkDerivation rec {
   name = "sudo-1.8.9p4";
@@ -32,8 +32,10 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   postInstall = ''
-    # ‘visudo’ does not make sense on NixOS.
-    rm $out/sbin/visudo $out/share/man/man8/visudo.8
+    # ‘visudo’ does not make sense on NixOS - except for checking sudoers
+    # file syntax
+    rm ${if keepVisudo then "" else "$out/sbin/visudo"} \
+        $out/share/man/man8/visudo.8
 
     rm $out/share/doc/sudo/ChangeLog
   '';