9 stdenv.mkDerivation rec {
13 src = fetchFromGitLab {
14 domain = "gitlab.torproject.org";
19 sha256 = "sha256-ocJkoF9LMLC84ukFrm5pzjp/1gaXqDz8lzr9TdG+f88=";
23 # fix compatibility with C99
24 # https://gitlab.torproject.org/tpo/core/torsocks/-/merge_requests/9
26 url = "https://gitlab.torproject.org/tpo/core/torsocks/-/commit/1171bf2fd4e7a0cab02cf5fca59090b65af9cd29.patch";
27 hash = "sha256-qu5/0fy72+02QI0cVE/6YrR1kPuJxsZfG8XeODqVOPY=";
29 # tsocks_libc_accept4 only exists on Linux, use tsocks_libc_accept on other platforms
31 url = "https://gitlab.torproject.org/tpo/core/torsocks/uploads/eeec9833512850306a42a0890d283d77/0001-Fix-macros-for-accept4-2.patch";
32 hash = "sha256-XWi8+UFB8XgBFSl5QDJ+hLu/dH4CvAwYbeZz7KB10Bs=";
34 # no gethostbyaddr_r on darwin
35 ./torsocks-gethostbyaddr-darwin.patch
41 -e 's,\(local app_path\)=`which $1`,\1=`type -P $1`,' \
43 '' + lib.optionalString stdenv.hostPlatform.isLinux ''
45 -e 's,\(local getcap\)=.*,\1=${libcap}/bin/getcap,' \
49 nativeBuildInputs = [ autoreconfHook ];
51 doInstallCheck = true;
52 installCheckTarget = "check-recursive";
55 description = "Wrapper to safely torify applications";
56 mainProgram = "torsocks";
57 homepage = "https://gitlab.torproject.org/tpo/core/torsocks";
58 license = lib.licenses.gpl2Plus;
59 platforms = lib.platforms.unix;
60 maintainers = with lib.maintainers; [ thoughtpolice ];