From a71e80db8b9a99d59ad13f2dbce477e3276a2ee1 Mon Sep 17 00:00:00 2001 From: Ingo Blechschmidt Date: Sat, 28 Oct 2017 16:22:07 +0200 Subject: [PATCH 1/2] nat-traverse: init at 0.7 --- .../tools/networking/nat-traverse/default.nix | 38 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/tools/networking/nat-traverse/default.nix diff --git a/pkgs/tools/networking/nat-traverse/default.nix b/pkgs/tools/networking/nat-traverse/default.nix new file mode 100644 index 000000000000..0972e7677582 --- /dev/null +++ b/pkgs/tools/networking/nat-traverse/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchurl, perl, makeWrapper }: + +stdenv.mkDerivation rec { + name = "nat-traverse-${version}"; + version = "0.7"; + + src = fetchurl { + url = "https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-${version}.tar.bz2"; + sha256 = "0knwnqsjwv7sa5wjb863ghabs7s269a73qwkmxpsbngjw9s0j2ih"; + }; + + buildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out/bin $out/share/man/man1 + cp nat-traverse $out/bin + gzip -c nat-traverse.1 > $out/share/man/man1/nat-traverse.1.gz + wrapProgram $out/bin/nat-traverse --prefix PATH : "${stdenv.lib.makeBinPath [ perl ]}" + ''; + + meta = with stdenv.lib; { + description = "NAT gateway traversal utility"; + longDescription = '' + nat-traverse establishes direct connections between nodes which are + behind NAT gateways, i.e. hosts which do not have public IP addresses. + This is done using an UDP NAT traversal technique. Additionally, it's + possible to setup a small VPN by using pppd on top of nat-traverse. + + nat-traverse does not need an external server on the Internet, and it + isn't necessary to reconfigure the involved NAT gateways, either. + nat-traverse works out-of-the-box. + ''; + homepage = https://www.speicherleck.de/iblech/nat-traverse/; + license = stdenv.lib.licenses.gpl3Plus; + platforms = stdenv.lib.platforms.all; + maintainers = [ maintainers.iblech ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8b219f6be7c7..d49e89f25a9f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3458,6 +3458,8 @@ with pkgs; nasty = callPackage ../tools/security/nasty { }; + nat-traverse = callPackage ../tools/networking/nat-traverse { }; + nawk = callPackage ../tools/text/nawk { }; nbd = callPackage ../tools/networking/nbd { }; From 080092ffa73edebd0e78c3a8130ac1436ef2149a Mon Sep 17 00:00:00 2001 From: Orivej Desh Date: Sun, 5 Nov 2017 18:10:48 +0000 Subject: [PATCH 2/2] nat-traverse: do not wrap with perl path --- pkgs/tools/networking/nat-traverse/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/networking/nat-traverse/default.nix b/pkgs/tools/networking/nat-traverse/default.nix index 0972e7677582..a352596eed05 100644 --- a/pkgs/tools/networking/nat-traverse/default.nix +++ b/pkgs/tools/networking/nat-traverse/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, perl, makeWrapper }: +{ stdenv, fetchurl, perl }: stdenv.mkDerivation rec { name = "nat-traverse-${version}"; @@ -9,13 +9,12 @@ stdenv.mkDerivation rec { sha256 = "0knwnqsjwv7sa5wjb863ghabs7s269a73qwkmxpsbngjw9s0j2ih"; }; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ perl ]; installPhase = '' mkdir -p $out/bin $out/share/man/man1 cp nat-traverse $out/bin gzip -c nat-traverse.1 > $out/share/man/man1/nat-traverse.1.gz - wrapProgram $out/bin/nat-traverse --prefix PATH : "${stdenv.lib.makeBinPath [ perl ]}" ''; meta = with stdenv.lib; { @@ -31,8 +30,8 @@ stdenv.mkDerivation rec { nat-traverse works out-of-the-box. ''; homepage = https://www.speicherleck.de/iblech/nat-traverse/; - license = stdenv.lib.licenses.gpl3Plus; - platforms = stdenv.lib.platforms.all; + license = licenses.gpl3Plus; + platforms = platforms.all; maintainers = [ maintainers.iblech ]; }; }