Subject: [bug#57351] [PATCH] gnu: Add vpn-slice.

From: Efraim Flashner <[email-masked]>
Date: Mon, 29 Aug 2022 16:35:15 +0300

On Tue, Aug 23, 2022 at 02:14:47PM +0530, Arun Isaac wrote:
> * gnu/packages/vpn.scm (vpn-slice): New variable.
> ---
>  gnu/packages/vpn.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
> 
> diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
> index 1ec619b0c2..c68511e04b 100644
> --- a/gnu/packages/vpn.scm
> +++ b/gnu/packages/vpn.scm
> @@ -1197,3 +1197,31 @@ (define-public xl2tpd
>       "xl2tpd is an implementation of the Layer 2 Tunnelling Protocol (RFC 2661).
>  L2TP allows you to tunnel PPP over UDP.")
>      (license license:gpl2)))
> +
> +(define-public vpn-slice
> +  (package
> +    (name "vpn-slice")
> +    (version "0.16.1")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "vpn-slice" version))
> +              (sha256
> +               (base32
> +                "1anfx4hn2ggm6sbwqmqx68s3l2rjcy4z4l038xqb440jnk8jvl18"))))
> +    (build-system python-build-system)
> +    (inputs (list python-dnspython python-setproctitle))
> +    (home-page "https://github.com/dlenski/vpn-slice")
> +    (synopsis "Split tunneling replacement for vpnc-script")
> +    (description "vpn-slice is a replacement for the vpnc-script used by
> +OpenConnect and vpnc.  Instead of trying to copy the behavior of standard
> +corporate VPN clients, which normally reroute all your network traffic through
> +the VPN, vpn-slice tries to minimize your contact with an intrusive VPN.  This
> +is also known as a split-tunnel VPN, since it splits your traffic between the
> +VPN tunnel and your normal network interfaces.
> +
> +By default, vpn-slice only routes traffic for specific hosts or subnets
> +through the VPN.  It automatically looks up named hosts, using the VPN's DNS
> +servers, and adds entries for them to your /etc/hosts (which it cleans up
> +after VPN disconnection), however it does not otherwise alter your
> +/etc/resolv.conf at all.")
> +    (license license:gpl3+)))

Are there any tests in the upstream repo?

I'd wrap some of the commands in @command{...} and the /etc files in
@file{...}.

-- 
Efraim Flashner   <[email-masked]>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted