elogind¶
Linux’ta oturum (session) yönetimi sağlayan pakettir.
Paketi Derleme :¶
#-----------------------------------------------------------------------------------------------------------------
#!/usr/bin/env bash
name="elogind"
version="252.9"
description="Elogind is the systemd projects logind, extracted to a standalone package"
source="https://github.com/elogind/elogind/archive/refs/tags/v$version.tar.gz"
depends="acl,attr,audit,libcap-ng,libcap,dbus,pam,py3-jinja"
group="sys.auth"
setup(){
cd $SOURCEDIR
cp -prfv $PACKAGEDIR/files /tmp/kly/build/
meson setup $BUILDDIR --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 -Dpamconfdir=/etc/pam.d -Dpamlibdir=/usr/lib64/security -Dselinux=false -Daudit=true \
-Defi=false -Dpolkit=true
}
build(){
ninja -C $BUILDDIR
}
package(){
cd $DESTDIR
mkdir -p $DESTDIR/lib64
ln -s lib64 lib
mkdir -p "$DESTDIR"/usr/lib64/pkgconfig/
DESTDIR=$DESTDIR ninja -C $BUILDDIR 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"/usr/lib64/security/pam_systemd.so
install ../files/systemd.pc "$DESTDIR"/lib64/pkgconfig/
# Install headers from elogind
install -Dm644 $SOURCEDIR/src/systemd/sd-id128.h "$DESTDIR"/usr/include/sd-id128.h
install -Dm644 $SOURCEDIR/src/systemd/_sd-common.h "$DESTDIR"/usr/include/_sd-common.h
# openrc service
mkdir -p "${DESTDIR}"/etc/init.d
install ../files/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
cd "$DESTDIR"/usr/lib64/pkgconfig/
ln -s ../../../lib64/pkgconfig/libelogind.pc libelogind.pc
}
Ek dosyaları indirmek için tıklayınız..
Not: Burada verilen derleme talimatı(script) kly Paket Sistemi'ni kullanarak paketi derler ve oluştur. Oluşan paket(.kly uzantılı dosya) kly Paket Sistemi kullanılarak siteme yüklenebilir. kly Paket Sistemiyle Paket Yapma konusunu okumak için tıklayınız.