libbpf 1.4.0 + systemd 257 + a newer kernel results in segmentation
faults in libbpf 1.4.0, so let's explicitly pull in libbpf 1.5.0 or
newer to avoid this issue.
Fixes https://pagure.io/centos-sig-hyperscale/package-bugs/issue/22
(cherry picked from commit 8230f501b6)
Include epoch in versioned libbpf dependency
"""
$ rpmdev-vercmp '2:1.4.6-1.fc42' '1.5.0'
2:1.4.6-1.fc42 > 1.5.0
$ rpmdev-vercmp '2:1.4.6-1.fc42' '2:1.5.0'
2:1.4.6-1.fc42 < 2:1.5.0
"""
(cherry picked from commit 0d95af264f)
Drop libbpf versioned dependency version to 1.4.7
We don't need 1.5.0 to avoid the libbpf crash, the latest libbpf 1.4
patch release (1.4.7) also has the necessary fixes, so relax the
requirement a little to allow builds on Fedora 41 to succeed.
(cherry picked from commit ec182495e7)
packit will only rewrite the first Source0 that it finds, so we
list the Source0 that gets used if neither %branch nor %commit are
defined first.
(cherry picked from commit 5671cf6132)
[skip changelog]
- systemd-ac-power is moved to systemd-udev
- portablectl and importctl are moved to systemd-container (rhbz#2345551)
ac-power clearly is only useful for real hardware. portablectl
and importctl are niche tools that don't need to be in the main package
(even though they could theoretically be used not for containers).
Also split up some nested patterns into separate lines for readability.
(cherry picked from commit 49ec9f3286)
(cherry picked from commit 3671a5cc79)
- Fixes for assertion crashes and memory access issues in pid1 and
systemd-machined, and other fixes for systemd-repart,
systemd-resolved, systemd-stdio-bridge, sd-device, hibernation,
and the hardware database.
With that, systemd-resolved.service is not only disabled but also
stopped on package uninstall.
... (rhbz#2305391)
(cherry picked from commit 009c64d6a2)
Even on non-uefi architectures, ukify can be used to build UKIs for
UEFI images. For example, mkosi can use it to build UKIs on s390x.
To enable this use case, let's always build ukify, but with a conditional
dependency on systemd-boot only on arches that support UEFI.
We still want the Fedora systemd-user pam config when building with
--noprep so let's install the pam config file using a regular source
instead of patching the one provided by systemd.
rpm will imply --noprep when using --build-in-place in rpm 4.20 and
we're switching the mkosi rpm builds to use --noprep as well on older
rpm versions. This means we don't need to gate out patch applications
anymore with the %upstream macro.
rpmautospec doesn't like the merge: "unresolvable merge".
To avoid the issue, re-add the changelog file. Also, let's drop the
stuff that is only specific to EPEL, since this branch is primarily
for rawhide.
We had a *lot* of breakage caused by this change internally so let's
make the spec a little more conservative by only applying the shorter
shutdown timer for Fedora builds.
meson on CentOS Stream 9 is too old to properly handle symlinks
when installing test data so the systemd meson build script uses
rsync instead. Let's add the requisite build requires to make that
work.
For our nightly systemd build for the CentOS Hyperscale build it
would be very useful to download sources straight from git main on
github so let's allow defining the "branch" macro to do just that.
In a minimal installation, we pull in coreutils via dependencies.
coreutils-single is much smaller, so bias the resolved towards that.
$ sudo dnf5 install --releasever=rawhide --installroot=/var/tmp/inst1 --use-host-config \
/var/lib/mock/fedora-rawhide-x86_64/result/systemd-standalone-{repart,shutdown,sysusers,tmpfiles}-256.2-5*rpm
After this operation 57 MiB will be used (install 57 MiB, remove 0 B).
$ sudo dnf5 install --releasever=rawhide --installroot=/var/tmp/inst1 --use-host-config \
/var/lib/mock/fedora-rawhide-x86_64/result/systemd-standalone-{repart,shutdown,sysusers,tmpfiles}-256.2-6*rpm
After this operation 41 MiB will be used (install 41 MiB, remove 0 B).