update elogind to 255

  • Open
  • quality assurance status badge
Details
5 participants
  • Julian Flake
  • Julian Flake
  • Ludovic Courtès
  • Maxim Cournoyer
  • Tobias Geerinckx-Rice
Owner
unassigned
Submitted by
Julian Flake
Severity
normal

Debbugs page

Julian Flake wrote 6 months ago
(address . bug-guix@gnu.org)
8734lriktu.fsf@uni-koblenz.de
Hi,

if possible, upgrade elogind to version 255. I (and maybe others)
have issues with `loginctl suspend`, see

best, nutcase

--
Dipl.-Inf. Julian Flake

University of Koblenz
Faculty 4: Computer Science
Institute for Software Technology
PB 20 16 02 | D-56016 Koblenz | Germany

Voice: +49 261 287 2787
Email: flake@uni-koblenz.de
Julian Flake wrote 6 months ago
[PATCH] elogind update to 252.24
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
2f3b1bcc5563fc367792d0a12e652c4a41100b74.1727127785.git.flake@uni-koblenz.de
This is an update to 252.24

Change-Id: Id1ab5f26a9296238724fd9873288ef5630d0a0b5
---
gnu/packages/freedesktop.scm | 6 +-
gnu/packages/patches/elogind-fix-rpath.patch | 60 --------------------
2 files changed, 3 insertions(+), 63 deletions(-)
delete mode 100644 gnu/packages/patches/elogind-fix-rpath.patch

