summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSven Eden <sven.eden@prydeworx.com>2020-11-13 10:40:07 +0100
committerSven Eden <sven.eden@prydeworx.com>2020-11-13 10:40:07 +0100
commiteb4ef47e004e3caca99c150bee905b6b0d820294 (patch)
tree89734942d22bacef47c9e7887719ddf50de3fe05 /sys-auth/elogind
parentkde-plasma/plasma-meta: Bump to 5.20.2-r1 (diff)
downloadseden-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.ebuild133
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
+}