services: xorg: Set argv[0] for the window manager.

* gnu/services/xorg.scm (xinitrc): Set argv[0] when invoking ratpoison
  or wmaker.
This commit is contained in:
Ludovic Courtès 2014-11-12 18:55:33 +01:00
parent 0b0fbf0c16
commit 08dbc3b550
1 changed files with 8 additions and 5 deletions

View File

@ -148,11 +148,14 @@ EndSection
(false-if-exception (execl file file))) (false-if-exception (execl file file)))
;; Then try a pre-configured session type. ;; Then try a pre-configured session type.
(let ((ratpoison (string-append #$ratpoison "/bin/ratpoison"))
(wmaker (string-append #$windowmaker "/bin/wmaker")))
(match (command-line) (match (command-line)
((_ "ratpoison") ((_ "ratpoison")
(execl (string-append #$ratpoison "/bin/ratpoison"))) (execl ratpoison ratpoison))
(_ (_
(execl (string-append #$windowmaker "/bin/wmaker")))))) ;; 'wmaker' does execvp(argv[0]), so we really can't mess up.
(execl wmaker wmaker))))))
(gexp->script "xinitrc" builder)) (gexp->script "xinitrc" builder))