diff options
Diffstat (limited to 'gnu/services')
-rw-r--r-- | gnu/services/base.scm | 19 | ||||
-rw-r--r-- | gnu/services/sddm.scm | 4 | ||||
-rw-r--r-- | gnu/services/shepherd.scm | 12 | ||||
-rw-r--r-- | gnu/services/vpn.scm | 14 | ||||
-rw-r--r-- | gnu/services/xorg.scm | 8 |
5 files changed, 42 insertions, 15 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 0c154d1c4e..706b3ae7ec 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 John Soo <jsoo1@asu.edu> ;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2037,11 +2038,6 @@ item of @var{packages}." (setenv "LINUX_MODULE_DIRECTORY" "/run/booted-system/kernel/lib/modules") - ;; The first one is for udev, the second one for eudev. - (setenv "UDEV_CONFIG_FILE" #$udev.conf) - (setenv "EUDEV_RULES_DIRECTORY" - #$(file-append rules "/lib/udev/rules.d")) - (let* ((kernel-release (utsname:release (uname))) (linux-module-directory @@ -2058,7 +2054,18 @@ item of @var{packages}." (make-static-device-nodes directory)) (umask old-umask)) - (let ((pid (fork+exec-command (list udevd)))) + (let ((pid (fork+exec-command (list udevd) + #:environment-variables + (cons* + ;; The first one is for udev, the second one for + ;; eudev. + (string-append "UDEV_CONFIG_FILE=" #$udev.conf) + (string-append "EUDEV_RULES_DIRECTORY=" + #$(file-append + rules "/lib/udev/rules.d")) + (string-append "LINUX_MODULE_DIRECTORY=" + (getenv "LINUX_MODULE_DIRECTORY")) + (default-environment-variables))))) ;; Wait until udevd is up and running. This appears to ;; be needed so that the events triggered below are ;; actually handled. diff --git a/gnu/services/sddm.scm b/gnu/services/sddm.scm index ac8c9a8403..473b4876a1 100644 --- a/gnu/services/sddm.scm +++ b/gnu/services/sddm.scm @@ -56,7 +56,7 @@ (default (file-append shepherd "/sbin/reboot"))) ;; [Theme] - ;; valid values are elarun or maldives + ;; valid values are elarun, maldives or maya (theme sddm-configuration-theme (default "maldives")) (themes-directory sddm-configuration-themes-directory @@ -325,6 +325,6 @@ Wayland."))) (define-deprecated (sddm-service #:optional (config (sddm-configuration))) sddm-service-type - "Run the @uref{https://github.com/sddm/sddm,SSDM display manager} + "Run the @uref{https://github.com/sddm/sddm,SDDM display manager} with the given @var{config}, a @code{<sddm-configuration>} object." (service sddm-service-type config)) diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm index 08bb33039c..d483ff1a15 100644 --- a/gnu/services/shepherd.scm +++ b/gnu/services/shepherd.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2018 Carlo Zancanaro <carlo@zancanaro.id.au> ;;; @@ -281,6 +281,12 @@ and return the resulting '.go' file." (use-modules (srfi srfi-34) (system repl error-handling)) + ;; Specify the default environment visible to all the services. + ;; Without this statement, all the environment variables of PID 1 + ;; are inherited by child services. + (default-environment-variables + '("PATH=/run/current-system/profile/bin")) + ;; Arrange to spawn a REPL if something goes wrong. This is better ;; than a kernel panic. (call-with-error-handling @@ -288,10 +294,6 @@ and return the resulting '.go' file." (apply register-services (map load-compiled '#$(map scm->go files))))) - ;; guix-daemon 0.6 aborts if 'PATH' is undefined, so work around - ;; it. - (setenv "PATH" "/run/current-system/profile/bin") - (format #t "starting services...~%") (for-each (lambda (service) ;; In the Shepherd 0.3 the 'start' method can raise diff --git a/gnu/services/vpn.scm b/gnu/services/vpn.scm index cbb4a79a7b..658d5c3e88 100644 --- a/gnu/services/vpn.scm +++ b/gnu/services/vpn.scm @@ -59,9 +59,10 @@ (format #t "") (format #t "~a ~a\n" (uglify-field-name field-name) val))) (define serialize-string serialize-field) +(define-maybe string) (define (serialize-boolean field-name val) (if val - (serialize-field field-name val) + (serialize-field field-name "") (format #t ""))) (define (ip-mask? val) @@ -298,6 +299,11 @@ certificate is @code{cert}.") "Don't close and reopen TUN/TAP device or run up/down scripts across SIGUSR1 or --ping-restart restarts.") + (fast-io? + (boolean #f) + "(Experimental) Optimize TUN/TAP/UDP I/O writes by avoiding a call to +poll/epoll/select prior to the write operation.") + (verbosity (number 3) "Verbosity level.")) @@ -307,6 +313,12 @@ SIGUSR1 or --ping-restart restarts.") "Add an additional layer of HMAC authentication on top of the TLS control channel to protect against DoS attacks.") + (auth-user-pass + (maybe-string 'disabled) + "Authenticate with server using username/password. The option is a file +containing username/password on 2 lines. Do not use a file-like object as it +would be added to the store and readable by any user.") + (verify-key-usage? (key-usage #t) "Whether to check the server certificate has server usage extension.") diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 73a32e4b02..df5c350a37 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2018, 2019 Timothy Sample <samplet@ngyro.com> ;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de> +;;; Copyright © 2020 shtwzrd <shtwzrd@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -152,7 +153,12 @@ xorg-configuration make-xorg-configuration xorg-configuration? (modules xorg-configuration-modules ;list of packages - (default %default-xorg-modules)) + ; filter out modules not supported on current system + (default (filter + (lambda (p) + (member (%current-system) + (package-supported-systems p))) + %default-xorg-modules))) (fonts xorg-configuration-fonts ;list of packges (default %default-xorg-fonts)) (drivers xorg-configuration-drivers ;list of strings |