mirror of
https://github.com/KenjiBrown/without-systemd.git
synced 2026-10-12 17:51:12 -04:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
72cb189356 | ||
|
|
f96d522949 |
No files matched your search
@@ -1 +1,2 @@
|
||||
masters = gentoo
|
||||
thin-manifests = true
|
||||
@@ -0,0 +1,2 @@
|
||||
DIST elogind-255.24.tar.gz 2143770 BLAKE2B b205cfa60a1eddac114e23f5dc28bd7dd3fa903ff67e1d4177cbe60f0e10da8f2cde9a92e8d7aea65535961aaf353e0c7a5df2d71196a5ab8154f38928b6739b SHA512 b8a436a7271df895613e6135f3ff9804f580fd7da915f38840e0c65638a6135f9a4671145f41fb186333b69a61ca52495b9e957aadbb383b15421e1e13f53b79
|
||||
DIST elogind-257.16.tar.gz 2634151 BLAKE2B d243c53e91fdfc0493e745665c757a3d76308da77ece7171980bb64fe462979f07c0db8f83bc5b80887fc4b2b76c9c7e671c4cd21d58ae02c1790b472b29e9e1 SHA512 dfd61b635124de87bfbb5bac7e6607148e9f7f3eda5961669f9472ca7d050f465fe368ceb63e3aba1e5efe445959e91cf703d6a561966bafc9bc50c245224e68
|
||||
@@ -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
|
||||
}
|
||||
Reference in new issue
Block a user