diff options
author | Sandro <sandro.jaeckel@gmail.com> | 2024-02-20 14:12:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-20 14:12:55 +0100 |
commit | 878146da3f6b9e6000dffe29c783b834763b613d (patch) | |
tree | b4994f5890b88c87f1e6a2c2b61c8407444d639c /pkgs/tools | |
parent | d9bc710130ec53ac6518ef05f3f9ea09927c763f (diff) | |
parent | b9f53fd551f9404b6922602b4da9d3b063f6f376 (diff) | |
download | nixlib-878146da3f6b9e6000dffe29c783b834763b613d.tar nixlib-878146da3f6b9e6000dffe29c783b834763b613d.tar.gz nixlib-878146da3f6b9e6000dffe29c783b834763b613d.tar.bz2 nixlib-878146da3f6b9e6000dffe29c783b834763b613d.tar.lz nixlib-878146da3f6b9e6000dffe29c783b834763b613d.tar.xz nixlib-878146da3f6b9e6000dffe29c783b834763b613d.tar.zst nixlib-878146da3f6b9e6000dffe29c783b834763b613d.zip |
Merge pull request #288887 from lodi/namespaced-openvpn
Diffstat (limited to 'pkgs/tools')
-rw-r--r-- | pkgs/tools/networking/namespaced-openvpn/default.nix | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/pkgs/tools/networking/namespaced-openvpn/default.nix b/pkgs/tools/networking/namespaced-openvpn/default.nix new file mode 100644 index 000000000000..abcf006b7641 --- /dev/null +++ b/pkgs/tools/networking/namespaced-openvpn/default.nix @@ -0,0 +1,52 @@ +{ lib, + fetchFromGitHub, + buildPythonPackage, + openvpn, + iproute2, + iptables, + util-linux +}: + +buildPythonPackage rec { + pname = "namespaced-openvpn"; + version = "0.6.0"; + format = "other"; + + src = fetchFromGitHub { + owner = "slingamn"; + repo = pname; + rev = "a3fa42b2d8645272cbeb6856e26a7ea9547cb7d1"; + sha256 = "+Fdaw9EGyFGH9/DSeVJczS8gPzAOv+qn+1U20zQBBqQ="; + }; + + buildInputs = [ openvpn iproute2 util-linux ]; + + postPatch = '' + substituteInPlace namespaced-openvpn \ + --replace-fail "/usr/sbin/openvpn" "${openvpn}/bin/openvpn" \ + --replace-fail "/sbin/ip" "${iproute2}/bin/ip" \ + --replace-fail "/usr/bin/nsenter" "${util-linux}/bin/nsenter" \ + --replace-fail "/bin/mount" "${util-linux}/bin/mount" \ + --replace-fail "/bin/umount" "${util-linux}/bin/umount" + + substituteInPlace seal-unseal-gateway \ + --replace-fail "/sbin/iptables" "${iptables}/bin/iptables" + ''; + + dontBuild = true; + doCheck = false; + + installPhase = '' + mkdir -p $out/bin + cp namespaced-openvpn seal-unseal-gateway $out/bin + ''; + + meta = with lib; { + homepage = "https://github.com/slingamn/namespaced-openvpn"; + description = "Network namespace isolation for OpenVPN tunnels."; + license = licenses.mit; + maintainers = [ maintainers.lodi ]; + platforms = platforms.linux; + mainProgram = "namespaced-openvpn"; + }; +} |