Toggle diff (101 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 993bb84ec6..e1e5e2663c 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -39,6 +39,7 @@
;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
;;; Copyright © 2024 Wilko Meyer <w@wmeyer.eu>
+;;; Copyright © 2024 Julian Flake <flake@uni-koblenz.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -772,7 +773,7 @@ (define-public libxdg-basedir
(define-public elogind
(package
(name "elogind")
- (version "252.9")
+ (version "252.24")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -781,8 +782,7 @@ (define-public elogind
(file-name (git-file-name name version))
(sha256
(base32
- "049cfv97975x700s7lx4p9i22nv6v7j046iwkspxba7kr5qq7akw"))
- (patches (search-patches "elogind-fix-rpath.patch"))))
+ "06hgcnhk6wbsnhkrqblw23q2x2b6bijzcnqjzfdv9xqzc94pha90"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
diff --git a/gnu/packages/patches/elogind-fix-rpath.patch b/gnu/packages/patches/elogind-fix-rpath.patch
deleted file mode 100644
index 2a76cc467f..0000000000
--- a/gnu/packages/patches/elogind-fix-rpath.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Retrieved from https://github.com/elogind/elogind/issues/258
-
-From: Mark Hindley <mark@hindley.org.uk>
-Date: Wed, 24 May 2023 10:39:41 +0100
-Subject: Fixup_executable_rpath
-
-./meson.build sets
-
- install_rpath : rootlibexecdir
-
-however src/shared/meson.build sets
-
-libshared = shared_library(
- [snip]
- install_dir : rootpkglibdir
- )
----
- meson.build | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 694a2fd..a575f69 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2903,7 +2903,7 @@ executable('elogind',
- dependencies : [threads,
- libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
-
-@@ -2913,7 +2913,7 @@ exe = executable('loginctl',
- link_with : [libshared],
- dependencies : [threads,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -2923,7 +2923,7 @@ exe = executable('elogind-inhibit',
- include_directories : includes,
- link_with : [libshared],
- dependencies : [threads],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -4283,7 +4283,7 @@ executable('elogind-uaccess-command',
- libshared],
- dependencies: [libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
- #endif // 0

base-commit: 41e408eb1f93d96b549d345e2de74143220b7b76
--
2.46.0
Julian Flake wrote 6 months ago
Re: update elogind to 255
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
87cykurq2a.fsf@flake.de
The provided patch describes a minor upgrade of elogind to 252.24. Maybe
this already solves my specific issue with `loginctl suspend` while
using sway WM.

The major update to 255.x needs more attention, since configure flags
changed different tests fail.

I don't know, how to test this from a local git worktree of guix. I can
install it from my local worktree into my ~/.guix-profile, but this is
not picked up by my operating-system, which expects the binaries in my
system's profile, I guess.
Julian Flake wrote 6 months ago
[PATCH v2 0/2] removed reference to deleted patch
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
cover.1727154987.git.flake@uni-koblenz.de
v2: two separate commits:
1. update of elogind to 252.24
2. removal of unused patch

Julian Flake (2):
gnu: elogind update to 252.24
gnu: elogind: Remove unneeded rpath patch.

gnu/local.mk | 1 -
gnu/packages/freedesktop.scm | 6 +-
gnu/packages/patches/elogind-fix-rpath.patch | 60 --------------------
3 files changed, 3 insertions(+), 64 deletions(-)
delete mode 100644 gnu/packages/patches/elogind-fix-rpath.patch


base-commit: 41e408eb1f93d96b549d345e2de74143220b7b76
--
2.46.0
Julian Flake wrote 6 months ago
[PATCH v2 1/2] gnu: elogind update to 252.24
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
88de3dcb6f9bbeae65b9abc3d7e1a0917edc3559.1727154987.git.flake@uni-koblenz.de
Change-Id: I9697aea701dca738d6f97f7ae36c9f77b920d11a
---
gnu/packages/freedesktop.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (33 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 993bb84ec6..e1e5e2663c 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -39,6 +39,7 @@
;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
;;; Copyright © 2024 Wilko Meyer <w@wmeyer.eu>
+;;; Copyright © 2024 Julian Flake <flake@uni-koblenz.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -772,7 +773,7 @@ (define-public libxdg-basedir
(define-public elogind
(package
(name "elogind")
- (version "252.9")
+ (version "252.24")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -781,8 +782,7 @@ (define-public elogind
(file-name (git-file-name name version))
(sha256
(base32
- "049cfv97975x700s7lx4p9i22nv6v7j046iwkspxba7kr5qq7akw"))
- (patches (search-patches "elogind-fix-rpath.patch"))))
+ "06hgcnhk6wbsnhkrqblw23q2x2b6bijzcnqjzfdv9xqzc94pha90"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
--
2.46.0
Julian Flake wrote 6 months ago
[PATCH v2 2/2] gnu: elogind: Remove unneeded rpath patch.
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
89a8f197936641e628c2844348ca1a897df59f30.1727154987.git.flake@uni-koblenz.de
Change-Id: Id12590b45317a3d965ee4d715e696e5402de85e4
---
gnu/local.mk | 1 -
gnu/packages/patches/elogind-fix-rpath.patch | 60 --------------------
2 files changed, 61 deletions(-)
delete mode 100644 gnu/packages/patches/elogind-fix-rpath.patch

Toggle diff (80 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 8e7abc8a47..dd5d6e0c85 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1170,7 +1170,6 @@ dist_patch_DATA = \
%D%/packages/patches/elm-ghc9.2.patch \
%D%/packages/patches/elm-offline-package-registry.patch \
%D%/packages/patches/elm-reactor-static-files.patch \
- %D%/packages/patches/elogind-fix-rpath.patch \
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-elpy-dup-test-name.patch \
diff --git a/gnu/packages/patches/elogind-fix-rpath.patch b/gnu/packages/patches/elogind-fix-rpath.patch
deleted file mode 100644
index 2a76cc467f..0000000000
--- a/gnu/packages/patches/elogind-fix-rpath.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Retrieved from https://github.com/elogind/elogind/issues/258
-
-From: Mark Hindley <mark@hindley.org.uk>
-Date: Wed, 24 May 2023 10:39:41 +0100
-Subject: Fixup_executable_rpath
-
-./meson.build sets
-
- install_rpath : rootlibexecdir
-
-however src/shared/meson.build sets
-
-libshared = shared_library(
- [snip]
- install_dir : rootpkglibdir
- )
----
- meson.build | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 694a2fd..a575f69 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2903,7 +2903,7 @@ executable('elogind',
- dependencies : [threads,
- libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
-
-@@ -2913,7 +2913,7 @@ exe = executable('loginctl',
- link_with : [libshared],
- dependencies : [threads,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -2923,7 +2923,7 @@ exe = executable('elogind-inhibit',
- include_directories : includes,
- link_with : [libshared],
- dependencies : [threads],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -4283,7 +4283,7 @@ executable('elogind-uaccess-command',
- libshared],
- dependencies: [libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
- #endif // 0
--
2.46.0
Julian Flake wrote 6 months ago
Re: update elogind to 255
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . julian@flake.de)(name . Julian Flake)(address . flake@uni-koblenz.de)
87cykt394t.fsf@uni-koblenz.de
$ guix refresh elogind --list-dependent

Building the following 1680 packages would ensure 3220 dependent
packages are rebuilt [...]
Tobias Geerinckx-Rice wrote 6 months ago
Re: bug#73428: update elogind to 255
(address . bug-guix@gnu.org)(name . Julian Flake)(address . julian@flake.de)(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
31D4D07F-F706-4B12-BAE6-56E71EFF21EC@tobias.gr
Hi Julian,

On 23 September 2024 21:58:46 UTC, Julian Flake <julian@flake.de> wrote:
Toggle quote (3 lines)
>I don't know, how to test this from a local git worktree of guix. I can
>install it from my local worktree into my ~/.guix-profile

However you're installing it from your local checkout should also work for reconfiguring your system, e.g., with ./pre-inst-env.

If it doesn't, you need to make sure that your privilege escalation mechanisb (sudo?) isn't clobbering your environment (guix shell?).



Kind regards,

T G-R

Sent on the go. Excuse or enjoy my brevity.
Tobias Geerinckx-Rice wrote 6 months ago
(address . bug-guix@gnu.org)(name . Julian Flake)(address . julian@flake.de)(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)
0BFF2A92-08AA-4D2E-BE54-71B461ADDD21@tobias.gr
...or, if you need additional channels or can't get this to work, you can commit your changes, replace the guix channel URL with "file:///home/your/guix", guix pull --{allow-downgrades,disable-authentication}, and reconfigure as you would otherwise.

Kind regards,

T G-R

Sent on the go. Excuse or enjoy my brevity.
Julian Flake wrote 6 months ago
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . bug-guix@gnu.org)(name . Julian Flake)(address . flake@uni-koblenz.de)(address . 73428@debbugs.gnu.org)
87a5fxl4qk.fsf@uni-koblenz.de
Hi,

Toggle quote (8 lines)
> ...or, if you need additional channels or can't get this to
> work, you
> can commit your changes, replace the guix channel URL with
> "file:///home/your/guix", guix pull
> --{allow-downgrades,disable-authentication}, and reconfigure as
> you
> would otherwise.

that's actually exactly, what I started this morning. Building all
the packages takes a lot of time (and is still running), of
course.
Julian Flake wrote 6 months ago
(address . 73428@debbugs.gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)
87ldzgrgtg.fsf@uni-koblenz.de
Can we use some branch at the QA / Build server for testing, if
all dependent packages actually build with this 252.24 patch?
Maxim Cournoyer wrote 6 months ago
control message for bug #73428
(address . control@debbugs.gnu.org)
87plori1qz.fsf@gmail.com
tags 73428 + patch
quit
Ludovic Courtès wrote 5 months ago
(address . control@debbugs.gnu.org)
87bk045089.fsf@gnu.org
reassign 73428 guix-patches
quit
Julian Flake wrote 5 months ago
Re: update elogind to 255
(address . 73428@debbugs.gnu.org)(name . Julian Flake)(address . julian@flake.de)(name . Ludovic Courtès)(address . ludo@gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(name . Julian Flake)(address . flake@uni-koblenz.de)
87o7446e9f.fsf@flake.de
Toggle quote (12 lines)
> > ...or, if you need additional channels or can't get this to
> > work, you
> > can commit your changes, replace the guix channel URL with
> > "file:///home/your/guix", guix pull
> > --{allow-downgrades,disable-authentication}, and reconfigure as
> > you
> > would otherwise.
>
> that's actually exactly, what I started this morning. Building all
> the packages takes a lot of time (and is still running), of
> course.

I had to interrupt the local build after some time and after some
successful package buildd, since it started rebuilding chromium,
libreoffice and other packages that would take too much time on my day job machine.

Therefore, it would be great, if check building the dependents could be
offloaded to qa.guix.gnu.org (or similar?). How is that triggerd? The "patch" tag
does not trigger that, right?

Best Regards,
Julian
Maxim Cournoyer wrote 5 months ago
(name . Julian Flake)(address . julian@flake.de)(name . Ludovic Courtès)(address . ludo@gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(name . Julian Flake)(address . flake@uni-koblenz.de)(address . 73428@debbugs.gnu.org)
874j5vtjib.fsf@gmail.com
Hi Julian,

Julian Flake <julian@flake.de> writes:

Toggle quote (20 lines)
>> > ...or, if you need additional channels or can't get this to
>> > work, you
>> > can commit your changes, replace the guix channel URL with
>> > "file:///home/your/guix", guix pull
>> > --{allow-downgrades,disable-authentication}, and reconfigure as
>> > you
>> > would otherwise.
>>
>> that's actually exactly, what I started this morning. Building all
>> the packages takes a lot of time (and is still running), of
>> course.
>
> I had to interrupt the local build after some time and after some
> successful package buildd, since it started rebuilding chromium,
> libreoffice and other packages that would take too much time on my day job machine.
>
> Therefore, it would be great, if check building the dependents could be
> offloaded to qa.guix.gnu.org (or similar?). How is that triggerd? The "patch" tag
> does not trigger that, right?

I think QA won't currently attempt to build patch series that would
cause more than 1000 rebuilds.

--
Thanks,
Maxim
Julian Flake wrote 5 months ago
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(name . Ludovic Courtès)(address . ludo@gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(name . Julian Flake)(address . flake@uni-koblenz.de)(address . 73428@debbugs.gnu.org)
87ikubdpki.fsf@uni-koblenz.de
Hi Maxim,

On Wed, Oct 02 2024, Maxim Cournoyer wrote:

Toggle quote (4 lines)
> I think QA won't currently attempt to build patch series that
> would
> cause more than 1000 rebuilds.

thanks for the info. How can this patch be tested, then? Is there
a lack of resources (metal)?

Best Regards,
Julian
Maxim Cournoyer wrote 2 months ago
Re: bug#73428: update elogind to 255
(name . Julian Flake)(address . flake@uni-koblenz.de)(name . Ludovic Courtès)(address . ludo@gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 73428@debbugs.gnu.org)
87r04tgjms.fsf_-_@gmail.com
Hi Julian,

Apologies for failing to produce a timely reply.

Julian Flake <flake@uni-koblenz.de> writes:

Toggle quote (10 lines)
> Hi Maxim,
>
> On Wed, Oct 02 2024, Maxim Cournoyer wrote:
>
>> I think QA won't currently attempt to build patch series that would
>> cause more than 1000 rebuilds.
>
> thanks for the info. How can this patch be tested, then? Is there a
> lack of resources (metal)?

Currently we typically create a one-of-a-time branch/job to build the
change on ci.guix.gnu.org.

--
Thanks,
Maxim
Maxim Cournoyer wrote 2 months ago
[PATCH v2] gnu: elogind: Update to 255.17.
(address . 73428@debbugs.gnu.org)(address . ludo@gnu.org)(address . me@tobias.gr)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . flake@uni-koblenz.de)
51298396896ad927aad68552fd781c196dca0885.1737678129.git.maxim.cournoyer@gmail.com
* gnu/packages/freedesktop.scm (elogind): Update to 255.17.
[source]: Delete patches.
[configure-flags]: Add mode and libexecdir options. Remove obsolete
rootlibexecdir, dbussessionservicedir and dbus-interfaces-dir ones. Update
'man' option value to 'enabled'.
[phases] {do-not-install-empty-/var/log/elogind-dir}
{patch-tzdata}: New phases.
{adjust-tests}: Fix FHS assumptions in a few test files. Re-instate the
cgroup and copy_holes tests. Disable the cgroup-util, mountpoint-util,
bus-creds, login and sd-device tests.
[native-inputs]: Remove m4. Add tzdata.
* gnu/packages/patches/elogind-fix-rpath.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.

Change-Id: I2426532b6b5143ad5e30ca879858356c4b9a2c3e
---

(no changes since v1)

gnu/local.mk | 1 -
gnu/packages/freedesktop.scm | 74 ++++++++++++++------
gnu/packages/patches/elogind-fix-rpath.patch | 60 ----------------
3 files changed, 54 insertions(+), 81 deletions(-)
delete mode 100644 gnu/packages/patches/elogind-fix-rpath.patch

Toggle diff (237 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 5091f93eb8..d3fd9ecfa5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1202,7 +1202,6 @@ dist_patch_DATA = \
%D%/packages/patches/elm-ghc9.2.patch \
%D%/packages/patches/elm-offline-package-registry.patch \
%D%/packages/patches/elm-reactor-static-files.patch \
- %D%/packages/patches/elogind-fix-rpath.patch \
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-elpy-dup-test-name.patch \
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index c6f18e9949..380464801d 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -27,7 +27,7 @@
;;; Copyright © 2021 Robby Zambito <contact@robbyzambito.me>
;;; Copyright © 2021, 2022, 2023 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021, 2022, 2024 John Kehayias <john.kehayias@protonmail.com>
-;;; Copyright © 2021-2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021-2025 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
@@ -823,7 +823,7 @@ (define-public libxdg-basedir
(define-public elogind
(package
(name "elogind")
- (version "252.9")
+ (version "255.17")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -832,8 +832,7 @@ (define-public elogind
(file-name (git-file-name name version))
(sha256
(base32
- "049cfv97975x700s7lx4p9i22nv6v7j046iwkspxba7kr5qq7akw"))
- (patches (search-patches "elogind-fix-rpath.patch"))))
+ "0cb6p559281dzh24is91v6d4v4kz45yhyizibi4sfql9nign865h"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@@ -842,11 +841,8 @@ (define-public elogind
(libexec (string-append out "/libexec/elogind"))
(dbus-data (string-append out "/share/dbus-1"))
(dbuspolicy (string-append dbus-data "/system.d"))
- (dbussessionservice (string-append dbus-data "/services"))
(dbussystemservice (string-append dbus-data
"/system-services"))
- (dbusinterfaces (string-append dbus-data "/interfaces"))
-
#$@(if (not (target-riscv64?))
#~((kexec-tools #$(this-package-input "kexec-tools")))
#~())
@@ -860,13 +856,11 @@ (define-public elogind
(poweroff-path (string-append shepherd "/sbin/shutdown"))
(reboot-path (string-append shepherd "/sbin/reboot")))
(list
- (string-append "-Drootprefix=" out)
+ "-Dmode=release"
+ (string-append "-Dlibexecdir=" libexec)
(string-append "-Dsysconfdir=" sysconf)
- (string-append "-Drootlibexecdir=" libexec)
(string-append "-Ddbuspolicydir=" dbuspolicy)
- (string-append "-Ddbussessionservicedir=" dbussessionservice)
(string-append "-Ddbussystemservicedir=" dbussystemservice)
- (string-append "-Ddbus-interfaces-dir=" dbusinterfaces)
(string-append "-Dc_link_args=-Wl,-rpath=" libexec)
(string-append "-Dcpp_link_args=-Wl,-rpath=" libexec)
(string-append "-Dhalt-path=" halt-path)
@@ -877,7 +871,7 @@ (define-public elogind
(string-append "-Dreboot-path=" reboot-path)
(string-append "-Dnologin-path=" nologin-path)
"-Dcgroup-controller=elogind"
- "-Dman=true"
+ "-Dman=enabled"
;; Disable some tests.
"-Dslow-tests=false"
;; Adjust the default user shell to /bin/sh (otherwise it is set
@@ -885,6 +879,18 @@ (define-public elogind
"-Ddefault-user-shell=/bin/sh"))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-tzdata
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (substitute* "src/basic/time-util.c"
+ (("/usr/share/zoneinfo")
+ (search-input-directory (or native-inputs inputs)
+ "share/zoneinfo")))))
+ (add-after 'unpack 'do-not-install-empty-/var/log/elogind-dir
+ (lambda _
+ ;; This is the elogind state directory, which is not writable in
+ ;; the build environment.
+ (substitute* "meson.build"
+ (("install_emptydir\\(elogindstatedir)") ""))))
(add-after 'unpack 'fix-pkttyagent-path
(lambda _
(substitute* "meson.build"
@@ -901,18 +907,46 @@ (define-public elogind
(("PKGSYSCONFDIR") "\"/etc/elogind\""))))
(add-after 'unpack 'adjust-tests
(lambda _
+ ;; A few tests expect /var/tmp to exists, but it doesn't in the
+ ;; container.
+ (substitute* '("src/test/test-xattr-util.c"
+ "src/test/test-copy.c"
+ "src/test/test-fs-util.c")
+ (("/var/tmp/")
+ "/tmp/"))
+ (substitute* "src/test/test-xattr-util.c"
+ ;; The xattr-util test depends on /usr; patch it to use /tmp
+ ;; instead.
+ (("fd, \"usr\", \"user.idontexist\"")
+ "fd, \"/tmp\", \"user.idontexist\""))
+ (substitute* '("src/test/test-chase.c"
+ "src/test/test-fd-util.c")
+ ;; Many checks use /usr, which doesn't exist in our
+ ;; environment.
+ (("/usr")
+ "/tmp")
+ (("\"usr\"")
+ "\"tmp\""))
(substitute* "src/test/meson.build"
- ((".*'test-cgroup.c'.*") "")) ;no cgroup in container
+ ;; Requires cgroup support.
+ ((".*'test-cgroup-util\\.c'.*") "")
+ ;; Requires privilege to create mount namespaces.
+ ((".*'test-mountpoint-util\\.c'.*") ""))
+ (substitute* "src/libelogind/meson.build"
+ ;; The bus-creds test fails due to requiring cgroups.
+ ((".*'sd-bus/test-bus-creds.c'.*") "")
+ ;; The login test fails due to 'sd_pid_get_slice' returning
+ ;; NULL.
+ ((".*'sd-login/test-login.c'.*") "")
+ ;; The sd-device test fails due to 'devname_from_devnum'
+ ;; returning NULL.
+ ((".*'sd-device/test-sd-device.c'.*") ""))
;; This test tries to copy some bytes from /usr/lib/os-release,
;; which does not exist in the build container. Choose something
;; more likely to be available.
(substitute* "src/test/test-copy.c"
(("/usr/lib/os-release")
- "/etc/passwd")
- ;; Skip the copy_holes test, which fails for unknown reasons
- ;; (see: https://github.com/elogind/elogind/issues/261).
- (("TEST_RET\\(copy_holes).*" all)
- (string-append all " return 77;\n")))
+ "/etc/passwd"))
;; Use a shebang that works in the build container.
(substitute* "src/test/test-exec-util.c"
(("#!/bin/sh")
@@ -948,11 +982,11 @@ (define-public elogind
docbook-xsl
gettext-minimal
gperf
- m4
pkg-config
python
python-jinja2
- libxslt))
+ libxslt
+ tzdata))
(inputs
(append
(if (not (target-riscv64?))
diff --git a/gnu/packages/patches/elogind-fix-rpath.patch b/gnu/packages/patches/elogind-fix-rpath.patch
deleted file mode 100644
index 2a76cc467f..0000000000
--- a/gnu/packages/patches/elogind-fix-rpath.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Retrieved from https://github.com/elogind/elogind/issues/258
-
-From: Mark Hindley <mark@hindley.org.uk>
-Date: Wed, 24 May 2023 10:39:41 +0100
-Subject: Fixup_executable_rpath
-
-./meson.build sets
-
- install_rpath : rootlibexecdir
-
-however src/shared/meson.build sets
-
-libshared = shared_library(
- [snip]
- install_dir : rootpkglibdir
- )
----
- meson.build | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 694a2fd..a575f69 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2903,7 +2903,7 @@ executable('elogind',
- dependencies : [threads,
- libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
-
-@@ -2913,7 +2913,7 @@ exe = executable('loginctl',
- link_with : [libshared],
- dependencies : [threads,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -2923,7 +2923,7 @@ exe = executable('elogind-inhibit',
- include_directories : includes,
- link_with : [libshared],
- dependencies : [threads],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -4283,7 +4283,7 @@ executable('elogind-uaccess-command',
- libshared],
- dependencies: [libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
- #endif // 0

base-commit: a1074ecbcb147abe9ffbb1774f11be7704a41c8a
--
2.47.1
Maxim Cournoyer wrote 2 months ago
Re: update elogind to 255
(name . Julian Flake)(address . flake@uni-koblenz.de)(name . Ludovic Courtès)(address . ludo@gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 73428@debbugs.gnu.org)
87msfhgio1.fsf@gmail.com
Hi Julian,

Julian Flake <flake@uni-koblenz.de> writes:

Toggle quote (10 lines)
> Hi Maxim,
>
> On Wed, Oct 02 2024, Maxim Cournoyer wrote:
>
>> I think QA won't currently attempt to build patch series that would
>> cause more than 1000 rebuilds.
>
> thanks for the info. How can this patch be tested, then? Is there a
> lack of resources (metal)?

I've just sent a patch I had laying around for elogind 255, and added a

Let's keep an eye on things and merge it if it doesn't break anything.

--
Thanks,
Maxim
Maxim Cournoyer wrote 2 months ago
[PATCH v3] gnu: elogind: Update to 255.17.
(address . 73428@debbugs.gnu.org)(address . ludo@gnu.org)(address . me@tobias.gr)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . flake@uni-koblenz.de)
28ef6853d3bdd745ed3eacb5e2c2c5252a79d76e.1737730596.git.maxim.cournoyer@gmail.com
* gnu/packages/freedesktop.scm (elogind): Update to 255.17.
[source]: Delete patches.
[configure-flags]: Add mode and libexecdir options. Remove obsolete
rootlibexecdir, dbussessionservicedir and dbus-interfaces-dir ones. Update
'man' option value to 'enabled'.
[phases] {do-not-install-empty-/var/log/elogind-dir}
{patch-tzdata}: New phases.
{adjust-tests}: Fix FHS assumptions in a few test files. Re-instate the
cgroup and copy_holes tests. Disable the cgroup-util, mountpoint-util,
bus-creds, login and sd-device tests.
[native-inputs]: Remove m4. Add tzdata.
* gnu/packages/patches/elogind-fix-rpath.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.

Change-Id: I2426532b6b5143ad5e30ca879858356c4b9a2c3e
---

Changes in v3:
- rebased

gnu/local.mk | 1 -
gnu/packages/freedesktop.scm | 74 ++++++++++++++------
gnu/packages/patches/elogind-fix-rpath.patch | 60 ----------------
3 files changed, 54 insertions(+), 81 deletions(-)
delete mode 100644 gnu/packages/patches/elogind-fix-rpath.patch

Toggle diff (237 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 5091f93eb8..d3fd9ecfa5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1202,7 +1202,6 @@ dist_patch_DATA = \
%D%/packages/patches/elm-ghc9.2.patch \
%D%/packages/patches/elm-offline-package-registry.patch \
%D%/packages/patches/elm-reactor-static-files.patch \
- %D%/packages/patches/elogind-fix-rpath.patch \
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-elpy-dup-test-name.patch \
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index c6f18e9949..380464801d 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -27,7 +27,7 @@
;;; Copyright © 2021 Robby Zambito <contact@robbyzambito.me>
;;; Copyright © 2021, 2022, 2023 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021, 2022, 2024 John Kehayias <john.kehayias@protonmail.com>
-;;; Copyright © 2021-2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021-2025 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
@@ -823,7 +823,7 @@ (define-public libxdg-basedir
(define-public elogind
(package
(name "elogind")
- (version "252.9")
+ (version "255.17")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -832,8 +832,7 @@ (define-public elogind
(file-name (git-file-name name version))
(sha256
(base32
- "049cfv97975x700s7lx4p9i22nv6v7j046iwkspxba7kr5qq7akw"))
- (patches (search-patches "elogind-fix-rpath.patch"))))
+ "0cb6p559281dzh24is91v6d4v4kz45yhyizibi4sfql9nign865h"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@@ -842,11 +841,8 @@ (define-public elogind
(libexec (string-append out "/libexec/elogind"))
(dbus-data (string-append out "/share/dbus-1"))
(dbuspolicy (string-append dbus-data "/system.d"))
- (dbussessionservice (string-append dbus-data "/services"))
(dbussystemservice (string-append dbus-data
"/system-services"))
- (dbusinterfaces (string-append dbus-data "/interfaces"))
-
#$@(if (not (target-riscv64?))
#~((kexec-tools #$(this-package-input "kexec-tools")))
#~())
@@ -860,13 +856,11 @@ (define-public elogind
(poweroff-path (string-append shepherd "/sbin/shutdown"))
(reboot-path (string-append shepherd "/sbin/reboot")))
(list
- (string-append "-Drootprefix=" out)
+ "-Dmode=release"
+ (string-append "-Dlibexecdir=" libexec)
(string-append "-Dsysconfdir=" sysconf)
- (string-append "-Drootlibexecdir=" libexec)
(string-append "-Ddbuspolicydir=" dbuspolicy)
- (string-append "-Ddbussessionservicedir=" dbussessionservice)
(string-append "-Ddbussystemservicedir=" dbussystemservice)
- (string-append "-Ddbus-interfaces-dir=" dbusinterfaces)
(string-append "-Dc_link_args=-Wl,-rpath=" libexec)
(string-append "-Dcpp_link_args=-Wl,-rpath=" libexec)
(string-append "-Dhalt-path=" halt-path)
@@ -877,7 +871,7 @@ (define-public elogind
(string-append "-Dreboot-path=" reboot-path)
(string-append "-Dnologin-path=" nologin-path)
"-Dcgroup-controller=elogind"
- "-Dman=true"
+ "-Dman=enabled"
;; Disable some tests.
"-Dslow-tests=false"
;; Adjust the default user shell to /bin/sh (otherwise it is set
@@ -885,6 +879,18 @@ (define-public elogind
"-Ddefault-user-shell=/bin/sh"))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-tzdata
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (substitute* "src/basic/time-util.c"
+ (("/usr/share/zoneinfo")
+ (search-input-directory (or native-inputs inputs)
+ "share/zoneinfo")))))
+ (add-after 'unpack 'do-not-install-empty-/var/log/elogind-dir
+ (lambda _
+ ;; This is the elogind state directory, which is not writable in
+ ;; the build environment.
+ (substitute* "meson.build"
+ (("install_emptydir\\(elogindstatedir)") ""))))
(add-after 'unpack 'fix-pkttyagent-path
(lambda _
(substitute* "meson.build"
@@ -901,18 +907,46 @@ (define-public elogind
(("PKGSYSCONFDIR") "\"/etc/elogind\""))))
(add-after 'unpack 'adjust-tests
(lambda _
+ ;; A few tests expect /var/tmp to exists, but it doesn't in the
+ ;; container.
+ (substitute* '("src/test/test-xattr-util.c"
+ "src/test/test-copy.c"
+ "src/test/test-fs-util.c")
+ (("/var/tmp/")
+ "/tmp/"))
+ (substitute* "src/test/test-xattr-util.c"
+ ;; The xattr-util test depends on /usr; patch it to use /tmp
+ ;; instead.
+ (("fd, \"usr\", \"user.idontexist\"")
+ "fd, \"/tmp\", \"user.idontexist\""))
+ (substitute* '("src/test/test-chase.c"
+ "src/test/test-fd-util.c")
+ ;; Many checks use /usr, which doesn't exist in our
+ ;; environment.
+ (("/usr")
+ "/tmp")
+ (("\"usr\"")
+ "\"tmp\""))
(substitute* "src/test/meson.build"
- ((".*'test-cgroup.c'.*") "")) ;no cgroup in container
+ ;; Requires cgroup support.
+ ((".*'test-cgroup-util\\.c'.*") "")
+ ;; Requires privilege to create mount namespaces.
+ ((".*'test-mountpoint-util\\.c'.*") ""))
+ (substitute* "src/libelogind/meson.build"
+ ;; The bus-creds test fails due to requiring cgroups.
+ ((".*'sd-bus/test-bus-creds.c'.*") "")
+ ;; The login test fails due to 'sd_pid_get_slice' returning
+ ;; NULL.
+ ((".*'sd-login/test-login.c'.*") "")
+ ;; The sd-device test fails due to 'devname_from_devnum'
+ ;; returning NULL.
+ ((".*'sd-device/test-sd-device.c'.*") ""))
;; This test tries to copy some bytes from /usr/lib/os-release,
;; which does not exist in the build container. Choose something
;; more likely to be available.
(substitute* "src/test/test-copy.c"
(("/usr/lib/os-release")
- "/etc/passwd")
- ;; Skip the copy_holes test, which fails for unknown reasons
- ;; (see: https://github.com/elogind/elogind/issues/261).
- (("TEST_RET\\(copy_holes).*" all)
- (string-append all " return 77;\n")))
+ "/etc/passwd"))
;; Use a shebang that works in the build container.
(substitute* "src/test/test-exec-util.c"
(("#!/bin/sh")
@@ -948,11 +982,11 @@ (define-public elogind
docbook-xsl
gettext-minimal
gperf
- m4
pkg-config
python
python-jinja2
- libxslt))
+ libxslt
+ tzdata))
(inputs
(append
(if (not (target-riscv64?))
diff --git a/gnu/packages/patches/elogind-fix-rpath.patch b/gnu/packages/patches/elogind-fix-rpath.patch
deleted file mode 100644
index 2a76cc467f..0000000000
--- a/gnu/packages/patches/elogind-fix-rpath.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Retrieved from https://github.com/elogind/elogind/issues/258
-
-From: Mark Hindley <mark@hindley.org.uk>
-Date: Wed, 24 May 2023 10:39:41 +0100
-Subject: Fixup_executable_rpath
-
-./meson.build sets
-
- install_rpath : rootlibexecdir
-
-however src/shared/meson.build sets
-
-libshared = shared_library(
- [snip]
- install_dir : rootpkglibdir
- )
----
- meson.build | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 694a2fd..a575f69 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2903,7 +2903,7 @@ executable('elogind',
- dependencies : [threads,
- libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
-
-@@ -2913,7 +2913,7 @@ exe = executable('loginctl',
- link_with : [libshared],
- dependencies : [threads,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -2923,7 +2923,7 @@ exe = executable('elogind-inhibit',
- include_directories : includes,
- link_with : [libshared],
- dependencies : [threads],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootbindir)
- public_programs += [exe]
-@@ -4283,7 +4283,7 @@ executable('elogind-uaccess-command',
- libshared],
- dependencies: [libacl,
- libudev],
-- install_rpath : rootlibexecdir,
-+ install_rpath : rootpkglibdir,
- install : true,
- install_dir : rootlibexecdir)
- #endif // 0

base-commit: 9b98e4b0ee45fb712d815601645fb561a83b4e25
--
2.47.1
Julian Flake wrote 2 months ago
Re: bug#73428: update elogind to 255
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(name . Ludovic Courtès)(address . ludo@gnu.org)(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 73428@debbugs.gnu.org)
87bjvwosed.fsf@uni-koblenz.de
Hi Maxim,

On Fri, Jan 24 2025, Maxim Cournoyer wrote:

Toggle quote (2 lines)
> Apologies for failing to produce a timely reply.

no problem. Great to see progress now, thank you!

Best Regards,
Julian
-----BEGIN PGP SIGNATURE-----

iHMEAREKADMWIQSZos45zYG9CgQjO52pmOo730U57wUCZ5P7OhUcZmxha2VAdW5p
LWtvYmxlbnouZGUACgkQqZjqO99FOe/ilACgpRQh9RapR8ucHzs21HVNkPHMog8A
n2i41YdZFX2TFznpui7Xpa/XcsuQ
=JCEn
-----END PGP SIGNATURE-----

?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 73428@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 73428
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help