diff options
author | Sven Eden <sven.eden@prydeworx.com> | 2020-11-13 10:40:07 +0100 |
---|---|---|
committer | Sven Eden <sven.eden@prydeworx.com> | 2020-11-13 10:40:07 +0100 |
commit | eb4ef47e004e3caca99c150bee905b6b0d820294 (patch) | |
tree | 89734942d22bacef47c9e7887719ddf50de3fe05 /sys-auth/elogind | |
parent | kde-plasma/plasma-meta: Bump to 5.20.2-r1 (diff) | |
download | seden-eb4ef47e004e3caca99c150bee905b6b0d820294.tar.gz seden-eb4ef47e004e3caca99c150bee905b6b0d820294.tar.bz2 seden-eb4ef47e004e3caca99c150bee905b6b0d820294.zip |
sys-auth/elogind: Add elogind-246.9999.ebuild
Signed-off-by: Sven Eden <sven.eden@prydeworx.com>
Diffstat (limited to 'sys-auth/elogind')
-rw-r--r-- | sys-auth/elogind/elogind-246.9999.ebuild | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/sys-auth/elogind/elogind-246.9999.ebuild b/sys-auth/elogind/elogind-246.9999.ebuild new file mode 100644 index 0000000..003dd97 --- /dev/null +++ b/sys-auth/elogind/elogind-246.9999.ebuild @@ -0,0 +1,133 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic git-r3 linux-info meson pam udev xdg-utils + +DESCRIPTION="The systemd project's logind, extracted to a standalone package" +HOMEPAGE="https://github.com/elogind/elogind" +EGIT_REPO_URI="https://github.com/elogind/elogind.git" +EGIT_BRANCH="v246-stable" +EGIT_SUBMODULES=() + +LICENSE="CC0-1.0 LGPL-2.1+ public-domain" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="+acl debug doc efi +pam +policykit selinux" + +COMMON_DEPEND=" + sys-apps/util-linux + sys-libs/libcap + virtual/libudev:= + acl? ( sys-apps/acl ) + pam? ( sys-libs/pam ) + selinux? ( sys-libs/libselinux ) +" +DEPEND="${COMMON_DEPEND} + app-text/docbook-xml-dtd:4.2 + app-text/docbook-xml-dtd:4.5 + app-text/docbook-xsl-stylesheets + dev-util/gperf + dev-util/intltool + sys-devel/libtool + virtual/pkgconfig +" +RDEPEND="${COMMON_DEPEND} + !sys-apps/systemd +" +PDEPEND=" + sys-apps/dbus + policykit? ( sys-auth/polkit ) +" + +PATCHES=( + "${FILESDIR}/${PN}-243.6-docs.patch" +) + +pkg_setup() { + local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SIGNALFD ~TIMERFD" + + if use kernel_linux; then + linux-info_pkg_setup + fi +} + +src_prepare() { + default + xdg_environment_reset +} + +src_configure() { + local rccgroupmode="$(grep rc_cgroup_mode /etc/rc.conf | cut -d '"' -f 2)" + local cgroupmode="legacy" + local debugmode="" + + if [[ "xhybrid" = "x${rccgroupmode}" ]]; then + cgroupmode="hybrid" + elif [[ "xunified" = "x${rccgroupmode}" ]]; then + cgroupmode="unified" + fi + + if use debug; then + debugmode="-Ddebug-extra=elogind" + fi + + # Duplicating C[XX]FLAGS in LDFLAGS is deprecated and will become + # a hard error in future meson versions: + filter-ldflags $CFLAGS $CXXFLAGS + + local emesonargs=( + $debugmode + --buildtype $(usex debug debug release) + --libdir="${EPREFIX}"/usr/$(get_libdir) + -Dacl=$(usex acl true false) + -Dbashcompletiondir="${EPREFIX}/usr/share/bash-completion/completions" + -Dcgroup-controller=openrc + -Ddefault-hierarchy=${cgroupmode} + -Ddefault-kill-user-processes=false + -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" + -Defi=$(usex efi true false) + -Dhtml=$(usex doc auto false) + -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html" + -Dman=auto + -Dpam=$(usex pam true false) + -Dpamlibdir=$(getpam_mod_dir) + -Drootlibdir="${EPREFIX}"/$(get_libdir) + -Drootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind + -Drootprefix="${EPREFIX}/" + -Dselinux=$(usex selinux true false) + -Dsmack=true + -Dudevrulesdir="$(get_udevdir)"/rules.d + -Dzshcompletiondir="${EPREFIX}/usr/share/zsh/site-functions" + ) + + meson_src_configure +} + +src_install() { + DOCS+=( src/libelogind/sd-bus/GVARIANT-SERIALIZATION ) + + meson_src_install + + newinitd "${FILESDIR}"/${PN}.init ${PN} + + sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die + newconfd ${PN}.conf ${PN} +} + +pkg_postinst() { + 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 + ewarn "elogind is currently not started from any runlevel." + ewarn "You may add it to the boot runlevel by:" + ewarn "# rc-update add elogind boot" + fi +} |