commit: 23fbf79485396bc2c06d387a7d6fdab37d551452
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 23 18:13:43 2025 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Nov 23 20:56:03 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23fbf794
sys-auth/elogind: add 255.22
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
sys-auth/elogind/Manifest | 1 +
sys-auth/elogind/elogind-255.22.ebuild | 197 +++++++++++++++++++++++++++++++++
2 files changed, 198 insertions(+)
diff --git a/sys-auth/elogind/Manifest b/sys-auth/elogind/Manifest
index b7f4a50317ba..e94cd509c8be 100644
--- a/sys-auth/elogind/Manifest
+++ b/sys-auth/elogind/Manifest
@@ -1,2 +1,3 @@
DIST elogind-252.9.tar.gz 1922777 BLAKE2B
dd566125e407b3479a44b007890f97c9c87a325b3fed2d3505499d2163f113affd998e14b1c1fc50b9b86b0d155b51dae344dcc1cddafb6a48c631d0a0f00c9a
SHA512
eed620cbc2f03bfeae6a80c9a421c21d3293fa40adffb96c7e4d86508c06712041f6623fb2bac15ecbb85faca4b5674ea6423b3067840809fb27d023fd9e5ffd
DIST elogind-255.17.tar.gz 2183733 BLAKE2B
d7d239e8ff946ed430df6245dba548fc39e7c9663b0cbcecbbf338fe9a13083f7143ddf34e493969dc183b17c3c986bf137bc8a8ce549c5bf10b73029fa7a8e7
SHA512
fb86f9d627792bbd1ab42e54345b2b670c073a077f65cdf860053ab0811c0892807c4f971820d7e703f7daa01f398cbd2dfb50ccdfc83cec1467308f7a4c2090
+DIST elogind-255.22.tar.gz 2139687 BLAKE2B
ed7f8ea68c79813e5a2bbe82dcc0d05e3e240934c255792c0931c58cc82e8639e185075692f89f017d2a70bb7a50ab07139d51431e36156bead4713d11bcd7f7
SHA512
7b1e1c6cc917bcaac1b6f8ac538b355cf53a4236f1c5248bdc44caec25d012b6bced5395dc3a0d77c4e2783f196d939e0edbabd7c901124e683c54e298c05b03
diff --git a/sys-auth/elogind/elogind-255.22.ebuild
b/sys-auth/elogind/elogind-255.22.ebuild
new file mode 100644
index 000000000000..e28021cbf23b
--- /dev/null
+++ b/sys-auth/elogind/elogind-255.22.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+
+if [[ ${PV} = *9999* ]]; then
+ EGIT_BRANCH="v255-stable"
+ EGIT_REPO_URI="https://github.com/elogind/elogind.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/V${PV}.tar.gz
-> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64
~riscv ~s390 ~sparc ~x86"
+fi
+
+inherit eapi9-ver linux-info meson pam python-any-r1 udev xdg-utils
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+IUSE="+acl audit cgroup-hybrid debug doc +pam +policykit selinux test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ virtual/pkgconfig
+ $(python_gen_any_dep 'dev-python/jinja2[${PYTHON_USEDEP}]')
+ $(python_gen_any_dep 'dev-python/lxml[${PYTHON_USEDEP}]')
+"
+DEPEND="
+ audit? ( sys-process/audit )
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( sys-libs/pam )
+ selinux? ( sys-libs/libselinux )
+"
+RDEPEND="${DEPEND}
+ !sys-apps/systemd
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+DOCS=( README.md )
+
+PATCHES=(
+ # all downstream patches:
+ "${FILESDIR}/${PN}-252.9-nodocs.patch"
+ # See also:
+ # https://github.com/elogind/elogind/issues/285
+ "${FILESDIR}/${PN}-255.17-revert-s2idle.patch" # bug 939042
+)
+
+python_check_deps() {
+ python_has_version "dev-python/jinja2[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/lxml[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SIGNALFD ~TIMERFD"
+
+ use kernel_linux && linux-info_pkg_setup
+}
+
+src_prepare() {
+ default
+ xdg_environment_reset
+
+ # don't cleanup /dev/shm/ on logout on logout
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949698
+ sed -e "s/#RemoveIPC=yes/RemoveIPC=no/" \
+ -i src/login/logind.conf.in || die
+}
+
+src_configure() {
+ if use cgroup-hybrid; then
+ cgroupmode="hybrid"
+ else
+ cgroupmode="unified"
+ fi
+
+ python_setup
+
+ EMESON_BUILDTYPE="$(usex debug debug release)"
+
+ local emesonargs=(
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+ -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+ -Dudevrulesdir="${EPREFIX}$(get_udevdir)"/rules.d
+ --libexecdir="lib/elogind"
+ --localstatedir="${EPREFIX}"/var
+
-Dbashcompletiondir="${EPREFIX}/usr/share/bash-completion/completions"
+ -Dman=auto
+ -Dsmack=true
+ -Dcgroup-controller=openrc
+ -Ddefault-hierarchy=${cgroupmode}
+ -Ddefault-kill-user-processes=false
+ -Dacl=$(usex acl enabled disabled)
+ -Daudit=$(usex audit enabled disabled)
+ -Dhtml=$(usex doc auto disabled)
+ -Dpam=$(usex pam enabled disabled)
+ -Dpamlibdir="$(getpam_mod_dir)"
+ -Dselinux=$(usex selinux enabled disabled)
+ -Dtests=$(usex test true false)
+ -Dutmp=$(usex elibc_musl false true)
+ -Dmode=release
+
+ # Ensure consistency between merged-usr and split-usr (bug
945965)
+ -Dhalt-path="${EPREFIX}/sbin/halt"
+ -Dkexec-path="${EPREFIX}/usr/sbin/kexec"
+ -Dnologin-path="${EPREFIX}/sbin/nologin"
+ -Dpoweroff-path="${EPREFIX}/sbin/poweroff"
+ -Dreboot-path="${EPREFIX}/sbin/reboot"
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ keepdir /var/lib/elogind
+
+ newinitd "${FILESDIR}"/${PN}.init-r1 ${PN}
+
+ newconfd "${FILESDIR}"/${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ udev_reload
+ if ! use pam; then
+ ewarn "${PN} will not be managing user logins/seats without
USE=\"pam\"!"
+ ewarn "In other words, it will be useless for most
applications."
+ ewarn
+ fi
+ if ! use policykit; then
+ ewarn "loginctl will not be able to perform privileged
operations without"
+ ewarn "USE=\"policykit\"! That means e.g. no suspend or
hibernate."
+ ewarn
+ fi
+ if [[ "$(rc-config list boot | grep elogind)" != "" ]]; then
+ elog "elogind is currently started from boot runlevel."
+ elif [[ "$(rc-config list default | grep elogind)" != "" ]]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ elog "elogind is currently not started from any runlevel."
+ elog "You may add it to the boot runlevel by:"
+ elog "# rc-update add elogind boot"
+ elog
+ elog "Alternatively, you can leave elogind out of any"
+ elog "runlevel. It will then be started automatically"
+ if use pam; then
+ elog "when the first service calls it via dbus, or"
+ elog "the first user logs into the system."
+ else
+ elog "when the first service calls it via dbus."
+ fi
+ fi
+
+ if ver_replacing -lt 252.9; then
+ elog "Starting with release 252.9 the sleep configuration is
now done"
+ elog "in the /etc/elogind/sleep.conf. Should you use
non-default sleep"
+ elog "configuration remember to migrate those to new
configuration file."
+ fi
+
+ local file files
+ # find custom hooks excluding known (nvidia-drivers, sys-power/tlp)
+ if [[ -d "${EROOT}"/$(get_libdir)/elogind/system-sleep ]]; then
+ readarray -t files < <(find
"${EROOT}"/$(get_libdir)/elogind/system-sleep/ \
+ -type f \( -not -iname ".keep_dir" -a \
+ -not -iname "nvidia" -a \
+ -not -iname "49-tlp-sleep" \) || die)
+ fi
+ if [[ ${#files[@]} -gt 0 ]]; then
+ ewarn "*** Custom hooks in obsolete path detected ***"
+ for file in "${files[@]}"; do
+ ewarn " ${file}"
+ done
+ ewarn "Move these custom hooks to
${EROOT}/etc/elogind/system-sleep/ instead."
+ fi
+}
+
+pkg_postrm() {
+ udev_reload
+}