diff mbox series

[bug#68683] gnu: vpn-slice: Include required inputs "iproute" and "iptables".

Message ID d43a41de5c0ce842171f42f723b6fbc01f0af797.1706087919.git.allan@adair.no
State New
Headers show
Series [bug#68683] gnu: vpn-slice: Include required inputs "iproute" and "iptables". | expand

Commit Message

Allan Adair Jan. 24, 2024, 9:18 a.m. UTC
vpn-slice expects commands "ip" and "iptables" to be found according to FHS
paths.

* gnu/packages/vpn.scm (vpn-slice)[arguments]: Include inputs "iproute" and
"iptables" and patch "vpn_slice/linux.py" to use correct locations in the
store.

Change-Id: Ia06e2bb99f060108cc0758e89174294bcbb2848d
---
 gnu/packages/vpn.scm | 28 ++++++++++++++++++++--------
 1 file changed, 20 insertions(+), 8 deletions(-)


base-commit: 3419c216b485532dd3c3ed7959553d7900eb1fea

Comments

Ricardo Wurmus Feb. 12, 2024, 8:10 a.m. UTC | #1
Thanks for the patch!  I simplified it just a bit and pushed it with
commit bd9da702123ab746bd43de5b0fc0c129874b15aa.
diff mbox series

Patch

diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index 02c1ee1043..a6a83c9145 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -23,6 +23,7 @@ 
 ;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2022 Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
 ;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2024 Allan Adair <allan@adair.no>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1245,17 +1246,28 @@  (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"))))
+    (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))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'patch-FHS-file-names
+                    (lambda _
+                      (substitute* "vpn_slice/linux.py"
+                        (("/sbin/iptables")
+                         (which "iptables")))
+                      (substitute* "vpn_slice/linux.py"
+                        (("/sbin/ip")
+                         (which "ip"))))))))
+    (inputs (list python-dnspython python-setproctitle iproute iptables))
     (home-page "https://github.com/dlenski/vpn-slice")
     (synopsis "Split tunneling replacement for vpnc-script")
-    (description "vpn-slice is a replacement for @command{vpnc-script} used by
+    (description
+     "vpn-slice is a replacement for @command{vpnc-script} used by
 @code{openconnect} and @code{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