summary refs log tree commit diff
path: root/gnu/packages/gnome.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@igalia.com>2016-03-17 17:39:39 +0100
committerAndy Wingo <wingo@igalia.com>2016-03-17 18:11:42 +0100
commit2914af3c9622dc05f05d9a34ce7ef3bc23c091ce (patch)
tree38d484b270b75b1dc76fef193b2f1c171823c749 /gnu/packages/gnome.scm
parent953c12232fc94f0a5d1f2a1e9d98a24456357cc9 (diff)
downloadguix-2914af3c9622dc05f05d9a34ce7ef3bc23c091ce.tar.gz
gnu: gnome-session: Add elogind input.
* gnu/packages/gnome.scm (gnome-session): Add elogind input, while
  disabling the use of systemd's journal.
Diffstat (limited to 'gnu/packages/gnome.scm')
-rw-r--r--gnu/packages/gnome.scm24
1 files changed, 23 insertions, 1 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index a26b609c19..75a2a0cd47 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3794,6 +3794,27 @@ such as gzip tarballs.")
               (sha256
                (base32
                 "0icajbzqf5llvp5s8nafwkhwz6a6jmwn4hhs81bk0bpzawyq4zdk"))))
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'pre-configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Use elogind instead of systemd.
+             (substitute* "configure"
+               (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
+                "libelogind")
+               (("systemd") "elogind"))
+             (substitute* "gnome-session/gsm-systemd.c"
+               (("#include <systemd/sd-login.h>")
+                "#include <elogind/sd-login.h>"))
+             ;; Remove uses of the systemd journal.
+             (substitute* "gnome-session/main.c"
+               (("#ifdef HAVE_SYSTEMD") "#if 0"))
+             (substitute* "gnome-session/gsm-manager.c"
+               (("#ifdef HAVE_SYSTEMD") "#if 0"))
+             #t)))
+       #:configure-flags
+       '("--enable-elogind")))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
@@ -3801,7 +3822,8 @@ such as gzip tarballs.")
        ("intltool" ,intltool)
        ("xsltproc" ,libxslt)))
     (inputs
-     `(("gnome-desktop" ,gnome-desktop)
+     `(("elogind" ,elogind)
+       ("gnome-desktop" ,gnome-desktop)
        ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
        ("gtk+" ,gtk+)
        ("json-glib" ,json-glib)