summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre-testing/systemd/PKGBUILD65
1 files changed, 63 insertions, 2 deletions
diff --git a/libre-testing/systemd/PKGBUILD b/libre-testing/systemd/PKGBUILD
index 4bd2e8b14..c75bfffc5 100644
--- a/libre-testing/systemd/PKGBUILD
+++ b/libre-testing/systemd/PKGBUILD
@@ -2,9 +2,9 @@
# Contributor: Tom Gundersen <teg@jklm.no>
pkgbase=systemd
-pkgname=('systemd')
+pkgname=('systemd' 'libsystemd' 'systemd-tools' 'systemd-sysvcompat')
pkgver=184
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64' 'mips64el')
url="http://www.freedesktop.org/wiki/Software/systemd"
license=('GPL2' 'LGPL2.1' 'MIT')
@@ -149,4 +149,65 @@ package_systemd() {
mv "$pkgdir"/usr/lib/systemd/systemd-{ac-power,binfmt,cryptsetup,modules-load,random-seed,remount-fs,reply-password,sysctl,timestamp,vconsole-setup} usr/lib/systemd
}
+package_systemd-sysvcompat() {
+ pkgdesc="sysvinit compat for systemd"
+ conflicts=('sysvinit' 'initscripts')
+
+ mv "$srcdir/_sysvcompat"/* "$pkgdir"
+
+ install -dm755 "$pkgdir/sbin"
+ for tool in runlevel reboot shutdown poweroff halt telinit; do
+ ln -s '/usr/bin/systemctl' "$pkgdir/sbin/$tool"
+ done
+
+ ln -s '../usr/lib/systemd/systemd' "$pkgdir/sbin/init"
+
+ install -Dm755 "$srcdir/locale.sh" "$pkgdir/etc/profile.d/locale.sh"
+}
+
+package_libsystemd() {
+ pkgdesc="systemd client libraries"
+ depends=('xz')
+
+ mv "$srcdir/_libsystemd"/* "$pkgdir"
+}
+
+package_systemd-tools() {
+ pkgdesc='standalone tools from systemd'
+ url='http://www.freedesktop.org/wiki/Software/systemd'
+ depends=('acl' 'bash' 'glibc' 'glib2' 'kmod' 'hwids' 'util-linux' 'kbd')
+ optdepends=('cryptsetup: required for encrypted block devices')
+ provides=("udev=$pkgver")
+ conflicts=('udev')
+ replaces=('udev')
+ install='systemd-tools.install'
+
+ mv "$srcdir/_tools/"* "$pkgdir"
+
+ # the path to udevadm is hardcoded in some places
+ install -d "$pkgdir/sbin"
+ ln -s ../usr/bin/udevadm "$pkgdir/sbin/udevadm"
+
+ # udevd is no longer udevd because systemd. why isn't udevadm now udevctl?
+ ln -s ../lib/systemd/systemd-udevd "$pkgdir/usr/bin/udevd"
+ ln -s ../systemd/systemd-udevd "$pkgdir/usr/lib/udev/udevd"
+
+ # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group
+ sed -i 's#GROUP="dialout"#GROUP="uucp"#g;
+ s#GROUP="tape"#GROUP="storage"#g;
+ s#GROUP="cdrom"#GROUP="optical"#g' "$pkgdir"/usr/lib/udev/rules.d/*.rules
+
+ # get rid of unneded lock directories
+ sed -ri '/\/run\/lock\/(subsys|lockdev)/d' "$pkgdir"/usr/lib/tmpfiles.d/legacy.conf
+
+ # add mkinitcpio hooks
+ install -Dm644 "$srcdir/initcpio-install-udev" "$pkgdir/usr/lib/initcpio/install/udev"
+ install -Dm644 "$srcdir/initcpio-hook-udev" "$pkgdir/usr/lib/initcpio/hooks/udev"
+ install -Dm644 "$srcdir/initcpio-install-timestamp" "$pkgdir/usr/lib/initcpio/install/timestamp"
+
+ # XXX: kill off coredump rule until the journal can recover coredumps
+ # this file needs to come back as part of systemd, not systemd-tools
+ rm "$pkgdir/usr/lib/sysctl.d/coredump.conf"
+}
+
# vim: ft=sh syn=sh et