civodul pushed a commit to branch master
in repository guix.
commit cd730719846538bf04061f85adc1651f8c2a509d
Author: Thorsten Wilms <[email protected]>
Date: Sat Mar 31 14:34:50 2018 +0200
gnu: Add x11-socket-directory-service.
* gnu/services/desktop.scm (x11-socket-directory-service): New
variable.
(%desktop-services): Add it.
Signed-off-by: Ludovic Courtès <[email protected]>
---
gnu/services/desktop.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 8972529..517d5d3 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -94,6 +94,8 @@
xfce-desktop-service
xfce-desktop-service-type
+ x11-socket-directory-service
+
%desktop-services))
;;; Commentary:
@@ -882,6 +884,24 @@ with the administrator's password."
;;;
+;;; X11 socket directory service
+;;;
+
+(define x11-socket-directory-service
+ ;; Return a service that creates /tmp/.X11-unix. When using X11, libxcb
+ ;; takes care of creating that directory. However, when using XWayland, we
+ ;; need to create beforehand. Thus, create it unconditionally here.
+ (simple-service 'x11-socket-directory
+ activation-service-type
+ (with-imported-modules '((guix build utils))
+ #~(begin
+ (use-modules (guix build utils))
+ (let ((directory "/tmp/.X11-unix"))
+ (mkdir-p directory)
+ (chmod directory #o777))))))
+
+
+;;;
;;; The default set of desktop services.
;;;
@@ -912,6 +932,8 @@ with the administrator's password."
(ntp-service)
+ x11-socket-directory-service
+
%base-services))
;;; desktop.scm ends here