diff options
-rw-r--r-- | libre/systemd/PKGBUILD | 29 | ||||
-rw-r--r-- | libre/systemd/initcpio-install-systemd | 3 | ||||
-rw-r--r-- | libre/systemd/initcpio-install-udev | 65 |
3 files changed, 72 insertions, 25 deletions
diff --git a/libre/systemd/PKGBUILD b/libre/systemd/PKGBUILD index 85072d623..bfc8c65ed 100644 --- a/libre/systemd/PKGBUILD +++ b/libre/systemd/PKGBUILD @@ -11,10 +11,10 @@ pkgname+=('systemd-common' 'systemd-udev') # We split Arch's systemd-libs into systemd-$X, for the following $X: _systemd_libs=('libsystemd' 'libudev' 'nss-systemd' 'nss-myhostname' 'nss-mymachines' 'nss-resolve') pkgname+=("${_systemd_libs[@]/#/systemd-}") -_tag='f1d37a5c491d85255e9996960dc2889a15022b78' # git rev-parse v${_tag_name} -_tag_name=249.5 +_tag='620928e8026166a00d31142f0b38ba8b8e498cc4' # git rev-parse v${_tag_name} +_tag_name=249.6 pkgver="${_tag_name/-/}" -pkgrel=2 +pkgrel=3 pkgrel+=.parabola1 arch=('x86_64') arch+=('i686' 'armv7h' 'ppc64le') @@ -65,8 +65,8 @@ sha512sums=('SKIP' '10f3b477527ec263cc6465c84d94416e356435930edc9e26844a0fd4f71e87a27fa0f91ce24b43a22cacdd2ead5e760e9d607369bc537a8da8d34021302a89a1' '34541f1967536524329867f9f341f8d9250d9d771c60dc3e6a22ccb82fc01f103cfd3f9903329777591ccbecd2446622a5d6b3804fa0411482b85c70593ee8ad' 'f0d933e8c6064ed830dec54049b0a01e27be87203208f6ae982f10fb4eddc7258cb2919d594cbfb9a33e74c3510cfd682f3416ba8e804387ab87d1a217eb4b73' - 'f599e1a35cba2c4e83e37c2299fac23ae128d8f68081283e71e1729384975dee1c4b677787f31a17890aeb98c8d2fc90405a202644290708ef9c027315022b17' - 'a25b28af2e8c516c3a2eec4e64b8c7f70c21f974af4a955a4a9d45fd3e3ff0d2a98b4419fe425d47152d5acae77d64e69d8d014a7209524b75a81b0edb10bf3a' + '77582416df858e34bc05a9928ddacbe506d24946576cb7c08c7131cf2a9e059d8ff80b226684fc942bca2edf0c6d2584fa3e22939284b102b30395450784c4d3' + '8af5d7b1553be0cc193440dbb94683c2d2d777634dac4369716d75a1b2c2564551c836f3aee8220edfa5ef59122dea737bfe60c588637249bf67e15dba0534d0' '70b3f1d6aaa9cd4b6b34055a587554770c34194100b17b2ef3aaf4f16f68da0865f6b3ae443b3252d395e80efabd412b763259ffb76c902b60e23b6b522e3cc8' '6c6f579644ea2ebb6b46ee274ab15110718b0de40def8c30173ba8480b045d403f2aedd15b50ad9b96453f4ad56920d1350ff76563755bb9a80b10fa7f64f1d9' 'a50bc85061a9a16d776235099867bc1a17c17dddb74c1ecf5614c849735a9779c5e34e5ddca8ca6af4b59a40f57c08ecf219b98cab09476ddb0f110e6a35e45c' @@ -91,11 +91,8 @@ sha512sums=('SKIP' '28a5b3fc9e2c5cec9267bb96725c73ee77788514f140c0cf8df765af64bc8130dd02f4863d9128ac45d54256b2ab4f2b06d1a3f65660ce1dfba5727618cd1839') _backports=( - # coredumpctl: stop truncating information about coredump - '473627e1c9fcdf8f819ced2bb79cb7e9ff598b0c' - - # Revert "core: Check unit start rate limiting earlier" - '4fa9d8f14523982482386d398d2b2669902f2098' + # scope: count successful cgroup additions when delegating via D-Bus + 'c65417a01121301fdf7f8514ee7663d287af3a72' ) _reverts=( @@ -139,12 +136,12 @@ build() { # * Cloudflare (https://1.1.1.1/) # * Quad9 without filtering (https://www.quad9.net/) # * Google (https://developers.google.com/speed/public-dns/) - 1.1.1.1 - 9.9.9.10 - 8.8.8.8 - 2606:4700:4700::1111 - 2620:fe::10 - 2001:4860:4860::8888 + 1.1.1.1#cloudflare-dns.com + 9.9.9.10#dns.quad9.net + 8.8.8.8#dns.google + 2606:4700:4700::1111#cloudflare-dns.com + 2620:fe::10#dns.quad9.net + 2001:4860:4860::8888#dns.google ) if [ "$CARCH" = "armv7h" ]; then diff --git a/libre/systemd/initcpio-install-systemd b/libre/systemd/initcpio-install-systemd index 05ccb904f..f53ffb639 100644 --- a/libre/systemd/initcpio-install-systemd +++ b/libre/systemd/initcpio-install-systemd @@ -1,5 +1,8 @@ #!/bin/bash +# This is in 'udev' and 'systemd' hook... Let's hope we have +# it in mkinitcpio soon. +# https://github.com/archlinux/mkinitcpio/pull/54 add_udev_rule() { # Add an udev rules file to the initcpio image. Dependencies on binaries # will be discovered and added. diff --git a/libre/systemd/initcpio-install-udev b/libre/systemd/initcpio-install-udev index 31d982712..713fbf4cc 100644 --- a/libre/systemd/initcpio-install-udev +++ b/libre/systemd/initcpio-install-udev @@ -1,18 +1,65 @@ #!/bin/bash +# This is in 'udev' and 'systemd' hook... Let's hope we have +# it in mkinitcpio soon. +# https://github.com/archlinux/mkinitcpio/pull/54 +add_udev_rule() { + # Add an udev rules file to the initcpio image. Dependencies on binaries + # will be discovered and added. + # $1: path to rules file (or name of rules file) + + local rules="$1" rule= key= value= binary= + + if [[ ${rules:0:1} != '/' ]]; then + rules=$(PATH=/usr/lib/udev/rules.d:/lib/udev/rules.d type -P "$1") + fi + if [[ -z $rules ]]; then + # complain about not found rules + return 1 + fi + + add_file "$rules" /usr/lib/udev/rules.d/"${rules##*/}" + + while IFS=, read -ra rule; do + # skip empty lines, comments + [[ -z $rule || $rule = @(+([[:space:]])|#*) ]] && continue + + for pair in "${rule[@]}"; do + IFS=' =' read -r key value <<< "$pair" + case $key in + RUN@({program}|+)|IMPORT{program}|ENV{REMOVE_CMD}) + # strip quotes + binary=${value//[\"\']/} + # just take the first word as the binary name + binary=${binary%% *} + [[ ${binary:0:1} == '$' ]] && continue + if [[ ${binary:0:1} != '/' ]]; then + binary=$(PATH=/usr/lib/udev:/lib/udev type -P "$binary") + fi + add_binary "$binary" + ;; + esac + done + done <"$rules" +} + build() { local rules tool - add_binary /usr/lib/systemd/systemd-udevd - add_binary /usr/bin/udevadm - add_binary /usr/bin/systemd-tmpfiles + map add_binary \ + '/usr/lib/systemd/systemd-udevd' \ + '/usr/bin/udevadm' \ + '/usr/bin/systemd-tmpfiles' - for rules in 50-udev-default.rules 60-persistent-storage.rules 64-btrfs.rules 80-drivers.rules; do - add_file "/usr/lib/udev/rules.d/$rules" - done - for tool in ata_id scsi_id; do - add_file "/usr/lib/udev/$tool" - done + map add_udev_rule \ + '50-udev-default.rules' \ + '60-persistent-storage.rules' \ + '64-btrfs.rules' \ + '80-drivers.rules' + + map add_file \ + '/usr/lib/udev/ata_id' \ + '/usr/lib/udev/scsi_id' add_runscript } |