summary refs log tree commit diff
path: root/gnu/services/xorg.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-03-18 19:37:34 +0100
committerLudovic Courtès <ludo@gnu.org>2016-03-18 19:42:00 +0100
commitc510cbb4ecb270ca3edf282c6769aa2bfb144822 (patch)
tree53f32ad3d936f5529bdadbc4837d28821f85341c /gnu/services/xorg.scm
parenta0d7baaf483fb88d3f4896a8510b31123a26a646 (diff)
downloadguix-c510cbb4ecb270ca3edf282c6769aa2bfb144822.tar.gz
services: xorg: Accept session commands with arguments.
Before that, a session command with several items, such as
'gnome-session --disable-acceleration-check', would trigger the fallback
session.

* gnu/services/xorg.scm (xinitrc)[builder]: Accept command lines with
more than one arguments.
Diffstat (limited to 'gnu/services/xorg.scm')
-rw-r--r--gnu/services/xorg.scm9
1 files changed, 5 insertions, 4 deletions
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index 980b5a6ba5..e16247b3b8 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -246,13 +246,14 @@ which should be passed to this script as the first argument.  If not, the
         (let* ((home          (getenv "HOME"))
                (xsession-file (string-append home "/.xsession"))
                (session       (match (command-line)
-                                ((_ x) x)
-                                (_     #$fallback-session))))
+                                ((_)       (list #$fallback-session))
+                                ((_ x ..1) x))))
           (if (file-exists? xsession-file)
               ;; Run ~/.xsession when it exists.
               (exec-from-login-shell xsession-file session)
               ;; Otherwise, start the specified session.
-              (exec-from-login-shell session)))))
+              (apply exec-from-login-shell session)))))
+
   (program-file "xinitrc" builder))