summaryrefslogtreecommitdiff
path: root/gnu/services/xorg.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/services/xorg.scm')
-rw-r--r--gnu/services/xorg.scm10
1 files changed, 8 insertions, 2 deletions
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index d0e6c7cd5c..d4e73c13b4 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -707,7 +707,12 @@ makes the good ol' XlockMore usable."
'()))
(define localed-service-type
- (let ((package (compose list localed-configuration-localed)))
+ (let ((package (lambda (config)
+ ;; Don't bother if the user didn't specify any keyboard
+ ;; layout.
+ (if (localed-configuration-keyboard-layout config)
+ (list (localed-configuration-localed config))
+ '()))))
(service-type (name 'localed)
(extensions
(list (service-extension dbus-root-service-type
@@ -720,7 +725,8 @@ makes the good ol' XlockMore usable."
;; This service can be extended, typically by the X login
;; manager, to communicate the chosen Xorg keyboard layout.
- (compose first)
+ (compose (lambda (extensions)
+ (find keyboard-layout? extensions)))
(extend (lambda (config keyboard-layout)
(localed-configuration
(inherit config)