feat: use Fedora kernel from ublue-os/bluefin for LTS-HWE builds#9
feat: use Fedora kernel from ublue-os/bluefin for LTS-HWE builds#9
Conversation
Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
Use the same Fedora kernel packages and version that ublue-os/bluefin uses, dynamically detected from the akmods container's ostree.linux label. This ensures LTS-HWE gets the latest Fedora hardware support instead of CentOS kernel. Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
- Fix wildcard expansion in mv commands for empty directories - Quote KERNEL_NAME variable in find command - Add note about Fedora version alignment with bluefin Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
|
The /tmp directory is mounted as tmpfs (read-only) in the Containerfile, so extracting tarballs to /tmp/ fails. Changed to use /run/hwe-download as a writable location for downloading and extracting HWE kernel and akmods packages. RPMs are then moved to their expected locations in /tmp. Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
|
@copilot
|
The build log appears to be cut off. Could you share the complete error message or let me know what issue you're encountering? The log shows the build starting successfully but doesn't show where it fails. |
|
@copilot python3-dnf-plugin-versionlock-4.7.0-9.el10.noarch Complete!
|
The log shows successful extraction of kernel RPMs and akmods, but it's cut off. Is the build completing successfully or is there an error further down in the logs? If there's an issue, please share the error message or failure point so I can help fix it. |
|
@copilot rpms/kmods/zfs/src/zfs-kmod-2.3.4-1.fc42.src.rpm |
The /tmp/akmods-*-rpms directories are read-only bind mounts from the Containerfile, so we can't move files into them. For HWE builds: - Extract akmods directly to /run/hwe-download subdirectories - Update override scripts (ZFS and Nvidia) to check ENABLE_HWE and use the correct path for finding akmods RPMs - Non-HWE builds continue to use the bind-mounted paths Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
Fixed in 5b0247f. The issue was that |
|
kernel-rpms/kernel-uki-virt-6.16.10-200.fc42.x86_64.rpm |
Fedora kernel packages require kernel-modules-core and kernel-modules-extra as dependencies. Added these to the INSTALL_PKGS list for HWE builds to resolve dnf dependency errors. Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
|
@copilot we need to install the same zfs and nividia akmods as fedora Bluefin also. They have to match the kernel. Pull the ublue-os/Bluefin repo to take a look at what akmods packages it installs. |
Install the same akmods packages that bluefin uses for HWE mode: - Common akmods: xone, openrazer, framework-laptop, v4l2loopback - ZFS: added pv package and module autoload configuration - Matches ublue-os/bluefin's akmods installation approach Co-authored-by: hanthor <5840441+hanthor@users.noreply.github.com>
Fixed in 8fd7702. Added installation of the same akmods packages that bluefin uses:
|
…blue-os#832) Fixes ublue-os#831 allows for power profiles to be change automagically when on AC/Battery
This PR consolidates AI agent instructions into a single AGENTS.md file in the repository root. ## Changes - Rename `.github/copilot-instructions.md` to `AGENTS.md` in root - Add attribution requirements for AI agents ## Attribution Requirements AI agents must now disclose what tool and model they are using in the "Assisted-by" commit footer: ``` Assisted-by: [Model Name] via [Tool Name] ``` Example: ``` Assisted-by: Claude 3.5 Sonnet via GitHub Copilot ``` This standardizes AI agent identification across all ublue-os repositories.
…est to a084b73 (ublue-os#833) This PR contains the following updates: | Package | Update | Change | |---|---|---| | quay.io/centos-bootc/centos-bootc | digest | `0519ffe` -> `a084b73` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNjkuMyIsInVwZGF0ZWRJblZlciI6IjQxLjE2OS4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…tructure for downloads
…swap logic for HWE support
…b.com/hanthor/bluefin-lts-fork into copilot/replace-kmods-sig-with-akmods
Replace kmods-sig kernel with standard kernel and akmods from ublue-os/bluefin for LTS-HWE image
Summary
This PR implements the requirement to use the exact same Fedora kernel and akmods from ublue-os/bluefin for the LTS-HWE image, instead of using kmods-sig CentOS kernels. The implementation follows bluefin's approach precisely to ensure consistency and better hardware support.
Changes Made
Removed KMODSIG conditional logic
ARG KMODSIGfrom Containerfilecentos-${KMODSIG:+kmodsig-}10tocentos-10Updated kernel-swap.sh for HWE mode
ostree.linuxlabel (same method as bluefin)Updated override scripts for HWE compatibility
Quality checks
just checkTechnical Implementation
When
ENABLE_HWE=1(LTS-HWE builds):When
ENABLE_HWE=0(Regular LTS builds):Benefits
✅ Hardware Support: Latest Fedora kernel provides better hardware compatibility
✅ Consistency: Uses exact same kernel/akmods as bluefin for predictable behavior
✅ Dynamic Updates: Auto-detects latest stable kernel version
✅ Backward Compatible: Non-HWE builds unchanged
✅ Maintainable: Follows bluefin's established patterns
✅ Robust: Proper error handling for edge cases, tmpfs mounts, bind mount conflicts, and dependency resolution
✅ Complete: Installs all akmods that bluefin uses (common, ZFS, Nvidia)
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.