77 lines
2.3 KiB
Bash
77 lines
2.3 KiB
Bash
#!/usr/bin/env bash
|
|
name='elogind'
|
|
release='2'
|
|
version='252.9'
|
|
url='https://github.com/elogind/elogind'
|
|
description="he systemd project's logind, extracted to a standalone package"
|
|
email='aliriza.keskin@pardus.org.tr'
|
|
maintainer='aliriza'
|
|
license=('GPLv3')
|
|
source=("https://github.com/elogind/elogind/archive/refs/tags/v$version.tar.gz"
|
|
"elogind.initd"
|
|
"systemd.pc")
|
|
depends=(acl attr audit libcap-ng libcap dbus pam)
|
|
makedepends=()
|
|
md5sums=('2be2c43298e2fc41c5bee33dde605f01'
|
|
'SKIP'
|
|
'SKIP')
|
|
group=(sys.auth)
|
|
uses=()
|
|
arch=('x86_64')
|
|
|
|
cd $name-$version
|
|
|
|
setup(){
|
|
meson setup build --prefix=/usr \
|
|
--libdir=/lib64/ \
|
|
-Drootlibdir=/lib64 \
|
|
-Dudevrulesdir=/lib64/udev/rules.d \
|
|
-Dcgroup-controller=elogind \
|
|
-Dhalt-path=/sbin/halt \
|
|
-Dreboot-path=/sbin/reboot \
|
|
-Dpoweroff-path=/sbin/poweroff \
|
|
-Drootlibexecdir=/usr/libexec/elogind \
|
|
-Ddefault-hierarchy=hybrid \
|
|
-Ddefault-kill-user-processes=true \
|
|
-Dpam=true \
|
|
-Dselinux=false \
|
|
-Daudit=true \
|
|
-Defi=false \
|
|
-Dpolkit=true
|
|
}
|
|
|
|
build(){
|
|
ninja -C build
|
|
}
|
|
|
|
package(){
|
|
ninja -C build install
|
|
|
|
# Claim compatiblity with systemd and systemd-logind (thanks Alpine linux)
|
|
ln -s libelogind.pc "$DESTDIR"/lib64/pkgconfig/libsystemd.pc
|
|
ln -s libelogind.pc "$DESTDIR"/lib64/pkgconfig/libsystemd-login.pc
|
|
ln -s elogind "$DESTDIR"/usr/include/systemd
|
|
# Extra compatiblity support
|
|
ln -s libelogind.so.0 "$DESTDIR"/lib64/libsystemd.so.0
|
|
ln -s libelogind.so.0 "$DESTDIR"/lib64/libsystemd.so.0.35.0
|
|
ln -s pam_elogind.so "$DESTDIR"/lib64/security/pam_systemd.so
|
|
install ../systemd.pc "$DESTDIR"/lib64/pkgconfig/
|
|
|
|
# Install headers from elogind
|
|
install -Dm644 src/systemd/sd-id128.h "$DESTDIR"/usr/include/sd-id128.h
|
|
install -Dm644 src/systemd/_sd-common.h "$DESTDIR"/usr/include/_sd-common.h
|
|
|
|
# openrc service
|
|
mkdir -p "${DESTDIR}"/etc/init.d
|
|
install ../elogind.initd "${DESTDIR}"/etc/init.d/elogind
|
|
|
|
# shadow system-auth.d file
|
|
mkdir -p "${DESTDIR}"/etc/pam.d/system-auth.d/
|
|
echo "session include elogind-user" > "${DESTDIR}"/etc/pam.d/system-auth.d/99-elogind
|
|
|
|
# ld.so.conf
|
|
mkdir -p "${DESTDIR}"/etc/ld.so.conf.d/
|
|
echo "/lib64/elogind" > "${DESTDIR}"/etc/ld.so.conf.d/elogind.conf
|
|
}
|
|
|