summary refs log tree commit diff
path: root/pkgs/tools/networking/hans
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>2015-04-16 06:07:58 +0200
committerTobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>2015-04-16 06:11:16 +0200
commit2bc813dc5c19fde9a1842293994e2275cec7d6ff (patch)
treefbeb35e084639a32e9ee6d9f88147253b3392c35 /pkgs/tools/networking/hans
parent459133ce720e7c162f29d86499e9816f040daf29 (diff)
downloadnixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.tar
nixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.tar.gz
nixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.tar.bz2
nixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.tar.lz
nixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.tar.xz
nixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.tar.zst
nixpkgs-2bc813dc5c19fde9a1842293994e2275cec7d6ff.zip
Add hans: tunnel IPv4 over ICMP
Diffstat (limited to 'pkgs/tools/networking/hans')
-rw-r--r--pkgs/tools/networking/hans/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/tools/networking/hans/default.nix b/pkgs/tools/networking/hans/default.nix
new file mode 100644
index 00000000000..fcb3e903753
--- /dev/null
+++ b/pkgs/tools/networking/hans/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub, nettools }:
+
+let version = "0.4.4"; in
+stdenv.mkDerivation rec {
+  name = "hans-${version}";
+
+  src = fetchFromGitHub {
+    sha256 = "1xskffmmdmg1whlrl5wpkv9z29vh0igrbmsz0b45s9v0761a7kis";
+    rev = "v${version}";
+    repo = "hans";
+    owner = "friedrich";
+  };
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Tunnel IPv4 over ICMP";
+    longDescription = ''
+      Hans makes it possible to tunnel IPv4 through ICMP echo packets, so you
+      could call it a ping tunnel. This can be useful when you find yourself in
+      the situation that your Internet access is firewalled, but pings are
+      allowed.
+    '';
+    homepage = http://code.gerade.org/hans/;
+    license = with licenses; gpl3Plus;
+    platforms = with platforms; linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+
+  buildInputs = [ nettools ];
+
+  postPatch = ''
+    substituteInPlace src/tun.cpp --replace "/sbin/" "/${nettools}/bin/"
+  '';
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    install -D -m0755 hans $out/bin/hans
+  '';
+}