diff options
author | Mark H Weaver <mhw@netris.org> | 2016-02-27 08:52:23 -0500 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2016-02-27 08:52:23 -0500 |
commit | 048ec1a8b092a87de08bfe410be65642522b63ed (patch) | |
tree | 1279c4fa3fd09805dbfe06be3514879aa38d503e /gnu/services/xorg.scm | |
parent | fe5f687284889eeff3c1b73edab0aa26e58c3bc5 (diff) | |
parent | b35461748b20d0172744974b39e7d9d033400c51 (diff) | |
download | patches-048ec1a8b092a87de08bfe410be65642522b63ed.tar patches-048ec1a8b092a87de08bfe410be65642522b63ed.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/services/xorg.scm')
-rw-r--r-- | gnu/services/xorg.scm | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index a93dbfe7c4..980b5a6ba5 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -40,6 +40,7 @@ #:use-module (srfi srfi-26) #:use-module (ice-9 match) #:export (xorg-configuration-file + %default-xorg-modules xorg-start-command %default-slim-theme %default-slim-theme-name @@ -137,9 +138,52 @@ EndSection "\n" extra-config)) +(define %default-xorg-modules + (list xf86-video-vesa + xf86-video-fbdev + xf86-video-modesetting + xf86-video-cirrus + xf86-video-intel + xf86-video-mach64 + xf86-video-nouveau + xf86-video-nv + xf86-video-sis + xf86-input-libinput + xf86-input-evdev + xf86-input-keyboard + xf86-input-mouse + xf86-input-synaptics)) + +(define (xorg-configuration-directory modules) + "Return a directory that contains the @code{.conf} files for X.org that +includes the @code{share/X11/xorg.conf.d} directories of each package listed +in @var{modules}." + (computed-file "xorg.conf.d" + #~(begin + (use-modules (guix build utils) + (srfi srfi-1)) + + (define files + (append-map (lambda (module) + (find-files (string-append + module + "/share/X11/xorg.conf.d") + "\\.conf$")) + (list #$@modules))) + + (mkdir #$output) + (for-each (lambda (file) + (symlink file + (string-append #$output "/" + (basename file)))) + files) + #t) + #:modules '((guix build utils)))) + (define* (xorg-start-command #:key (guile (canonical-package guile-2.0)) (configuration-file (xorg-configuration-file)) + (modules %default-xorg-modules) (xorg-server xorg-server)) "Return a derivation that builds a @var{guile} script to start the X server from @var{xorg-server}. @var{configuration-file} is the server configuration @@ -158,6 +202,7 @@ Usually the X server is started by a login manager." "-logverbose" "-verbose" "-xkbdir" (string-append #$xkeyboard-config "/share/X11/xkb") "-config" #$configuration-file + "-configdir" #$(xorg-configuration-directory modules) "-nolisten" "tcp" "-terminate" ;; Note: SLiM and other display managers add the |