Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

module idea: custom-kernel #148

Open
fiftydinar opened this issue Feb 26, 2024 · 3 comments
Open

module idea: custom-kernel #148

fiftydinar opened this issue Feb 26, 2024 · 3 comments
Labels
priority: low Might be supported or done in the future, but won't be prioritised type: discussion Questions, proposals and info that requires discussion. type: feature Brand new functionality, features, pages, workflows, endpoints, etc.

Comments

@fiftydinar
Copy link
Collaborator

fiftydinar commented Feb 26, 2024

Usecase

It would allow users to experience better hardware support, without making multiple custom images (avoiding quirks like needing to rebase back & forth if different hardware configuration is used).
Most custom kernels contain Surface, Asus or Lenovo Legion patches, along with Steam Deck patches too & some others.

It would also allow users to enjoy using some additional hardware functionality, which is not possible to obtain through akmods module.
F.e. overclocking USB peripherals polling rate is not possible to get through akmods.

Which custom kernel to offer?

This one would highly depend on user demand & custom kernel reliability, but I think that those 2 kernels are the most preferable:

  1. fsync kernel
  • most reliable, as it uses vanilla Fedora kernel as a base, Bazzite uses this as their kernel too
  1. CachyOS kernel
  • uses cutting-edge tweaks, for users that need those, but is less reliable, as it's direct port from Arch

Xanmod kernel was used before, but it's depreciated for Fedora at this point (it's also worse then 2 kernels mentioned above imo).

Interestingly, akmods offers support for fsync kernel, for kernel modules which are not or won't be built into kernel.
Bazzite has a list of akmods they install for fsync kernel in their Containerfile.
This would also mean that fsync is the only custom kernel where you could install Nvidia drivers into them.

Implementation

While you can install custom kernel successfully now by regularly using rpm-ostree (with cliwrap install-to-root), you still won't get Secure Boot support if you boot with this kernel.

To solve this, we would need to use GitHub action, which is similar to this one:
https://github.com/EyeCantCU/kernel-signer

I don't know if it's necessary to implement this both in GitHub Action & BlueBuild CLI, or just in GitHub Action.

This would need to get merged to support kernels which have more exotic kernel-version naming, like CachyOS:
EyeCantCU/kernel-signer#10

@xynydev
Copy link
Member

xynydev commented Feb 26, 2024

Interesting idea, but seems kind of hard to do. I would prioritize easier to build modules such as #119, and improving overall code standards, quality, formatting and stability in this repo.

@xynydev xynydev added type: feature Brand new functionality, features, pages, workflows, endpoints, etc. priority: low Might be supported or done in the future, but won't be prioritised type: discussion Questions, proposals and info that requires discussion. labels Mar 8, 2024
@fiftydinar
Copy link
Collaborator Author

fiftydinar commented Jul 11, 2024

Utilizing this can make this module easy & reliable to implement (with limited kernel options by the repo):
https://github.com/ublue-os/kernel-cache

Secure Boot support is solved, since they sign the kernel in that repo now.

Current kernel options include:

  • main (vanilla kernel signed with Ublue secure key)
  • fsync
  • surface
  • asus
  • coreos-stable
  • coreos-testing

Maybe another custom kernel can be added too, like CachyOS kernel, but that is not guaranteed, since the repo is utilized with needs of Universal Blue maintainers.

@fiftydinar
Copy link
Collaborator Author

fiftydinar commented Jul 11, 2024

Here's related issue, which should increase compatibility with installing custom kernels on Fedora Atomic systems:

#276

Edit: No need for it anymore, issue is closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority: low Might be supported or done in the future, but won't be prioritised type: discussion Questions, proposals and info that requires discussion. type: feature Brand new functionality, features, pages, workflows, endpoints, etc.
Projects
None yet
Development

No branches or pull requests

2 participants