mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-03-09 00:17:31 +00:00
core/systemd to 238.0-3
This commit is contained in:
parent
79bfefbf48
commit
7a2e3ba223
12 changed files with 270 additions and 95 deletions
75
core/systemd/0001-Use-Arch-Linux-device-access-groups.patch
Normal file
75
core/systemd/0001-Use-Arch-Linux-device-access-groups.patch
Normal file
|
@ -0,0 +1,75 @@
|
|||
From 34e4b4953cb99642e9144d97823edf32b06ffe93 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <34e4b4953cb99642e9144d97823edf32b06ffe93.1520376078.git.jan.steffens@gmail.com>
|
||||
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
|
||||
Date: Tue, 6 Mar 2018 23:39:47 +0100
|
||||
Subject: [PATCH] Use Arch Linux' device access groups
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
cdrom → optical
|
||||
dialout → uucp
|
||||
tape → storage
|
||||
---
|
||||
rules/50-udev-default.rules.in | 14 +++++++-------
|
||||
sysusers.d/basic.conf.in | 6 +++---
|
||||
2 files changed, 10 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/rules/50-udev-default.rules.in b/rules/50-udev-default.rules.in
|
||||
index 191f56f42..f81c4d0fc 100644
|
||||
--- a/rules/50-udev-default.rules.in
|
||||
+++ b/rules/50-udev-default.rules.in
|
||||
@@ -22,7 +22,7 @@ SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
|
||||
-KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
|
||||
+KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="uucp"
|
||||
|
||||
SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
|
||||
|
||||
@@ -57,13 +57,13 @@ KERNEL=="irlpt[0-9]*", GROUP="lp"
|
||||
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp"
|
||||
|
||||
SUBSYSTEM=="block", GROUP="disk"
|
||||
-SUBSYSTEM=="block", KERNEL=="sr[0-9]*", GROUP="cdrom"
|
||||
-SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom"
|
||||
-KERNEL=="sch[0-9]*", GROUP="cdrom"
|
||||
-KERNEL=="pktcdvd[0-9]*", GROUP="cdrom"
|
||||
-KERNEL=="pktcdvd", GROUP="cdrom"
|
||||
+SUBSYSTEM=="block", KERNEL=="sr[0-9]*", GROUP="optical"
|
||||
+SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="optical"
|
||||
+KERNEL=="sch[0-9]*", GROUP="optical"
|
||||
+KERNEL=="pktcdvd[0-9]*", GROUP="optical"
|
||||
+KERNEL=="pktcdvd", GROUP="optical"
|
||||
|
||||
-SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
|
||||
+SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="storage"
|
||||
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
|
||||
KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
|
||||
KERNEL=="loop-control", GROUP="disk", OPTIONS+="static_node=loop-control"
|
||||
diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in
|
||||
index 8e358c02d..33e513a36 100644
|
||||
--- a/sysusers.d/basic.conf.in
|
||||
+++ b/sysusers.d/basic.conf.in
|
||||
@@ -24,14 +24,14 @@ g utmp - - -
|
||||
|
||||
# Hardware access groups
|
||||
g audio - - -
|
||||
-g cdrom - - -
|
||||
-g dialout - - -
|
||||
g disk - - -
|
||||
g input - - -
|
||||
g kvm - - -
|
||||
g lp - - -
|
||||
+g optical - - -
|
||||
g render - - -
|
||||
-g tape - - -
|
||||
+g storage - - -
|
||||
+g uucp - - -
|
||||
g video - - -
|
||||
|
||||
# Default group for normal users
|
||||
--
|
||||
2.16.2
|
||||
|
|
@ -9,12 +9,10 @@
|
|||
|
||||
pkgbase=systemd
|
||||
pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat')
|
||||
# latest commit on stable branch
|
||||
_commit='7909254c7a8ee09d91b8b21fd779320b3e2fe716'
|
||||
# Bump this to latest major release for signed tag verification,
|
||||
# the commit count is handled by pkgver() function.
|
||||
pkgver=237.64
|
||||
pkgrel=1
|
||||
# Can be from either systemd or systemd-stable
|
||||
_commit='738ab7502afb7663d9aacdd73e79025aa7cd0a9b'
|
||||
pkgver=238.0
|
||||
pkgrel=3
|
||||
arch=('x86_64')
|
||||
url="https://www.github.com/systemd/systemd"
|
||||
makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gperf' 'lz4' 'xz' 'pam' 'libelf'
|
||||
|
@ -23,9 +21,11 @@ makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gperf' 'lz4' 'xz' 'pam' 'libelf'
|
|||
'python-lxml' 'quota-tools' 'shadow' 'git'
|
||||
'meson' 'libseccomp' 'pcre2')
|
||||
options=('strip')
|
||||
validpgpkeys=('63CDA1E5D3FC22B998D20DD6327F26951A015CC4') # Lennart Poettering <lennart@poettering.net>
|
||||
source=('git://github.com/systemd/systemd-stable.git'
|
||||
'git://github.com/systemd/systemd.git' # pull in for tags, backports & reverts
|
||||
validpgpkeys=('63CDA1E5D3FC22B998D20DD6327F26951A015CC4' # Lennart Poettering <lennart@poettering.net>
|
||||
'5C251B5FC54EB2F80F407AAAC54CA336CFEB557E') # Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
|
||||
source=('git+https://github.com/systemd/systemd-stable'
|
||||
'git+https://github.com/systemd/systemd'
|
||||
'0001-Use-Arch-Linux-device-access-groups.patch'
|
||||
'initcpio-hook-udev'
|
||||
'initcpio-install-systemd'
|
||||
'initcpio-install-udev'
|
||||
|
@ -33,12 +33,19 @@ source=('git://github.com/systemd/systemd-stable.git'
|
|||
'loader.conf'
|
||||
'splash-arch.bmp'
|
||||
'systemd-user.pam'
|
||||
'systemd-hook'
|
||||
'systemd-binfmt.hook'
|
||||
'systemd-catalog.hook'
|
||||
'systemd-daemon-reload.hook'
|
||||
'systemd-hwdb.hook'
|
||||
'systemd-sysctl.hook'
|
||||
'systemd-sysusers.hook'
|
||||
'systemd-tmpfiles.hook'
|
||||
'systemd-udev-reload.hook'
|
||||
'systemd-update.hook')
|
||||
sha512sums=('SKIP'
|
||||
'SKIP'
|
||||
'9348683829190628e25b7b3300fd880c426d555bde330d5fc5150a9a54b3ad9d4d1f2e69ea1dc6d6f086693dacc53c5af30f1fa7ad9b479791fd77bcdafa430e'
|
||||
'f0d933e8c6064ed830dec54049b0a01e27be87203208f6ae982f10fb4eddc7258cb2919d594cbfb9a33e74c3510cfd682f3416ba8e804387ab87d1a217eb4b73'
|
||||
'86d7cacd7536b1069c82bbbb08de7ec81e7f0f18a19fc2b06fabe90db4700623eb3540b75121080d325672d92e26912632ae4f93fd3c0bb48eb3e5eedd88352c'
|
||||
'a25b28af2e8c516c3a2eec4e64b8c7f70c21f974af4a955a4a9d45fd3e3ff0d2a98b4419fe425d47152d5acae77d64e69d8d014a7209524b75a81b0edb10bf3a'
|
||||
|
@ -46,20 +53,29 @@ sha512sums=('SKIP'
|
|||
'c416e2121df83067376bcaacb58c05b01990f4614ad9de657d74b6da3efa441af251d13bf21e3f0f71ddcb4c9ea658b81da3d915667dc5c309c87ec32a1cb5a5'
|
||||
'5a1d78b5170da5abe3d18fdf9f2c3a4d78f15ba7d1ee9ec2708c4c9c2e28973469bc19386f70b3cf32ffafbe4fcc4303e5ebbd6d5187a1df3314ae0965b25e75'
|
||||
'b90c99d768dc2a4f020ba854edf45ccf1b86a09d2f66e475de21fe589ff7e32c33ef4aa0876d7f1864491488fd7edb2682fc0d68e83a6d4890a0778dc2d6fe19'
|
||||
'2c1f765e7cefc50f07ad994634ea25d9396e6b9c0de46e58f18377e642a471517a0dbf5eb547070a38c6ecf84ec8e030f650a6cee010871cd7a466a32534adda'
|
||||
'7d49a948f5d58f662a7d81544254528257ef8c0a08ca560834f09a7cdf566161d2df4d419ebbc2983196cd45c9eeefcd0c4c2c554376916dce42e895262afc30'
|
||||
'e521d92674597f82d589b83c378c50c92c881fdb84c436c8b26f7a3436a4c91a20585824a5563933f6868a3023b9ee2fdc7bd58e04bb47c25a0a36e296308fd3'
|
||||
'10190fba9f39a8f4b620a0829e0ba8ed63bb4dbeca712966011ee7807880d01ab2abff1a80baafeb6674db70526a473fe585db8190e864f318fc4d6068552618')
|
||||
'462ed39bd5c90168079956a402abafe8f0910882e6876b165a2c27af73833d0cad1be9cdbcb3549b34652ea86e5d0dba044946a38797bd533fdd1f5a0083f63b'
|
||||
'46f93725bc94381300535737fd0186a3c096fa83661179eab0c450c7b164a87d9a5dd9abcf6ae98bdeb4bf50a4ba4f1944769948c236e4814f166ff03b0ee177'
|
||||
'4cff2ebd962e26e2f516d8b4ac45c839dbfa54dd0588b423c224a328b9f7c62306ca7b2f6cb55240c564caf9972d5bcd2e0efaf2de49d64729aeb3bc1560c9eb'
|
||||
'872de70325e9798f0b5a77e991c85bd2ab6de24d9b9ba4e35002d2dd5df15f8b30739a0042a624776177ffc14a838cde7ee98622016ed41df3efda9a659730b2'
|
||||
'471342b8d0e05533908cda5d6a906050a51e3181beda1239e91d717029ee40a9eaed714996a445417d87c4e31b7f8522a665de176077fe0536d538369594996d'
|
||||
'3b11e8956169e6d80eca6e6de1b3e42641454d9d7be48961d400754f2242077d69fb7bfbeb0904f35ce569511036a7c9614a4a1cc3096fba993f46ae65e02895'
|
||||
'bf3225011760695040e9f7be2560348e68e86eac0295f5a17a6f7e3dda7ad7c008812a15904e2071b53d5f8048891602c8a9a18608ac64930f2d8cc4fac2a319'
|
||||
'ff1429a7c88e21d578c25d07e8cd9568577feb5a940fe39a7a815cf8431c57ca951ac6b394c53d2cdeb4efc645572c0b1b670a48cafcc405db41a6602b548e35'
|
||||
'e4a9d7607fe93daf1d45270971c8d8455c4bfc2c0bea8bcad05aeb89847edee23cd1a41073a72042622acf417018fe254f5bfc137604fe2c71292680bf67a1c2'
|
||||
'209b01b044877cc986757fa4009a92ea98f480306c2530075d153203c3cd2b3afccab6aacc1453dee8857991e04270572f1700310705d7a0f4d5bed27fab8c67')
|
||||
|
||||
_backports=(
|
||||
# core: do not free heap-allocated strings (#8391) (FS#57741)
|
||||
'5cbaad2f6795088db56063d20695c6444595822f'
|
||||
)
|
||||
|
||||
_reverts=(
|
||||
)
|
||||
|
||||
_validate_tag() {
|
||||
_validate_tag() (
|
||||
local success fingerprint trusted status tag=v${pkgver%.*}
|
||||
|
||||
cd "$srcdir/$pkgbase-stable"
|
||||
parse_gpg_statusfile /dev/stdin < <(git verify-tag --raw "$tag" 2>&1)
|
||||
|
||||
if (( ! success )); then
|
||||
|
@ -82,6 +98,24 @@ _validate_tag() {
|
|||
esac
|
||||
|
||||
return 0
|
||||
)
|
||||
|
||||
prepare() {
|
||||
cd "$pkgbase-stable"
|
||||
|
||||
git remote add -f upstream ../systemd
|
||||
git checkout "$_commit"
|
||||
|
||||
local c
|
||||
for c in "${_backports[@]}"; do
|
||||
git cherry-pick -n "$c"
|
||||
done
|
||||
for c in "${_reverts[@]}"; do
|
||||
git revert -n "$c"
|
||||
done
|
||||
|
||||
# Replace cdrom/dialout/tape groups with optical/uucp/storage
|
||||
patch -Np1 -i ../0001-Use-Arch-Linux-device-access-groups.patch
|
||||
}
|
||||
|
||||
pkgver() {
|
||||
|
@ -94,26 +128,9 @@ pkgver() {
|
|||
printf '%s.%s' "${version#v}" "${count}"
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd "$pkgbase-stable"
|
||||
|
||||
git remote add upstream ../systemd/
|
||||
git fetch --all
|
||||
|
||||
git checkout "${_commit}"
|
||||
|
||||
build() {
|
||||
_validate_tag || return
|
||||
|
||||
local _commit
|
||||
for _commit in "${_backports[@]}"; do
|
||||
git cherry-pick -n "$_commit"
|
||||
done
|
||||
for _commit in "${_reverts[@]}"; do
|
||||
git revert -n "$_commit"
|
||||
done
|
||||
}
|
||||
|
||||
build() {
|
||||
local timeservers=({0..3}.arch.pool.ntp.org)
|
||||
|
||||
LDFLAGS+=" -Wl,-fuse-ld=bfd"
|
||||
|
@ -143,6 +160,11 @@ build() {
|
|||
ninja -C build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd build
|
||||
meson test
|
||||
}
|
||||
|
||||
package_systemd() {
|
||||
pkgdesc="system and service manager"
|
||||
license=('GPL2' 'LGPL2.1')
|
||||
|
@ -168,70 +190,62 @@ package_systemd() {
|
|||
etc/systemd/resolved.conf
|
||||
etc/systemd/user.conf
|
||||
etc/udev/udev.conf)
|
||||
install="systemd.install"
|
||||
install=systemd.install
|
||||
|
||||
DESTDIR="$pkgdir" ninja -C build install
|
||||
|
||||
# don't write units to /etc by default. some of these will be re-enabled on
|
||||
# post_install.
|
||||
rm -r "$pkgdir/etc/systemd/system/"*.wants
|
||||
rm -r "$pkgdir/etc/systemd/system/"*.service
|
||||
rm -rv "$pkgdir"/etc/systemd/system/*
|
||||
|
||||
# add back tmpfiles.d/legacy.conf
|
||||
install -m644 "$pkgbase-stable/tmpfiles.d/legacy.conf" "$pkgdir/usr/lib/tmpfiles.d"
|
||||
# we'll create this on installation
|
||||
rmdir "$pkgdir"/var/log/journal/remote
|
||||
|
||||
# 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
|
||||
sed -i 's/dialout/uucp/g;
|
||||
s/tape/storage/g;
|
||||
s/cdrom/optical/g' "$pkgdir"/usr/lib/sysusers.d/basic.conf
|
||||
# runtime libraries shipped with libsystemd
|
||||
install -dm755 libsystemd
|
||||
mv "$pkgdir"/usr/lib/lib{nss,systemd,udev}*.so* libsystemd
|
||||
|
||||
# manpages shipped with systemd-sysvcompat
|
||||
rm "$pkgdir"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8
|
||||
|
||||
# executable (symlinks) shipped with systemd-sysvcompat
|
||||
rm "$pkgdir"/usr/bin/{halt,init,poweroff,reboot,runlevel,shutdown,telinit}
|
||||
|
||||
# avoid a potential conflict with [core]/filesystem
|
||||
rm "$pkgdir"/usr/share/factory/etc/nsswitch.conf
|
||||
sed -i '/^C \/etc\/nsswitch\.conf/d' "$pkgdir"/usr/lib/tmpfiles.d/etc.conf
|
||||
|
||||
# add back tmpfiles.d/legacy.conf, normally omitted without sysv-compat
|
||||
install -m644 $pkgbase-stable/tmpfiles.d/legacy.conf "$pkgdir"/usr/lib/tmpfiles.d
|
||||
|
||||
# ship default policy to leave services disabled
|
||||
echo 'disable *' >"$pkgdir"/usr/lib/systemd/system-preset/99-default.preset
|
||||
|
||||
# add mkinitcpio hooks
|
||||
install -Dm644 "$srcdir/initcpio-install-systemd" "$pkgdir/usr/lib/initcpio/install/systemd"
|
||||
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 initcpio-install-systemd "$pkgdir"/usr/lib/initcpio/install/systemd
|
||||
install -Dm644 initcpio-install-udev "$pkgdir"/usr/lib/initcpio/install/udev
|
||||
install -Dm644 initcpio-hook-udev "$pkgdir"/usr/lib/initcpio/hooks/udev
|
||||
|
||||
# ensure proper permissions for /var/log/journal
|
||||
# The permissions are stored with named group by tar, so this works with
|
||||
# users and groups populated by systemd-sysusers. This is only to prevent a
|
||||
# warning from pacman as permissions are set by systemd-tmpfiles anyway.
|
||||
chown root:systemd-journal "$pkgdir/var/log/journal"
|
||||
chmod 2755 "$pkgdir/var/log/journal"
|
||||
install -d -o root -g systemd-journal -m 2755 "$pkgdir"/var/log/journal
|
||||
|
||||
# match directory owner/group and mode from extra/polkit
|
||||
chown root:102 "$pkgdir"/usr/share/polkit-1/rules.d
|
||||
chmod 0750 "$pkgdir"/usr/share/polkit-1/rules.d
|
||||
|
||||
# we'll create this on installation
|
||||
rmdir "$pkgdir/var/log/journal/remote"
|
||||
|
||||
# ship default policy to leave services disabled
|
||||
echo 'disable *' >"$pkgdir"/usr/lib/systemd/system-preset/99-default.preset
|
||||
|
||||
# manpages shipped with systemd-sysvcompat
|
||||
rm "$pkgdir"/usr/share/man/man8/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8
|
||||
|
||||
# runtime libraries shipped with libsystemd
|
||||
rm "$pkgdir"/usr/lib/lib{nss,systemd,udev}*.so*
|
||||
|
||||
# allow core/filesystem to pristine nsswitch.conf
|
||||
rm "$pkgdir/usr/share/factory/etc/nsswitch.conf"
|
||||
sed -i '/^C \/etc\/nsswitch\.conf/d' "$pkgdir/usr/lib/tmpfiles.d/etc.conf"
|
||||
# match directory owner/group and mode from [extra]/polkit
|
||||
install -d -o root -g 102 -m 750 "$pkgdir"/usr/share/polkit-1/rules.d
|
||||
|
||||
# add example bootctl configuration
|
||||
install -Dm644 "$srcdir/arch.conf" "$pkgdir"/usr/share/systemd/bootctl/arch.conf
|
||||
install -Dm644 "$srcdir/loader.conf" "$pkgdir"/usr/share/systemd/bootctl/loader.conf
|
||||
install -Dm644 "$srcdir/splash-arch.bmp" "$pkgdir"/usr/share/systemd/bootctl/splash-arch.bmp
|
||||
install -Dm644 arch.conf "$pkgdir"/usr/share/systemd/bootctl/arch.conf
|
||||
install -Dm644 loader.conf "$pkgdir"/usr/share/systemd/bootctl/loader.conf
|
||||
install -Dm644 splash-arch.bmp "$pkgdir"/usr/share/systemd/bootctl/splash-arch.bmp
|
||||
|
||||
install -Dm644 "$srcdir/systemd-hwdb.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-hwdb.hook"
|
||||
install -Dm644 "$srcdir/systemd-sysusers.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-sysusers.hook"
|
||||
install -Dm644 "$srcdir/systemd-tmpfiles.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-tmpfiles.hook"
|
||||
install -Dm644 "$srcdir/systemd-update.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-update.hook"
|
||||
# pacman hooks
|
||||
install -Dm755 systemd-hook "$pkgdir"/usr/share/libalpm/scripts/systemd-hook
|
||||
install -Dm644 -t "$pkgdir"/usr/share/libalpm/hooks *.hook
|
||||
|
||||
# overwrite the systemd-user PAM configuration with our own
|
||||
install -Dm644 systemd-user.pam "$pkgdir/etc/pam.d/systemd-user"
|
||||
install -Dm644 systemd-user.pam "$pkgdir"/etc/pam.d/systemd-user
|
||||
}
|
||||
|
||||
package_libsystemd() {
|
||||
|
@ -240,12 +254,8 @@ package_libsystemd() {
|
|||
license=('GPL2')
|
||||
provides=('libsystemd.so' 'libudev.so')
|
||||
|
||||
# meson does not support installing subsets of files, no?
|
||||
# So do a full install to temporary directory, then install what we need.
|
||||
DESTDIR="$srcdir"/full-install ninja -C build install
|
||||
|
||||
install -dm755 "$pkgdir"/usr/lib/
|
||||
cp --archive "$srcdir"/full-install/usr/lib/lib{nss_*,systemd,udev}.so* "$pkgdir"/usr/lib/
|
||||
install -dm755 "$pkgdir"/usr
|
||||
mv libsystemd "$pkgdir"/usr/lib
|
||||
}
|
||||
|
||||
package_systemd-sysvcompat() {
|
||||
|
@ -255,17 +265,14 @@ package_systemd-sysvcompat() {
|
|||
conflicts=('sysvinit')
|
||||
depends=('systemd')
|
||||
|
||||
install -dm755 "$pkgdir"/usr/share/man/man8
|
||||
cp -d --no-preserve=ownership,timestamp \
|
||||
build/man/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8 \
|
||||
"$pkgdir"/usr/share/man/man8
|
||||
install -Dm644 -t "$pkgdir"/usr/share/man/man8 \
|
||||
build/man/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8
|
||||
|
||||
install -dm755 "$pkgdir/usr/bin"
|
||||
install -dm755 "$pkgdir"/usr/bin
|
||||
ln -s ../lib/systemd/systemd "$pkgdir"/usr/bin/init
|
||||
for tool in runlevel reboot shutdown poweroff halt telinit; do
|
||||
ln -s 'systemctl' "$pkgdir/usr/bin/$tool"
|
||||
ln -s systemctl "$pkgdir"/usr/bin/$tool
|
||||
done
|
||||
|
||||
ln -s '../lib/systemd/systemd' "$pkgdir/usr/bin/init"
|
||||
}
|
||||
|
||||
# vim: ft=sh syn=sh et
|
||||
|
|
11
core/systemd/systemd-binfmt.hook
Normal file
11
core/systemd/systemd-binfmt.hook
Normal file
|
@ -0,0 +1,11 @@
|
|||
[Trigger]
|
||||
Type = File
|
||||
Operation = Install
|
||||
Operation = Upgrade
|
||||
Target = usr/lib/binfmt.d/*.conf
|
||||
|
||||
[Action]
|
||||
Description = Registering binary formats...
|
||||
When = PostTransaction
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook binfmt
|
||||
NeedsTargets
|
11
core/systemd/systemd-catalog.hook
Normal file
11
core/systemd/systemd-catalog.hook
Normal file
|
@ -0,0 +1,11 @@
|
|||
[Trigger]
|
||||
Type = File
|
||||
Operation = Install
|
||||
Operation = Upgrade
|
||||
Operation = Remove
|
||||
Target = usr/lib/systemd/catalog/*
|
||||
|
||||
[Action]
|
||||
Description = Updating journal message catalog...
|
||||
When = PostTransaction
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook catalog
|
11
core/systemd/systemd-daemon-reload.hook
Normal file
11
core/systemd/systemd-daemon-reload.hook
Normal file
|
@ -0,0 +1,11 @@
|
|||
[Trigger]
|
||||
Type = File
|
||||
Operation = Install
|
||||
Operation = Upgrade
|
||||
Operation = Remove
|
||||
Target = usr/lib/systemd/system/*
|
||||
|
||||
[Action]
|
||||
Description = Reloading system manager configuration...
|
||||
When = PostTransaction
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook daemon-reload
|
38
core/systemd/systemd-hook
Normal file
38
core/systemd/systemd-hook
Normal file
|
@ -0,0 +1,38 @@
|
|||
#!/bin/sh -e
|
||||
|
||||
systemd_live() {
|
||||
if [ ! -d /run/systemd/system ]; then
|
||||
echo >&2 " Skipped: Current root is not booted."
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
udevd_live() {
|
||||
if [ ! -d /run/udev ]; then
|
||||
echo >&2 " Skipped: Device manager is not running."
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
each_conf() {
|
||||
while read -r f; do
|
||||
"$@" "$(basename "$f")"
|
||||
done
|
||||
}
|
||||
|
||||
case $1 in
|
||||
catalog) /usr/bin/journalctl --update-catalog ;;
|
||||
hwdb) /usr/bin/systemd-hwdb --usr update ;;
|
||||
update) touch -c /usr ;;
|
||||
sysusers) each_conf /usr/bin/systemd-sysusers ;;
|
||||
tmpfiles) each_conf /usr/bin/systemd-tmpfiles --create ;;
|
||||
|
||||
daemon-reload) systemd_live; /usr/bin/systemctl daemon-reload ;;
|
||||
udev-reload) udevd_live; /usr/bin/udevadm control --reload ;;
|
||||
binfmt) systemd_live; each_conf /usr/lib/systemd/systemd-binfmt ;;
|
||||
sysctl) systemd_live; each_conf /usr/lib/systemd/systemd-sysctl ;;
|
||||
|
||||
*) echo >&2 " Invalid operation '$1'"; exit 1 ;;
|
||||
esac
|
||||
|
||||
exit 0
|
|
@ -8,4 +8,4 @@ Target = usr/lib/udev/hwdb.d/*
|
|||
[Action]
|
||||
Description = Updating udev hardware database...
|
||||
When = PostTransaction
|
||||
Exec = /usr/bin/systemd-hwdb --usr update
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook hwdb
|
||||
|
|
11
core/systemd/systemd-sysctl.hook
Normal file
11
core/systemd/systemd-sysctl.hook
Normal file
|
@ -0,0 +1,11 @@
|
|||
[Trigger]
|
||||
Type = File
|
||||
Operation = Install
|
||||
Operation = Upgrade
|
||||
Target = usr/lib/sysctl.d/*.conf
|
||||
|
||||
[Action]
|
||||
Description = Applying kernel sysctl settings...
|
||||
When = PostTransaction
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook sysctl
|
||||
NeedsTargets
|
|
@ -5,7 +5,7 @@ Operation = Upgrade
|
|||
Target = usr/lib/sysusers.d/*.conf
|
||||
|
||||
[Action]
|
||||
Description = Updating system user accounts...
|
||||
Description = Creating system user accounts...
|
||||
When = PostTransaction
|
||||
Exec = /bin/sh -c 'while read -r f; do /usr/bin/systemd-sysusers "$(basename "$f")" ; done'
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook sysusers
|
||||
NeedsTargets
|
||||
|
|
|
@ -7,5 +7,5 @@ Target = usr/lib/tmpfiles.d/*.conf
|
|||
[Action]
|
||||
Description = Creating temporary files...
|
||||
When = PostTransaction
|
||||
Exec = /bin/sh -c 'while read -r f; do /usr/bin/systemd-tmpfiles --create "$(basename "$f")"; done'
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook tmpfiles
|
||||
NeedsTargets
|
||||
|
|
11
core/systemd/systemd-udev-reload.hook
Normal file
11
core/systemd/systemd-udev-reload.hook
Normal file
|
@ -0,0 +1,11 @@
|
|||
[Trigger]
|
||||
Type = File
|
||||
Operation = Install
|
||||
Operation = Upgrade
|
||||
Operation = Remove
|
||||
Target = usr/lib/udev/rules.d/*
|
||||
|
||||
[Action]
|
||||
Description = Reloading device manager configuration...
|
||||
When = PostTransaction
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook udev-reload
|
|
@ -8,4 +8,4 @@ Target = usr/
|
|||
[Action]
|
||||
Description = Arming ConditionNeedsUpdate...
|
||||
When = PostTransaction
|
||||
Exec = /usr/bin/touch -c /usr
|
||||
Exec = /usr/share/libalpm/scripts/systemd-hook update
|
||||
|
|
Loading…
Reference in a new issue