# Maintainer: Omar Vega Ramos # Maintainer: David P. # Contributor: Luke Shumaker # Maintainer (Artix): artoo pkgbase=elogind pkgname=('elogind' 'libelogind') pkgver=241.3 pkgrel=1 pkgdesc="The systemd project's logind, extracted to a standalone package" arch=('x86_64' 'i686' 'armv7h') url="https://github.com/elogind/elogind" license=('GPL' 'LGPL2.1') conflicts=('systemd-libsystemd') makedepends=('intltool' 'libtool' 'gperf' 'gtk-doc' 'polkit' 'dbus' 'libseccomp' 'meson' 'kexec-tools' 'openrc') options=('!libtool') source=("${pkgbase}-${pkgver}.tar.gz::https://github.com/elogind/elogind/archive/v${pkgver}.tar.gz" 'elogind.confd' 'elogind.initd') sha256sums=('d6a465479c8a629d49ea9374f6199b0c60e7e42eade0fcd8265fc37085386365' '344db76bf8aadfba4363c63aacd93c945a647bd5e425d756cbfd9cb4453afc66' '2fc375b3aa61cb63b16c55840acaa69d26b16a01d393ee129d77c804efdac278') prepare() { cd ${pkgbase}-${pkgver} } build() { local meson_options=( -Drootlibdir=/usr/lib -Drootlibexecdir=/usr/lib/elogind -Ddbuspolicydir=/usr/share/dbus-1/system.d -Ddocdir=/usr/share/doc/elogind -Ddefault-hierarchy=hybrid -Dcgroup-controller=openrc # -Ddefault-kill-user-processes=false ) arch-meson "$pkgbase-${pkgver}" build "${meson_options[@]}" ninja -C build } check(){ meson test -C build } package_elogind() { pkgdesc="The systemd project's logind, extracted to a standalone package" provides=("elogind=${pkgver}" "systemd=${pkgver}") # do not provide "systemd-tools=${pkgver}" because openrc will conflict depends=('pam' 'dbus' 'libseccomp' 'libelogind' 'kexec-tools' 'udev') optdepends=('polkit: polkit support') backup=('etc/elogind/logind.conf') provides+=("${pkgname}-openrc") conflicts+=('systemd-udev' "${pkgname}-openrc") replaces=("${pkgname}-openrc") DESTDIR="$pkgdir" meson install -C build ln -sfv libelogind.pc ${pkgdir}/usr/lib/pkgconfig/libsystemd.pc install -dm755 ${srcdir}/_libelogind mv -v ${pkgdir}/usr/lib/libelogind*.so* ${srcdir}/_libelogind # Init scripts install -Dm755 ${srcdir}/elogind.initd ${pkgdir}/etc/init.d/elogind install -Dm755 ${srcdir}/elogind.confd ${pkgdir}/etc/conf.d/elogind install -d "${pkgdir}/etc/runlevels/boot" ln -sf "/etc/init.d/elogind" "${pkgdir}/etc/runlevels/boot/elogind" } package_libelogind(){ pkgdesc="elogind client libraries" groups=('base-devel') provides=('libelogind.so' "libelogind=${pkgver}" "libsystemd=${pkgver}" "systemd-libs=${pkgver}" 'libsystemd.so=0-64') conflicts+=('libsystemd.so') depends=('libcap' 'libudev') cd ${pkgbase}-${pkgver} install -dm755 ${pkgdir}/usr/lib mv ${srcdir}/_libelogind/libelogind*.so* ${pkgdir}/usr/lib ln -sfv libelogind.so ${pkgdir}/usr/lib/libsystemd.so ln -sfv libsystemd.so ${pkgdir}/usr/lib/libsystemd.so.0 }