From 69cc97cdfbacf77ec45a8ff480dcc98f4ea33b54 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 21 Jan 2022 15:09:05 +0100 Subject: gnu: Add pproxy. * gnu/packages/networking.scm (pproxy): New variable. --- gnu/packages/networking.scm | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 26f4be421a..c4e9d59aec 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -23,7 +23,7 @@ ;;; Copyright © 2018, 2019 Tonton ;;; Copyright © 2018 Clément Lassieur ;;; Copyright © 2018 Theodoros Foradis -;;; Copyright © 2018, 2020, 2021 Marius Bakke +;;; Copyright © 2018, 2020-2022 Marius Bakke ;;; Copyright © 2018, 2020, 2021 Oleg Pykhalov ;;; Copyright © 2018 Pierre Neidhardt ;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer @@ -128,6 +128,7 @@ #:use-module (gnu packages pretty-print) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) + #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) @@ -910,6 +911,42 @@ addresses used in the wired Ethernet networks. This daemon can also be useful for making transparent firewalls.") (license license:gpl2))) +(define-public pproxy + (package + (name "pproxy") + (version "2.7.8") + (source (origin + (method url-fetch) + (uri (pypi-uri "pproxy" version)) + (sha256 + (base32 + "1j4nv72i77i2j5nl9ymzpk4m98qih3naihfrqjghrc9b7g0krdzs")))) + (build-system python-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "tests" + (for-each (lambda (file) + (invoke "python" file)) + ;; XXX: The api_ tests require network access + ;; so we only run the cipher tests for now. + (find-files "." "^cipher_.*\\.py$"))))))))) + (inputs + (list python-asyncssh + python-daemon + python-pycryptodome + python-uvloop)) + (home-page "https://github.com/qwj/python-proxy") + (synopsis "Multi-protocol network proxy") + (description + "@command{pproxy} is an asynchronuous proxy server implemented with +Python 3 @code{asyncio}. Among the supported protocols are HTTP, SOCKS +and SSH, and it can use both TCP and UDP as transport mechanisms.") + (license license:expat))) + (define-public socat (package (name "socat") -- cgit v1.2.3