From fa67d5654176b4b815832eaf259188e1486c65ab Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 25 Jul 2017 10:15:58 +0200 Subject: gnu: elogind: Update to 232.3. * gnu/packages/freedesktop.scm (elogind): Update to 232.3. [home-page]: Use new upstream home page. [arguments]: Disable tests, add new required configure flags; add build phase "autogen". [native-inputs]: Add autoconf, automake, libtool, and python. --- gnu/packages/freedesktop.scm | 50 +++++++++++++++++++++++++++++--------------- 1 file changed, 33 insertions(+), 17 deletions(-) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index f99f9771e3..378a8f919e 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -204,14 +204,14 @@ the freedesktop.org XDG Base Directory specification.") (define-public elogind (package (name "elogind") - (version "219.14") + (version "232.3") (source (origin (method url-fetch) - (uri (string-append "https://wingolog.org/pub/" name "/" - name "-" version ".tar.xz")) + (uri (string-append "https://github.com/elogind/elogind/" + "archive/v" version ".tar.gz")) (sha256 (base32 - "1jckc4wx199n1q4r4fv43ibjs6nlq91s39w9r78ilk1z383m1hcx")) + "1g3bqzw5dhd5zaivqgbi13n5zy219qmkrk6vmbhfprs8qvyn843f")) (modules '((guix build utils))) (snippet '(begin @@ -222,25 +222,41 @@ the freedesktop.org XDG Base Directory specification.") (("XSLTPROC_FLAGS = ") "XSLTPROC_FLAGS = --novalid")))))) (build-system gnu-build-system) (arguments - `(#:configure-flags + `(#:tests? #f ;FIXME: "make check" in the "po" directory fails. + #:configure-flags (list (string-append "--with-libcap=" (assoc-ref %build-inputs "libcap")) (string-append "--with-udevrulesdir=" (assoc-ref %outputs "out") - "/lib/udev/rules.d")) + "/lib/udev/rules.d") + (string-append "--with-rootprefix=" + (assoc-ref %outputs "out")) + ;; These are needed to ensure that lto linking works. + "RANLIB=gcc-ranlib" + "AR=gcc-ar" + "NM=gcc-nm") #:make-flags '("PKTTYAGENT=/run/current-system/profile/bin/pkttyagent") - #:phases (modify-phases %standard-phases - (add-before 'build 'fix-service-file - (lambda* (#:key outputs #:allow-other-keys) - ;; Fix the file name of the 'elogind' binary in the D-Bus - ;; '.service' file. - (substitute* "src/login/org.freedesktop.login1.service" - (("^Exec=.*") - (string-append "Exec=" (assoc-ref %outputs "out") - "/libexec/elogind/elogind\n")))))))) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'autogen + (lambda _ + (and (zero? (system* "intltoolize" "--force" "--automake")) + (zero? (system* "autoreconf" "-vif"))))) + (add-before 'build 'fix-service-file + (lambda* (#:key outputs #:allow-other-keys) + ;; Fix the file name of the 'elogind' binary in the D-Bus + ;; '.service' file. + (substitute* "src/login/org.freedesktop.login1.service" + (("^Exec=.*") + (string-append "Exec=" (assoc-ref %outputs "out") + "/libexec/elogind/elogind\n")))))))) (native-inputs - `(("intltool" ,intltool) + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("intltool" ,intltool) ("gettext" ,gettext-minimal) + ("python" ,python) ("docbook-xsl" ,docbook-xsl) ("docbook-xml" ,docbook-xml) ("xsltproc" ,libxslt) @@ -260,7 +276,7 @@ the freedesktop.org XDG Base Directory specification.") ("dbus" ,dbus) ("eudev" ,eudev) ("acl" ,acl))) ;to add individual users to ACLs on /dev nodes - (home-page "https://github.com/wingo/elogind") + (home-page "https://github.com/elogind/elogind") (synopsis "User, seat, and session management service") (description "Elogind is the systemd project's \"logind\" service, extracted out as a separate project. Elogind integrates with PAM to provide -- cgit v1.2.3 From 124ac301c1f11b7c217107c3abf91edbb1a1c3f8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 6 Sep 2017 09:49:17 +0300 Subject: gnu: weston: Add missing input. * gnu/packages/freedesktop.scm (weston)[inputs]: Add libcap. --- gnu/packages/freedesktop.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 378a8f919e..3c4ae3f4d0 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -448,6 +448,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") `(("cairo" ,cairo-xcb) ("dbus" ,dbus) ("elogind" ,elogind) + ("libcap" ,libcap) ("libinput" ,libinput-minimal) ("libunwind" ,libunwind) ("libxcursor" ,libxcursor) -- cgit v1.2.3 From 1f919459eba67da908cd7614b4fb2e66a0e2620b Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Wed, 6 Sep 2017 13:00:46 +0200 Subject: gnu: udisks: Add missing input. * gnu/packages/freedesktop.scm (udisks)[inputs]: Add libcap. --- gnu/packages/freedesktop.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 3c4ae3f4d0..3649093ea5 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -580,6 +580,7 @@ Analysis and Reporting Technology) functionality.") `(("acl" ,acl) ("libatasmart" ,libatasmart) ("libgudev" ,libgudev) + ("libcap" ,libcap) ("polkit" ,polkit) ("util-linux" ,util-linux))) (outputs '("out" -- cgit v1.2.3 From daae20894265958eb108f775befa390dbcaddd4a Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Wed, 6 Sep 2017 13:06:41 +0200 Subject: gnu: modem-manager: Add missing input. * gnu/packages/freedesktop.scm (modem-manager)[inputs]: Add libcap. --- gnu/packages/freedesktop.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 3649093ea5..9f4d43320e 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -778,7 +778,8 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") (propagated-inputs `(("glib" ,glib))) ; required by mm-glib.pc (inputs - `(("libgudev" ,libgudev) + `(("libcap" ,libcap) + ("libgudev" ,libgudev) ("libmbim" ,libmbim) ("libqmi" ,libqmi) ("polkit" ,polkit))) -- cgit v1.2.3 From 7e38ba654a12f3c82e647c8b92d968be938d0867 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Wed, 6 Sep 2017 13:22:37 +0200 Subject: gnu: accountsservice: Add missing input. * gnu/packages/freedesktop.scm (accountsservice)[inputs]: Add libcap. --- gnu/packages/freedesktop.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 9f4d43320e..b1d09104dc 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -681,7 +681,8 @@ message bus.") ("intltool" ,intltool) ("pkg-config" ,pkg-config))) (inputs - `(("shadow" ,shadow) + `(("libcap" ,libcap) + ("shadow" ,shadow) ("polkit" ,polkit))) (home-page "http://www.freedesktop.org/wiki/Software/AccountsService/") (synopsis "D-Bus interface for user account query and manipulation") -- cgit v1.2.3 From 26ba09ba356fa7ce35ba0a337be5a30987a3c729 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Wed, 6 Sep 2017 23:14:08 +0200 Subject: gnu: elogind: Update to 232.4. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/freedesktop.scm (elogind): Update to 232.4. [arguments]: Add --with-rootlibexecdir. Signed-off-by: Ludovic Courtès --- gnu/packages/freedesktop.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index b1d09104dc..89dab53cbc 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -204,14 +204,14 @@ the freedesktop.org XDG Base Directory specification.") (define-public elogind (package (name "elogind") - (version "232.3") + (version "232.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/elogind/elogind/" "archive/v" version ".tar.gz")) (sha256 (base32 - "1g3bqzw5dhd5zaivqgbi13n5zy219qmkrk6vmbhfprs8qvyn843f")) + "1qcxian48z2dj5gfmp7brrngdydqf2jm00f4rjr5sy1myh8fy931")) (modules '((guix build utils))) (snippet '(begin @@ -231,6 +231,9 @@ the freedesktop.org XDG Base Directory specification.") "/lib/udev/rules.d") (string-append "--with-rootprefix=" (assoc-ref %outputs "out")) + (string-append "--with-rootlibexecdir=" + (assoc-ref %outputs "out") + "/libexec/elogind") ;; These are needed to ensure that lto linking works. "RANLIB=gcc-ranlib" "AR=gcc-ar" -- cgit v1.2.3 From c2ffcc4425946725f843466680b89b9b0aa1f45e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 7 Sep 2017 11:06:25 +0200 Subject: gnu: elogind: Add '-L' flag for libcap in libelogind.la. This fix allows us to revert this series of commits: 1b97e9261 * gnu: gdm: Add missing input. de0c89f18 * gnu: colord: Add missing input. 7e38ba654 * gnu: accountsservice: Add missing input. 166bc1b25 * gnu: network-manager: Add missing input. daae20894 * gnu: modem-manager: Add missing input. 1f919459e * gnu: udisks: Add missing input. 744e9d074 * gnu: mutter: Add missing input. 0cce140dc * gnu: gnome-session: Add missing input. 77c2476ae * gnu: polkit: Add missing input. 124ac301c * gnu: weston: Add missing input. 472c2223c * gnu: kmscon: Add missing input. * gnu/packages/freedesktop.scm (elogind)[arguments]: Add 'add-libcap-to-search-path' phase. (weston)[inputs]: Remove LIBCAP. (udisks): Likewise. (accountsservice): Likewise. (modem-manager): Likewise. * gnu/packages/gnome.scm (colord): Likewise (gnome-session): Likewise. (mutter): Likewise. (network-manager): Likewise. (gdm): Likewise. * gnu/packages/polkit.scm (polkit): Likewise. * gnu/packages/terminals.scm (kmscon): Likewise. --- gnu/packages/freedesktop.scm | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 89dab53cbc..83374bce6e 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -252,7 +252,17 @@ the freedesktop.org XDG Base Directory specification.") (substitute* "src/login/org.freedesktop.login1.service" (("^Exec=.*") (string-append "Exec=" (assoc-ref %outputs "out") - "/libexec/elogind/elogind\n")))))))) + "/libexec/elogind/elogind\n"))))) + (add-after 'install 'add-libcap-to-search-path + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Add a missing '-L' for libcap in libelogind.la. See + ;; . + (let ((libcap (assoc-ref inputs "libcap")) + (out (assoc-ref outputs "out"))) + (substitute* (string-append out "/lib/libelogind.la") + (("-lcap") + (string-append "-L" libcap "/lib -lcap"))) + #t)))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -451,7 +461,6 @@ applications, X servers (rootless or fullscreen) or other display servers.") `(("cairo" ,cairo-xcb) ("dbus" ,dbus) ("elogind" ,elogind) - ("libcap" ,libcap) ("libinput" ,libinput-minimal) ("libunwind" ,libunwind) ("libxcursor" ,libxcursor) @@ -583,7 +592,6 @@ Analysis and Reporting Technology) functionality.") `(("acl" ,acl) ("libatasmart" ,libatasmart) ("libgudev" ,libgudev) - ("libcap" ,libcap) ("polkit" ,polkit) ("util-linux" ,util-linux))) (outputs '("out" @@ -684,8 +692,7 @@ message bus.") ("intltool" ,intltool) ("pkg-config" ,pkg-config))) (inputs - `(("libcap" ,libcap) - ("shadow" ,shadow) + `(("shadow" ,shadow) ("polkit" ,polkit))) (home-page "http://www.freedesktop.org/wiki/Software/AccountsService/") (synopsis "D-Bus interface for user account query and manipulation") @@ -782,8 +789,7 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") (propagated-inputs `(("glib" ,glib))) ; required by mm-glib.pc (inputs - `(("libcap" ,libcap) - ("libgudev" ,libgudev) + `(("libgudev" ,libgudev) ("libmbim" ,libmbim) ("libqmi" ,libqmi) ("polkit" ,polkit))) -- cgit v1.2.3 From 505760ed08db7399bf5a21fd04272079fe7bca19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 7 Sep 2017 23:22:28 +0200 Subject: gnu: elogind: Remove unnecessary configure flag. * gnu/packages/freedesktop.scm (elogind)[arguments]: Remove "--with-libcap" configure flag, which is no longer needed. --- gnu/packages/freedesktop.scm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 83374bce6e..3307a4ae80 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -224,9 +224,7 @@ the freedesktop.org XDG Base Directory specification.") (arguments `(#:tests? #f ;FIXME: "make check" in the "po" directory fails. #:configure-flags - (list (string-append "--with-libcap=" - (assoc-ref %build-inputs "libcap")) - (string-append "--with-udevrulesdir=" + (list (string-append "--with-udevrulesdir=" (assoc-ref %outputs "out") "/lib/udev/rules.d") (string-append "--with-rootprefix=" -- cgit v1.2.3 From cd1ad27e6cdf90230d07efc18a8fcfe45494aad0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 7 Sep 2017 23:59:51 +0200 Subject: gnu: elogind: Use itself as the cgroup controller. Fixes a regression introduced in fa67d5654176b4b815832eaf259188e1486c65ab whereby elogind would fail to start with: Cannot determine cgroup we are running in: No data available Out of memory. thereby preventing log-in altogether. * gnu/packages/freedesktop.scm (elogind)[arguments]: Pass "--with-cgroup-controller=elogind". * gnu/tests/desktop.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/packages/freedesktop.scm | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gnu/packages/freedesktop.scm') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 3307a4ae80..606859771a 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -227,6 +227,12 @@ the freedesktop.org XDG Base Directory specification.") (list (string-append "--with-udevrulesdir=" (assoc-ref %outputs "out") "/lib/udev/rules.d") + + ;; Let elogind be its own cgroup controller, rather than relying + ;; on systemd or OpenRC. By default, 'configure' makes an + ;; incorrect guess. + "--with-cgroup-controller=elogind" + (string-append "--with-rootprefix=" (assoc-ref %outputs "out")) (string-append "--with-rootlibexecdir=" -- cgit v1.2.3