summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorArjan Adriaanse <arjan@adriaan.se>2022-11-27 22:57:42 +0100
committerLudovic Courtès <ludo@gnu.org>2022-12-05 22:22:19 +0100
commitf70e0dd6d8ace2f5bae85dc311b563e240bc009d (patch)
tree313f79de903f9dcf2513bd7267600e745ec46021 /gnu/packages
parent86a2e24cdf353a40206aa5d8a9412163b790d5e3 (diff)
gnu: Add network-manager-fortisslvpn.
* gnu/packages/gnome.scm (network-manager-fortisslvpn): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/gnome.scm59
1 files changed, 59 insertions, 0 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 8652d9e03c..c2edd7a553 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -72,6 +72,7 @@
;;; Copyright © 2022 Leo Nikkilä <hello@lnikki.la>
;;; Copyright © 2022 Rene Saavedra <nanuui@protonmail.com>
;;; Copyright © 2022 Alexandros Theodotou <alex@zrythm.org>
+;;; Copyright © 2022 Arjan Adriaanse <arjan@adriaan.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -8710,6 +8711,64 @@ Cisco's AnyConnect SSL VPN.")
;; so that 'network-manager-service-type' creates it.
(user-accounts . ("nm-openconnect"))))))
+(define-public network-manager-fortisslvpn
+ (package
+ (name "network-manager-fortisslvpn")
+ (version "1.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://gnome/sources/NetworkManager-fortisslvpn/"
+ (version-major+minor version)
+ "/NetworkManager-fortisslvpn-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1ynsqmv8xz1cffnai4hfh0ab0dmlazpv72krhlsv45mm95iy4mdh"))
+ (modules '((guix build utils)))
+ (snippet '(substitute* "Makefile.in"
+ ;; do not try to make state directory
+ (("\\$\\(DESTDIR\\)\\$\\(fortisslvpn_statedir\\)")
+ "")
+ ;; use state directory of the NetworkManager service
+ (("\\$\\(fortisslvpn_statedir\\)")
+ "/var/lib/NetworkManager")))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags '("--enable-absolute-paths" "--localstatedir=/var"
+ "--with-gtk4=yes")
+ #:phases (modify-phases %standard-phases
+ (add-after 'configure 'patch-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let* ((ovpn (search-input-file inputs
+ "/bin/openfortivpn"))
+ (pretty-ovpn (string-append "\"" ovpn "\"")))
+ (for-each (lambda (file)
+ (substitute* file
+ (("\"/usr/local/bin/openfortivpn\"")
+ pretty-ovpn)
+ (("\"/usr/bin/openfortivpn\"")
+ pretty-ovpn)))
+ '("src/nm-fortisslvpn-service.c"
+ "properties/nm-fortisslvpn-editor.c"))))))))
+ (native-inputs (list intltool
+ `(,glib "bin") pkg-config))
+ (inputs (list gtk+
+ gtk
+ kmod
+ libnma
+ libsecret
+ network-manager
+ openfortivpn
+ pango-next ;TODO: remove after it's the default
+ ppp))
+ (home-page "https://wiki.gnome.org/Projects/NetworkManager/VPN")
+ (synopsis "Fortinet SSLVPN plug-in for NetworkManager")
+ (description
+ "This extension of NetworkManager allows it to take care of connections
+to virtual private networks (VPNs) via Fortinet SSLVPN.")
+ (license license:gpl2+)
+ (properties `((upstream-name . "NetworkManager-fortisslvpn")))))
+
(define-public mobile-broadband-provider-info
(package
(name "mobile-broadband-provider-info")