From 403a4b1cedfa816295d133dec9036d2c579b4f33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20L=C3=BCtke-Stetzkamp?= Date: Fri, 6 Mar 2020 12:44:34 +0100 Subject: [PATCH] http2tcp: init at 0.5 --- pkgs/tools/networking/http2tcp/default.nix | 47 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/tools/networking/http2tcp/default.nix diff --git a/pkgs/tools/networking/http2tcp/default.nix b/pkgs/tools/networking/http2tcp/default.nix new file mode 100644 index 000000000000..b1f3c704b1fa --- /dev/null +++ b/pkgs/tools/networking/http2tcp/default.nix @@ -0,0 +1,47 @@ +{ lib +, python3 +, stdenv +, fetchurl +}: + +stdenv.mkDerivation rec { + pname = "http2tcp"; + version = "0.5"; + + src = fetchurl { + url = "https://www.linta.de/~aehlig/http2tcp/${pname}-${version}.tar.gz"; + sha256 = "34fb83c091689dee398ca80db76487e0c39abb17cef390d845ffd888009a5caa"; + }; + + buildInputs = [ + (python3.withPackages (ps: [ + ps.wsgitools + ])) + ]; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/{bin,share/${pname}} + cp http2tcp* $out/bin + cp Protocol $out/share/${pname}/ + ''; + + meta = with lib; { + maintainers = with maintainers; [ clkamp ]; + description = "A tool for tunneling TCP connections via HTTP GET requests"; + longDescription = '' + The http2tcp tools allow to tunnel tcp connections (presumably + ssh) via syntactically correct http requests. It is designed to + work in the presence of so-called "transparent" + store-and-forward proxies disallowing POST requests. + + It also turned out to be useful to stabilise connections where + the client's internet connection is unreliable (frequent long + network outages, rapidly changing IP address, etc). + ''; + homepage = "https://www.linta.de/~aehlig/http2tcp/"; + license = licenses.bsd3; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 85b1d5a23717..6da9dda1e75f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -960,6 +960,8 @@ in hpe-ltfs = callPackage ../tools/backup/hpe-ltfs { }; + http2tcp = callPackage ../tools/networking/http2tcp { }; + httperf = callPackage ../tools/networking/httperf { }; ili2c = callPackage ../tools/misc/ili2c { };