summaryrefslogtreecommitdiff
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
parent953c12232fc94f0a5d1f2a1e9d98a24456357cc9 (diff)
gnu: gnome-session: Add elogind input.
* gnu/packages/gnome.scm (gnome-session): Add elogind input, while disabling the use of systemd's journal.
-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)