services: network-manager: Properly load vpn plugins

Extends the dbus service when vpn plugins are enabled.

* gnu/services/networking.scm (network-manager-service-type): Load vpn plugins
when extending dbus service.
This commit is contained in:
Jelle Licht 2019-07-03 14:03:25 +02:00
parent 7d1861e2d2
commit 40557aeab5
No known key found for this signature in database
GPG Key ID: DA4597F947B41025
1 changed files with 10 additions and 6 deletions

View File

@ -10,6 +10,7 @@
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de> ;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -942,24 +943,27 @@ and @command{wicd-curses} user interfaces."
(define network-manager-service-type (define network-manager-service-type
(let (let
((config->package ((config->packages
(match-lambda (match-lambda
(($ <network-manager-configuration> network-manager) (($ <network-manager-configuration> network-manager _ vpn-plugins)
(list network-manager))))) `(,network-manager ,@vpn-plugins)))))
(service-type (service-type
(name 'network-manager) (name 'network-manager)
(extensions (extensions
(list (service-extension shepherd-root-service-type (list (service-extension shepherd-root-service-type
network-manager-shepherd-service) network-manager-shepherd-service)
(service-extension dbus-root-service-type config->package) (service-extension dbus-root-service-type config->packages)
(service-extension polkit-service-type config->package) (service-extension polkit-service-type
(compose
list
network-manager-configuration-network-manager))
(service-extension activation-service-type (service-extension activation-service-type
network-manager-activation) network-manager-activation)
(service-extension session-environment-service-type (service-extension session-environment-service-type
network-manager-environment) network-manager-environment)
;; Add network-manager to the system profile. ;; Add network-manager to the system profile.
(service-extension profile-service-type config->package))) (service-extension profile-service-type config->packages)))
(default-value (network-manager-configuration)) (default-value (network-manager-configuration))
(description (description
"Run @uref{https://wiki.gnome.org/Projects/NetworkManager, "Run @uref{https://wiki.gnome.org/Projects/NetworkManager,