summary refs log tree commit diff
path: root/pkgs/os-specific/linux/libcap
diff options
context:
space:
mode:
authorj-keck <jhyphenkeck@gmail.com>2015-02-03 11:11:17 +0100
committerj-keck <jhyphenkeck@gmail.com>2015-02-03 11:11:17 +0100
commit73ec7f243f42185c1a6efb526c0c9d3d3732d6c4 (patch)
treefed50e41af1156d5b731f069bdacd6b60501cee3 /pkgs/os-specific/linux/libcap
parent236f7fd20dc1b0c05d94f43c4ef749928e1bee4a (diff)
downloadnixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.tar
nixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.tar.gz
nixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.tar.bz2
nixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.tar.lz
nixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.tar.xz
nixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.tar.zst
nixpkgs-73ec7f243f42185c1a6efb526c0c9d3d3732d6c4.zip
libcap_progs: fix bash path
  * in progs/capsh.c is the bash path hardcoded to '/bin/bash'.
  * this fix removes the absolute path und use 'execvpe' to call 'bash'.
Diffstat (limited to 'pkgs/os-specific/linux/libcap')
-rw-r--r--pkgs/os-specific/linux/libcap/progs.nix7
1 files changed, 5 insertions, 2 deletions
diff --git a/pkgs/os-specific/linux/libcap/progs.nix b/pkgs/os-specific/linux/libcap/progs.nix
index 9b2a8b69c3c..ae4446c82e6 100644
--- a/pkgs/os-specific/linux/libcap/progs.nix
+++ b/pkgs/os-specific/linux/libcap/progs.nix
@@ -10,8 +10,11 @@ stdenv.mkDerivation rec {
   buildInputs = [ libcap ];
 
   prePatch = ''
-    BASH=$(type -tp bash)
-    substituteInPlace progs/capsh.c --replace "/bin/bash" "$BASH"
+    # use relative bash path
+    substituteInPlace progs/capsh.c --replace "/bin/bash" "bash"
+
+    # ensure capsh can find bash in $PATH
+    substituteInPlace progs/capsh.c --replace execve execvpe
   '';
 
   preConfigure = "cd progs";