diff --git a/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix b/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix new file mode 100644 index 00000000000..e6be19198ef --- /dev/null +++ b/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, twisted, mock }: + +buildPythonPackage rec { + pname = "magic-wormhole-transit-relay"; + version = "0.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "faac36266c72745102a1a8b93abc5b25feed1be5bca7b29968a156966c312567"; + }; + + propagatedBuildInputs = [ twisted ]; + + checkInputs = [ mock ]; + + checkPhase = '' + python -m twisted.trial wormhole_transit_relay + ''; + + meta = with lib; { + description = "Transit Relay server for Magic-Wormhole"; + homepage = https://github.com/warner/magic-wormhole-transit-relay; + license = licenses.mit; + }; +} diff --git a/pkgs/development/python-modules/magic-wormhole/default.nix b/pkgs/development/python-modules/magic-wormhole/default.nix index 9d2d80747a9..cef68a332cd 100644 --- a/pkgs/development/python-modules/magic-wormhole/default.nix +++ b/pkgs/development/python-modules/magic-wormhole/default.nix @@ -2,37 +2,38 @@ , buildPythonPackage , fetchPypi , pythonAtLeast +, python +, spake2 +, pynacl +, six +, attrs +, twisted +, autobahn +, automat +, hkdf +, tqdm +, click +, humanize +, ipaddress +, txtorcon , nettools , glibcLocales -, autobahn -, cffi -, click -, hkdf -, pynacl -, spake2 -, tqdm -, python , mock -, ipaddress -, humanize -, pyopenssl -, service-identity -, txtorcon +, magic-wormhole-transit-relay }: buildPythonPackage rec { pname = "magic-wormhole"; version = "0.10.5"; - name = "${pname}-${version}"; src = fetchPypi { inherit pname version; sha256 = "9558ea1f3551e535deec3462cd5c8391cb32ebb12ecd8b40b36861dbee4917ee"; }; - checkInputs = [ mock ]; + checkInputs = [ mock magic-wormhole-transit-relay ]; buildInputs = [ nettools glibcLocales ]; - propagatedBuildInputs = [ autobahn cffi click hkdf pynacl spake2 tqdm ipaddress humanize pyopenssl service-identity txtorcon ]; + propagatedBuildInputs = [ spake2 pynacl six attrs twisted autobahn automat hkdf tqdm click humanize ipaddress txtorcon ]; postPatch = '' sed -i -e "s|'ifconfig'|'${nettools}/bin/ifconfig'|" src/wormhole/ipaddrs.py diff --git a/pkgs/development/python-modules/spake2/default.nix b/pkgs/development/python-modules/spake2/default.nix new file mode 100644 index 00000000000..08500aeb4ad --- /dev/null +++ b/pkgs/development/python-modules/spake2/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, hkdf, pytest }: + +buildPythonPackage rec { + pname = "spake2"; + version = "0.8"; + + src = fetchPypi { + inherit pname version; + sha256 = "c17a614b29ee4126206e22181f70a406c618d3c6c62ca6d6779bce95e9c926f4"; + }; + + checkInputs = [ pytest ]; + + propagatedBuildInputs = [ hkdf ]; + + checkPhase = '' + py.test $out + ''; + + meta = with lib; { + description = "SPAKE2 password-authenticated key exchange library"; + homepage = "http://github.com/warner/python-spake2"; + license = licenses.mit; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 54cc7c81015..57973045062 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15656,29 +15656,7 @@ in { }; }; - spake2 = buildPythonPackage rec { - name = "spake2-${version}"; - version = "0.7"; - - src = pkgs.fetchurl { - url = "mirror://pypi/s/spake2/${name}.tar.gz"; - sha256 = "0rmplicbbid41qrvwc1ckyp211ban01ardms5yqqq16ixrc18a6j"; - }; - - buildInputs = with self; [ pytest ]; - - propagatedBuildInputs = with self; [ hkdf ]; - - checkPhase = '' - py.test $out - ''; - - meta = { - description = "SPAKE2 password-authenticated key exchange library"; - homepage = "http://github.com/warner/python-spake2"; - license = licenses.mit; - }; - }; + spake2 = callPackage ../development/python-modules/spake2 { }; sphfile = callPackage ../development/python-modules/sphfile { }; @@ -17893,6 +17871,8 @@ EOF magic-wormhole = callPackage ../development/python-modules/magic-wormhole { }; + magic-wormhole-transit-relay = callPackage ../development/python-modules/magic-wormhole-transit-relay { }; + wsgiproxy2 = buildPythonPackage rec { name = "WSGIProxy2-0.4.2";