description="The Eudev package contains programs for dynamic creation of device nodes."
url="https://www.freedesktop.org/wiki/Software/systemd/"

packager="tnut <tnut@nutyx.org>"

# 1/ remove all the eudev archives cards.tar packages

makedepends=(libcap kmod meson ninja)

name=eudev
_name=systemd
version=252.4

PKGMK_DEPENDS=(perl python python-markupsafe python-jinja m4 gperf util-linux pam systemd acl)
PKGMK_IGNORE_FOOTPRINT='no'
PKGMK_IGNORE_RUNTIMEDEPS='yes'

source=(http://anduin.linuxfromscratch.org/LFS/udev-lfs-20171102.tar.bz2
        https://github.com/systemd/systemd/archive/v${version:0:3}/systemd-$version.tar.gz)

prepare() {

sed '177,$ d' -i ${_name}-stable-$version/src/resolve/meson.build
sed -i 's/GROUP="render", //' ${_name}-stable-$version/rules.d/50-udev-default.rules.in
}
build() {


cd ${_name}-stable-$version
mkdir build
cd    build

meson --prefix=/usr           \
--sysconfdir=/etc             \
--localstatedir=/var          \
-Dfirstboot=false             \
-Dinstall-tests=false         \
-Dkmod-path=/bin/kmod         \
-Dmount-path=/bin/mount       \
-Dsplit-usr=true              \
-Drpmmacrosdir=no             \
-Dsulogin-path=/sbin/sulogin  \
-Dumount-path=/bin/umount     \
-Dsysusers=false              \
-Duserdb=false                \
-Dresolve=false               \
-Dpam=true                    \
-Dpamconfdir=/etc/pam.d       \
-Dmode=release                \
..

ninja

DESTDIR=$PKG ninja install

mv $PKG/{,s}bin/udevadm
ln -svf ../../sbin/udevadm $PKG/lib/systemd/systemd-udevd
ln -sv udevadm $PKG/sbin/udevd

cd $SRC
make -j1 -f udev-lfs-20171102/Makefile.lfs DESTDIR=$PKG install

$PKG/sbin/udevadm hwdb --update --root=$PKG

mv $PKG/lib/systemd/network/99-default.link \
$PKG/99-default.link

# systemd Package files
rm $PKG/bin/{journalctl,loginctl,machinectl,portablectl,systemctl,networkctl}
rm $PKG/bin/systemd-*
rm -r $PKG/etc/{pam,sysctl}.d

rm -r $PKG/usr/bin
rm -r $PKG/usr/lib/{{environment,binfmt,sysctl,tmpfiles,modules-load}.d,kernel,systemd}
rm -r $PKG/{usr/include,lib,etc}/systemd
rm -r $PKG/etc/{X11,xdg,binfmt.d,init.d,kernel,modules-load.d,tmpfiles.d}

mv $PKG/{usr/share/bash-completion/completions/udevadm,udevadm}
mv $PKG/{usr/share/zsh/site-functions/_udevadm,_udevadm}
rm -r $PKG/usr/share/{doc,factory,polkit-1,bash-completion,zsh,systemd,dbus-1}
mkdir -p $PKG/{lib/systemd/network,usr/share/{bash-completion/completions,zsh/site-functions}}

mv $PKG/udevadm $PKG/usr/share/bash-completion/completions
mv $PKG/_udevadm $PKG/usr/share/zsh/site-functions
mv $PKG/99-default.link $PKG/lib/systemd/network

rm -r $PKG/usr/share/locale
rm $PKG/usr/share/pkgconfig/systemd.pc
rm $PKG/usr/lib/pkgconfig/libsystemd.pc

rm $PKG/lib/lib{nss*,systemd*}
rm -r $PKG/lib/{modprobe.d,security}

rm -r $PKG/var


# sysvinit package files
rm $PKG/sbin/{halt,init,poweroff,reboot,runlevel,shutdown,telinit}

# elogind package files
rm $PKG/lib/udev/rules.d/70-{power-switch,uaccess}.rules
rm $PKG/lib/udev/rules.d/71-seat.rules
rm $PKG/lib/udev/rules.d/73-seat-late.rules

# Prevent systemd from resetting the maximum PID value
rm -f $PKG/usr/lib/sysctl.d/50-pid-max.conf

}
