From e24ca007737ab7f6e7572cee2b827578ff42a36a Mon Sep 17 00:00:00 2001
* gnu/packages/vpn.scm (protonvpn-cli): New variable.
gnu/packages/vpn.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
Toggle diff (63 lines)
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index da881493bf..8f7fb3b577 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;; This file is part of GNU Guix.
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages python-web)
#:use-module (gnu packages tls)
#:use-module (gnu packages xml))
@@ -311,6 +313,40 @@ security protocol that utilizes SSL/TLS for key exchange. It is capable of
traversing network address translators (@dfn{NAT}s) and firewalls.")
+(define-public protonvpn-cli
+ ;; PyPI has a ".whl" file but not a proper source release.
+ ;; Thus, fetch code from Git.
+ (url "https://github.com/ProtonVPN/linux-cli.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ "0ixjb02kj4z79whm1izd8mrn2h0rp9cmw4im1qvp93rahqxdd4n8"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ; no tests in repo
+ `(("docopt" ,python-docopt)))
+ `(("pythondialog" ,python-pythondialog)
+ ("requests" ,python-requests)))
+ `(("openvpn" ,openvpn)))
+ (synopsis "Command-line client for ProtonVPN")
+ "Official CLI for ProtonVPN, a secure point-to-point virtual private
+networking service with a gratis tier. It can automatically find and connect
+to the fastest servers or use TOR over VPN. The gratis tier offers unlimited
+bandwidth for up to 10 devices.")
+ (home-page "https://github.com/ProtonVPN/linux-cli")
+ (license license:gpl3+)))