From 49aeb650d7304a0b8b64b24748c5fa198f054251 Mon Sep 17 00:00:00 2001 From: usertam Date: Tue, 21 Jan 2025 17:21:12 +0800 Subject: [PATCH] proxychains-ng: default to dyld hooking method --- pkgs/by-name/pr/proxychains-ng/package.nix | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pr/proxychains-ng/package.nix b/pkgs/by-name/pr/proxychains-ng/package.nix index 96d5269f07f6..f6e666058e96 100644 --- a/pkgs/by-name/pr/proxychains-ng/package.nix +++ b/pkgs/by-name/pr/proxychains-ng/package.nix @@ -2,6 +2,9 @@ lib, stdenv, fetchFromGitHub, + fetchpatch, + # "dlsym" for OSX version < 12 + darwinHookMethod ? "dyld", }: stdenv.mkDerivation rec { @@ -18,6 +21,16 @@ stdenv.mkDerivation rec { patches = [ # https://github.com/NixOS/nixpkgs/issues/136093 ./swap-priority-4-and-5-in-get_config_path.patch + # The fix is not present in v4.17; remove the patch next version update. + # https://github.com/rofl0r/proxychains-ng/issues/557 + (fetchpatch { + url = "https://github.com/rofl0r/proxychains-ng/commit/fffd2532ad34bdf7bf430b128e4c68d1164833c6.patch"; + hash = "sha256-l3qSFUDMUfVDW1Iw+R2aW/wRz4CxvpR4eOwx9KzuAAo="; + }) + ]; + + configureFlags = lib.optionals stdenv.isDarwin [ + "--hookmethod=${darwinHookMethod}" ]; installFlags = [ @@ -29,7 +42,11 @@ stdenv.mkDerivation rec { description = "Preloader which hooks calls to sockets in dynamically linked programs and redirects it through one or more socks/http proxies"; homepage = "https://github.com/rofl0r/proxychains-ng"; license = licenses.gpl2Plus; - maintainers = with maintainers; [ zenithal ]; - platforms = platforms.linux ++ [ "aarch64-darwin" ]; + maintainers = with maintainers; [ + zenithal + usertam + ]; + platforms = platforms.unix; + mainProgram = "proxychains4"; }; }