diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD index 8253147bc..fd4147592 100644 --- a/core/systemd/PKGBUILD +++ b/core/systemd/PKGBUILD @@ -13,7 +13,7 @@ pkgname=('systemd' 'systemd-libs' 'systemd-resolvconf' 'systemd-sysvcompat') # Can be from either systemd or systemd-stable _commit='1e5d2d656420d0e755dbcf72aeba3c3aba54e956' pkgver=242.0 -pkgrel=1 +pkgrel=3 arch=('x86_64') url='https://www.github.com/systemd/systemd' makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gperf' 'lz4' 'xz' 'pam' 'libelf' @@ -70,6 +70,17 @@ sha512sums=('SKIP' '209b01b044877cc986757fa4009a92ea98f480306c2530075d153203c3cd2b3afccab6aacc1453dee8857991e04270572f1700310705d7a0f4d5bed27fab8c67') _backports=( + # socket-util: make sure accept_flush() doesn't hang on EOPNOTSUPP + 'f3d75364fbebf2ddb6393e54db5e10b6f6234e14' + # basic/socket-util: put a limit on the loop to flush connections + '67962036f6c6cfd34828c1f1f1fbdc0018fb9898' + + # network: logs link state change + '0beb9542e90ab1c5d1507a1046a326fbcf73861c' + # network: prevent interfaces to be initialized multiple times + 'bd08ce56156751d58584a44e766ef61340cdae2d' + # network: fix ref/unref logic for Link object + '5f707e1280d7c66d3adcffd47a23ad446257f355' ) _reverts=( @@ -84,12 +95,14 @@ prepare() { # the verified tag is in) git merge --ff-only "${_commit}" - local c - for c in "${_backports[@]}"; do - git cherry-pick -n "$c" + local _c + for _c in "${_backports[@]}"; do + git log --oneline -1 "${_c}" + git cherry-pick -n "${_c}" done - for c in "${_reverts[@]}"; do - git revert -n "$c" + for _c in "${_reverts[@]}"; do + git log --oneline -1 "${_c}" + git revert -n "${_c}" done # Replace cdrom/dialout/tape groups with optical/uucp/storage @@ -100,43 +113,55 @@ prepare() { } pkgver() { - local version count - cd "$pkgbase-stable" - version="$(git describe --abbrev=0 --tags)" - count="$(git rev-list --count ${version}..)" - printf '%s.%s' "${version#v}" "${count}" + local _version _count + _version="$(git describe --abbrev=0 --tags)" + _count="$(git rev-list --count ${_version}..)" + printf '%s.%s' "${_version#v}" "${_count}" } build() { - local timeservers=({0..3}.arch.pool.ntp.org) + local _timeservers=({0..3}.arch.pool.ntp.org) + local _nameservers=( + # We use these public name services, ordered by their + # privacy policy (hopefully): + # * 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 + ) LDFLAGS+=" -Wl,-fuse-ld=bfd" CFLAGS+=" -fno-lto" CXXFLAGS+=" -fno-lto" - local meson_options=( + local _meson_options=( + -Dversion-tag="${pkgver}-${pkgrel}-arch" + -Dgnu-efi=false -Dima=false -Dlibidn2=true - -Dversion-tag="${pkgver}-${pkgrel}-arch" - -Dlz4=true -Ddbuspolicydir=/usr/share/dbus-1/system.d - -Ddefault-dnssec=no -Ddefault-hierarchy=hybrid -Ddefault-locale=C -Ddefault-kill-user-processes=false -Dfallback-hostname='archlinux' - -Dntp-servers="${timeservers[*]}" + -Dntp-servers="${_timeservers[*]}" + -Ddns-servers="${_nameservers[*]}" -Drpmmacrosdir=no -Dsysvinit-path= -Dsysvrcnd-path= ) - arch-meson "$pkgbase-stable" build "${meson_options[@]}" + arch-meson "$pkgbase-stable" build "${_meson_options[@]}" ninja -C build } diff --git a/core/systemd/systemd.install b/core/systemd/systemd.install index e93b013ee..417110181 100644 --- a/core/systemd/systemd.install +++ b/core/systemd/systemd.install @@ -53,8 +53,13 @@ _233_75_3_changes() { fi } -_242_1_changes() { - rm -rf /var/lib/systemd/timesync /var/lib/private/systemd/timesync +_242_0_2_changes() { + if [[ -L var/lib/systemd/timesync ]]; then + rm var/lib/systemd/timesync + if [[ -d var/lib/private/systemd/timesync ]]; then + mv var/lib/{private/,}systemd/timesync + fi + fi } post_install() { @@ -91,7 +96,7 @@ post_upgrade() { 230-1 232-8 233.75-3 - 242-1 + 242.0-2 ) for v in "${upgrades[@]}"; do