diff --git a/sys-auth/elogind/Manifest b/sys-auth/elogind/Manifest index d7551a900296e..5bc0bf6fd6733 100644 --- a/sys-auth/elogind/Manifest +++ b/sys-auth/elogind/Manifest @@ -1,2 +1,3 @@ DIST elogind-238.2.tar.gz 1075847 BLAKE2B 17e4d8ffabb65a210f34076223e502c9019a7fa639f6cc12b1c8a0e186d8a6e97f115cd68487c86470915a8208dead6830577d2da3ffd85ed2e12c3a699ef2c5 SHA512 c66dd514d7c708a1d1c52ac9f25f34af839c4d4ff452302b40eb95c040c1d3d8d238b4e35c33d81af71f6aac22c8793951d91d005e6595e02124edb976baf640 DIST elogind-239.2.tar.gz 1171060 BLAKE2B 4b7b0e4867ce79aeaf480cf56c473254a3ae53bf618eef27b62d76f58e9ae8b29ecd748b3f3fbad89537e6f1e7b2b04759eeed50f608551b8807560e54fd1428 SHA512 84b71bcb97d568fb26ce9587b39cce4e44a3f3607120846325398e6526dea2b21f82b8292942c2daaf755c4a2880d7163670442dcf2d360e171f9d004436bd74 +DIST elogind-239.3.tar.gz 1171080 BLAKE2B 95d158a861641415f2c6ea3648bafd32ee3da80b0258e33fb7b88cf834f42c4d76b634af055f81dfba7c6477423edf73ad7c0d79e5e3608938e90a713bdff00e SHA512 61399f82d6a93d77e0984dc67b9c7ebdda27ba2254810be9725a09f91fde41c66adb53a5fe7989f53d6b156b70f147471c89fa64a432bccc482e8057a0cddf84 diff --git a/sys-auth/elogind/elogind-239.3.ebuild b/sys-auth/elogind/elogind-239.3.ebuild new file mode 100644 index 0000000000000..f9136f937f10b --- /dev/null +++ b/sys-auth/elogind/elogind-239.3.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit linux-info meson pam udev xdg-utils + +DESCRIPTION="The systemd project's logind, extracted to a standalone package" +HOMEPAGE="https://github.com/elogind/elogind" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="CC0-1.0 LGPL-2.1+ public-domain" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="+acl debug doc +pam +policykit selinux" + +COMMON_DEPEND=" + sys-apps/util-linux + sys-libs/libcap + virtual/libudev:= + acl? ( sys-apps/acl ) + pam? ( virtual/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 ) +" + +DOCS=( src/libelogind/sd-bus/GVARIANT-SERIALIZATION ) + +PATCHES=( "${FILESDIR}/${PN}-238.1-docs.patch" ) + +pkg_setup() { + local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SIGNALFD ~TIMERFD" + + use kernel_linux && linux-info_pkg_setup +} + +src_prepare() { + default + xdg_environment_reset +} + +src_configure() { + local rccgroupmode="$(grep rc_cgroup_mode /etc/rc.conf | cut -d '"' -f 2)" + local cgroupmode="legacy" + + if [[ "xhybrid" = "x${rccgroupmode}" ]] ; then + cgroupmode="hybrid" + elif [[ "xunified" = "x${rccgroupmode}" ]] ; then + cgroupmode="unified" + fi + + local emesonargs=( + -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" + -Dhtmldir="${EPREFIX}/usr/share/doc/${PF}/html" + -Dpamlibdir=$(getpam_mod_dir) + -Dudevrulesdir="$(get_udevdir)"/rules.d + --libdir="${EPREFIX}"/usr/$(get_libdir) + -Drootlibdir="${EPREFIX}"/$(get_libdir) + -Drootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind + -Drootprefix="${EPREFIX}/" + -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 true false) + --buildtype $(usex debug debug release) + -Dhtml=$(usex doc auto false) + -Dpam=$(usex pam true false) + -Dselinux=$(usex selinux true false) + ) + + 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 + 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 +}