* fix(build): retry dnf installs with fresh metadata
Fedora updates pushes leave mirrors briefly inconsistent. dnf rejects the
new repomd, accepts an older one, then 404s on RPMs that have already been
removed. A plain retry reuses that metadata, especially with the persistent
libdnf5 cache, so refresh it between attempts.
* fix(zfs): pin ZFS release instead of querying the GitHub API
Unauthenticated api.github.com calls from shared runner IPs get rate-limited,
and short curl retries cannot outlast an hourly limit. Pinning the full
release removes that call and makes version bumps show up as PRs.
BREAKING: ZFS_MINOR_VERSION and zfs.*.minor_version are no longer read.
Use ZFS_VERSION and zfs.*.version (full X.Y.Z). Renovate manages the pin.
* fix(just): resolve CoreOS kernel without pulling the image
cache-kernel pulls the full fedora-coreos image on every arch just to run
rpm -q kernel, and a quay.io CDN EOF fails the job. Read the build id from
the image index and the kernel from commitmeta.json instead.
An empty or invalid cache.json was also published, so the later step failed
with "Input required and not supplied: path". Write the cache only after
the fields check out, and drop a restored cache that does not match.
* fix(just): retry koji kernel lookups
A transient curl error was treated as "not found" because the check matched
the string "200 OK" with no retry. That dropped the release number by 100
and could select the wrong kernel or none. Retry transport failures, and
only use the fallback after a successful request that returns 404.
* docs: document RPMFUSION_MIRROR build override
The variable already changes where the build fetches RPM Fusion packages,
but it was not listed with the other Justfile environment variables.
* chore: remove centos and centos-kmodsig akmods support
CentOS Stream 10 builds are no longer needed. This change removes:
- The centos kernel flavor from images.yaml and its generated workflow
- The centos-kmodsig dead code from Justfile and fetch-kernel.sh
- All centos-specific branches in build scripts (prep, test, nvidia, dual-sign)
- The #ifndef CENTOS preprocessor guard in Containerfile.in
- CentOS references from README.md badges and examples
- CentOS from artifacthub package keywords
* docs: update akmods example version to 44
* chore: drop Fedora 43 builds
Fedora 43 akmods are no longer needed by the maintained downstreams.
Retire their build matrix alongside the removal of GTS support in
ublue-os/main to stop producing unused kernel and module caches.
* fix: preserve Fedora 43 CoreOS stable builds
Bluefin LTS HWE and GDX still consume coreos-stable-43 akmods, so retain that flavor while dropping the other Fedora 43 builds.
* bringup f45
* update the workflow
* do-not-test
* use dnf repo commands instead of sed
* gate openrazer on f45
* add notice for temp workaround for openrazer
coreos-stable ZFS builds have failed since CoreOS moved to kernel 7.1,
holding back kernel CVE fixes and nvidia driver updates from ucore and
other downstream consumers.
The 7.1 code compat (openzfs/zfs#18471) already shipped in 2.4.3 — only
META's Linux-Maximum gates it. Raising that ceiling (openzfs/zfs#18682)
unblocks the build without --enable-linux-experimental, which would
otherwise flood dmesg with EXPERIMENTAL warnings and mask real errors.
Also carry openzfs/zfs#18715, which replaces a compiled-out ASSERT3U in
zfs_fillpage() with a real bounds check. Without it an mmap read racing a
truncate underflows io_len and zero-fills forward across physical memory.
This is not 7.1-specific and already affects the 7.0.x builds we ship.
Neither commit is on zfs-2.4-release, so patching is gated to exactly
2.4.3 and stops once upstream ships a release carrying them.
coreos-testing no longer needs the experimental switch now that META
covers 7.1.
Default all ZFS akmod builds to the 2.4 release line through a per-kernel-flavor policy in images.yaml. Keep an explicit CoreOS testing override and enable OpenZFS's experimental Linux-kernel support there.
chore: move longterm to F44 and update to 6.18
longterm-6.12 is not being built for F44, but our
coreos longterm builds are based on coreos stable, which is
now based on F44. So we need to bump the longterm-6.12
to longterm-6.18
Also, this removes coreos-testing from F43 since that is
not used by downstreams.
* feat: support nvidia driver 590 with 580 LTS
Negativo17 added a 580 LTS repo in addition to the recent 590 update.
See: https://negativo17.org/nvidia-driver-580-lts-repository/
- 590 is always "open" and shipping on the existging `akmods-nvidia-open` image
- 580 is always "kernel" and shipping on a new `akmods-nvidia-lts` image
- gcc-c++ needed for 590
- no new `akmods-nvidia` images will be published
- sway environment was finally removed from ublue-os-nvidia-addons
- ublue-os-ucore-nvidia was removed as ublue-os-nvidia-addons now works for ucore
* add nvidia/nvidia-lts to cleanup
* set longterm default akmods_target to zfs
* bypass aarch64 for 590 nvidia driver
it won't build for me so this at least gets the intel builds going
* codacy fixes
* fixup typos
* nvidia-lts repo name should match file name
* enable F43 coreOS stable builds
* keep coreos-testing on F43, drop CentOS kmods SIG builds
Fedora CoreOS is now F43 for both stable and testing, so
also remove longterm-6.12 from F42. For same reason keep
building both stable and testing kmods for coreos F43.
centos-kmodsig are no longer in use by bluefin-lts, thus
removing to avoid noise.
Also, nvidia kmods are now only built when with a repo
validated nvidia-driver version.
---------
Co-authored-by: Benjamin Sherman <benjamin@holyarmy.org>
* fix: enable Fedora 43 CoreOS builds to succeed
with Fedora 43, CoreOS switched to a Containerfile (podman build)
solution for publishing their images. As a side effect they no longer
include the 'ostree.linux' label on those images.
This causes our coreos kernel version lookup to query RPM within
a given image to find the current kernel rather than inspecting
the image label.
Also some small cleanup to variables/comments to make more clear
how this works.
* update workflow for coreos-testing to use F43
* fix: remove bazzite and all of its modules
* fix: remove extra image by merging it into common
* fix: update codeowners
* fix: remove spurious cat
* fix: remove fedora 41
* fix: only build previous extra modules for x86
* fix: remove extra modules from common
* chore: update readme by removing removed modules
* fix: remove kvmfr completely
* feat: replace centos-hsk kernel with centos-kmodsig
This replaces the Hyperscale (hsk) kernel (which is no longer used by Bluefin LTS)
with the CentOS Kmods SIG kernel, now used for Bluefin LTS (HWE).
Closes: #349Closes: #370
* correct kernel download
* can't install packages which down exist
* correct kmodsig kernel version query and download
* re-add kernel-core install
* cleanup and add dracut to kmods SIG kernel install
* slight cleanup