summary refs log tree commit diff
path: root/pkgs/tools/security/tor/torsocks.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/security/tor/torsocks.nix')
-rw-r--r--pkgs/tools/security/tor/torsocks.nix23
1 files changed, 13 insertions, 10 deletions
diff --git a/pkgs/tools/security/tor/torsocks.nix b/pkgs/tools/security/tor/torsocks.nix
index ee4749683a52..466dc4b4e46c 100644
--- a/pkgs/tools/security/tor/torsocks.nix
+++ b/pkgs/tools/security/tor/torsocks.nix
@@ -1,25 +1,28 @@
-{ stdenv, fetchgit, autoreconfHook, which }:
+{ stdenv, fetchgit, autoreconfHook, libcap }:
 
 stdenv.mkDerivation rec {
   name = "torsocks-${version}";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchgit {
     url    = meta.repositories.git;
     rev    = "refs/tags/v${version}";
-    sha256 = "1l890pg0h2hqpkabsnwc6pq2qi8mfv58qzaaicc9y62rq5nmrrws";
+    sha256 = "1xwkmfaxhhnbmvp37agnby1n53hznwhvx0dg1hj35467qfx985zc";
   };
 
-  buildInputs = [ autoreconfHook ];
-  preConfigure = ''
-      export configureFlags="$configureFlags --libdir=$out/lib"
-  '';
+  nativeBuildInputs = [ autoreconfHook ];
 
-  patchPhase = ''
-    substituteInPlace src/bin/torsocks.in \
-      --replace which ${which}/bin/which
+  postPatch = ''
+    # Patch torify_app()
+    sed -i \
+      -e 's,\(local app_path\)=`which $1`,\1=`type -P $1`,' \
+      -e 's,\(local getcap\)=.*,\1=${libcap}/bin/getcap,' \
+      src/bin/torsocks.in
   '';
 
+  doInstallCheck = true;
+  installCheckTarget = "check-recursive";
+
   meta = {
     description      = "Wrapper to safely torify applications";
     homepage         = http://code.google.com/p/torsocks/;