diff --git a/sys-auth/elogind/Manifest b/sys-auth/elogind/Manifest new file mode 100644 index 0000000..bcb1bc4 --- /dev/null +++ b/sys-auth/elogind/Manifest @@ -0,0 +1,11 @@ +AUX elogind-252.9-nodocs.patch 870 BLAKE2B ea5a025554999f96c59ab88e3d7c54a331a82cd44ea268a6b131f81b9527939c1da1e2ba74b6635a02b1a0d4167d605614f49b46b39e4769f65eb4c6acfd706a SHA512 027f1d419f9d473835806b4d5da9b129677f23175ab332431260f63eebfd7d31657c3868442ac33798795f61136da2cf6912b1a61c7737fd458146284f35f5b2 +AUX elogind-255.17-revert-s2idle.patch 2435 BLAKE2B ebc8b127757c41ce3a4d5f0d6cdf77978598bcd15bd3ab2c75fa1607632244cf58a34696cb8106c891d0e05eb6a9fd03e98c5b9a09220f9be3d52f4dbb2dac61 SHA512 4d2a4ef8db28062179cc3e8e0d25c2ea87581a7fe74199781d3b867d87518e49e91d595d22081426b4263e013c9f64a25be8460e567b776ed33a616ffa713495 +AUX elogind-255.22-musl-deux.patch 1471 BLAKE2B 5928b0d3db52b462b18cfb5215bb1daba17de1ffc95500ee5719d1ccc7a84d60138e59d741b26982038d1d8e6ca676d8edcf39239d85354fbdde14daecf2fa17 SHA512 52b8cadfb83f359e8cea7c5237e73a9377f10329238de096d8083da11fb2c8c217da0c2c82b6b9f6292ce29ecafb54e1611a3b8ce02d26f40051bf0327a3e461 +AUX elogind-255.22-musl.patch 3437 BLAKE2B 77c5b8502b67eda5504e3a3b87be98d3075c458a76cdf500739ead37acfe587f400d27bfa3b206aad94054a3d4bb62fc679f1856c2f5f12c7c0bf103606aea7f SHA512 ee44cb6a358a28d544025f23f544241534269e526dfe5d6dc341e55a1ef938193b20e2c0c4b4144fad432b3c67e56ddfe06313c235ce3e6b1f1bea73784dea63 +AUX elogind.conf 217 BLAKE2B ef4325ab66f7cc3c76d44f913c73f99ddf31b3c2248c3cc822e7be37886fdbdd4411974d6d6c139674a51f28f6c0dbca2f5091227e550b4747ed9b22837fa096 SHA512 7e9654deb46330ee17d5f7ba71332edcc86c1ab2ef0a54be8f722c409cdae5eedbbc818cc83350457891af39cde777b0390217fd6befb7d4e868ac41b569aed0 +AUX elogind.init-r1 503 BLAKE2B 7e54688c91f78b46411edff04dd8544dea778864d34ec00a4f0f2c166b4062ebc6b01f201f1b7d1f22f6781c51ac22f924136c83c0b0cdb29d6aadf640a6c0e8 SHA512 97d78afe1c0833f3f632272904bd8338869639facb79cd2fae6a4bf58fc5b2dd960484e1f9945152ff13d075216cf4b48b6b234eb7738fbbf445eee2c20e88f2 +DIST elogind-255.24.tar.gz 2143770 BLAKE2B b205cfa60a1eddac114e23f5dc28bd7dd3fa903ff67e1d4177cbe60f0e10da8f2cde9a92e8d7aea65535961aaf353e0c7a5df2d71196a5ab8154f38928b6739b SHA512 b8a436a7271df895613e6135f3ff9804f580fd7da915f38840e0c65638a6135f9a4671145f41fb186333b69a61ca52495b9e957aadbb383b15421e1e13f53b79 +DIST elogind-257.16.tar.gz 2634151 BLAKE2B d243c53e91fdfc0493e745665c757a3d76308da77ece7171980bb64fe462979f07c0db8f83bc5b80887fc4b2b76c9c7e671c4cd21d58ae02c1790b472b29e9e1 SHA512 dfd61b635124de87bfbb5bac7e6607148e9f7f3eda5961669f9472ca7d050f465fe368ceb63e3aba1e5efe445959e91cf703d6a561966bafc9bc50c245224e68 +EBUILD elogind-255.24.ebuild 5756 BLAKE2B 3194ccbc8ee7a745e37939f7555036b4a7105076c2d891d07706aa62d7822860643993d407c87ebc36ea4a16165b41935a8feb0cc6fb971fe0d2e427c880eae8 SHA512 e5da2765fbf1ac37244359980783d2752d460879033d6213561dd749b171f420ebf4c16b6895be49abf172fb5a9d3d98d0b3cadd8fa86664bcadd6444d43c544 +EBUILD elogind-257.16.ebuild 5554 BLAKE2B ee517b6a82d4a7815b31cf59de823418603334a035b71bdae462a06490bd0181430db435b05e7e321b228987f5e7309a446aaeb508aed903a4a726d9ec815a77 SHA512 243e06b83f0a9a263066228ae433030d2ccd765b85e6b9092070fa7f96bd822064097727937e5632f8b54db00af910ac12b7a32c672b35ee26dfbac5e8258d54 +MISC metadata.xml 416 BLAKE2B 5cce321b2ee1ee2893240ecc14b2e3578068e8ae7b94b4fcc641cef0298f7010492a66f4395d5811c62bf32d1b3b939e46bf8c9a7109f185f8bbb84d9ce9d607 SHA512 6f85a23ab09a92c489890397049fcff546be538b4484b5116cd4e5b0a4982a4cc0c587f47ca18c150bcbc5911ef879292fbd142ca1f381254d6ecea41358de6b diff --git a/sys-auth/elogind/elogind-257.16.ebuild b/sys-auth/elogind/elogind-257.16.ebuild new file mode 100644 index 0000000..dfb6f2a --- /dev/null +++ b/sys-auth/elogind/elogind-257.16.ebuild @@ -0,0 +1,193 @@ +# Copyright 1999-2026 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 + sys-fs/eudev +" +PDEPEND=" + sys-apps/dbus + policykit? ( sys-auth/polkit ) +" + +DOCS=( README.md ) + +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 + + rm "${ED}"/usr/share/doc/${PF}/LICENSE* || die + rm "${ED}"/usr/share/doc/${PF}/CODING_STYLE.md || die + + 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 +}