sentry/kernel-blu

Project ID: 140659

Description

If you prefer immutable systems you can use Bazzite which shares many kernel patches

If you are interested in a more complete out of the box experience, I recommend trying out Nobara

Neither of these projects make use of kernel-blu but they are considered friends of the project and some work may be shared between them.

kernel-blu

What is this?

kernel-blu is a custom fedora kernel based Fedora's always ready kernel It aims to support more hardware, improve existing functionality and give end-users access to cutting-edge features.

Its based on the old kernel-fsync kernel.

What does it contain?

kernel-blu contains quite a few additions:

  • amdgpu radeon patch
  • amdgpu HDR support
  • Bore CPU Scheduler
  • i915 async page flipping fixes
  • i915 real-time capabiltiies
  • uinput overrides
  • amd pstate improvements
  • BBR3
  • miscellaneous additions
    • usb interrupt interval override
    • Fixing DualShock bluetooth poll rate to 1ms

[patch] used to be included, why was it removed?

patches are added based on recommendations from contributors and users but often they are for specific hardware that I do not have to test. If a patch becomes too cubersome to maintain it may be removed until its made clear that there are people relying on it, feel free to open an issue on Github if this is the case.

Here are some examples of patchsets that have been removed and why:

  • asus-linux

    • often introduces changes across the kernel that are result in incompatibilities in other patches
    • not extremely well tested so many issues come up
    • I do not own relevant ASUS hardware to test it
  • Steam Deck patches

    • changes behavior of some subsystems in ways that are required for the Steam Deck but not on regular Computers
    • Little to no effort being made to upstream the changes, work is being done by the community to clear this up
    • Most Steam Deck users use SteamOS but I am open to readding this if the demand is there
  • acpi override

    • allows arbitrary acpi calls to be from userspace potentially resulting in badly behaved apps issuing malicious instructions
    • there are few applications that require this
  • ACS override

    • allows IO boundaries to be ignored which would enable devices in one group to communicate with each other regardless of host system, lots of potential for exploitation
  • t2 macbook patches

    • Devices are practically EOL with more effort going towards supporting the next generation of Apple M1 computers
    • No hardware to test
  • Project C Scheduler

    • Initially tried but later replaced with the more reliable BORE due to instability

Can you add more patches?

I'm always open to patch recommendations, feel free to open an issue on the [Github repo]https://github.com/Jan200101/kernel-blu). I am but a single person, so I don't always have the necessary means to test or verify some patches, let alone make judgement calls if some patches are sane to include so in general only things that are optional or bring no major downside are included.

Can you port it to other distros?

kernel-blu is based on the Always Ready Kernel, it should be possible to use the kernel tree when building your distros kernel. If you want to port the additions to a different kernel a helpful repo with patches is provided here.

Here is a non comprehensive list of patches that used to be included but were removed and why:

  • linux-surface: Not updated for 6.14, will be readded at a later date
  • asus-linux: unmaintainable
  • steam deck: multiple different patches, unclear which to pick
  • acs-override: enables sandbox escapes through IOMMU

Made possible thanks to:

Installation Instructions

Fedora

dnf copr enable sentry/kernel-blu
dnf update --refresh

If you don't want any official Fedora kernels and only use this blu one
edit /etc/yum.repos.d/fedora-updates.repo and add

exclude=kernel*

to the bottom of the [updates] section

Fedora Silverblue

⚠️⚠️⚠️ Support for Silverblue and its flavors is minimal. If these instructions stop working you may need to figure out how to do this yourself ⚠️⚠️⚠️

Silverblue has no official support for copr, so some manual work is involved, I recommend using Bazzite instead because it comes with more functionality out of the box.

sudo wget https://copr.fedorainfracloud.org/coprs/sentry/kernel-blu/repo/fedora-<version>/sentry-kernel-blu-fedora-<version>.repo -O /etc/yum.repos.d/kernel-fsync.repo
sudo rpm-ostree override replace --experimental --freeze --from repo='copr:copr.fedorainfracloud.org:sentry:kernel-fsync' kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra

Active Releases

The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).

Release Architectures Repo Download
Fedora 40 x86_64 (759)* Fedora 40 (0 downloads)
Fedora 41 x86_64 (25204)* Fedora 41 (2309 downloads)
Fedora 42 x86_64 (13965)* Fedora 42 (969 downloads)
Fedora 43 x86_64 (0)* Fedora 43 (4 downloads)
Fedora rawhide x86_64 (0)* Fedora rawhide (135 downloads)

* Total number of downloaded packages.