~ruther/guix-local

08dbc3b5503f6cbfcb5b131797a4deb55e91101b — Ludovic Courtès 11 years ago 0b0fbf0
services: xorg: Set argv[0] for the window manager.

* gnu/services/xorg.scm (xinitrc): Set argv[0] when invoking ratpoison
  or wmaker.
1 files changed, 8 insertions(+), 5 deletions(-)

M gnu/services/xorg.scm
M gnu/services/xorg.scm => gnu/services/xorg.scm +8 -5
@@ 148,11 148,14 @@ EndSection
          (false-if-exception (execl file file)))

        ;; Then try a pre-configured session type.
        (match (command-line)
          ((_ "ratpoison")
           (execl (string-append #$ratpoison "/bin/ratpoison")))
          (_
           (execl (string-append #$windowmaker "/bin/wmaker"))))))
        (let ((ratpoison (string-append #$ratpoison "/bin/ratpoison"))
              (wmaker    (string-append #$windowmaker "/bin/wmaker")))
          (match (command-line)
            ((_ "ratpoison")
             (execl ratpoison ratpoison))
            (_
             ;; 'wmaker' does execvp(argv[0]), so we really can't mess up.
             (execl wmaker wmaker))))))

  (gexp->script "xinitrc" builder))