Fedora Rawhide, GNOME, NVIDIA and Kernels

alex285
6 min readSep 10, 2018

--

hello! This is a small tip for the guys that want to jump to Fedora Rawhide and also have NVIDIA, and let me tell you! Rawhide together with Arch Linux and Silverblue are my favorite and by far Linuxes today!

By the time I’m writing this, Fedora 28 (GNOME 3.28) is the current stable release, and Fedora 29 (GNOME 3.30) has branched out, with Fedora 29 beta coming later in Sept

Whats Rawhide

Just in case you don’t know! Fedora maintains four systems. The previous version (F27 — GNOME 3.26), the current (F28 — G328), the next (F29 — G330) and the next after next, which is the Rawhide release, and what will become Fedora 30 with GNOME 3.32

Fedora unstable releases (eg F29) “derive” from Rawhide (that is basically a CI) and for a few weeks the two systems are almost identical, with most noticeable changes to be on different Kernel versions

Currently Rawhide has branched out on Fedora 30 and it comes with some Linux 4.19 RC version and the stable GNOME 3.30

GNOME in Rawhide

Rawhide’s policy regarding GNOME is to ship the latest upstream release no matter if that is stable or unstable

For example Rawhide now ships a stable GNOME 3.30, but when GNOME releases the unstable 3.31 series, Rawhide will update to that

Most specifically Rawhide will get

GNOME 3.31.1 - Oct
GNOME 3.31.2 - Nov
GNOME 3.31.3 - Dec
GNOME 3.31.4 - Jan
GNOME 3.31.90 (beta) - Feb
GNOME 3.31.92 (RC) - Mar
and eventually
GNOME 3.32.0 (stable) - Mar 14, 2019
See GNOME 3.32 Release Schedule

By that time, Fedora Rawhide will have branched out to Fedora 31. I guess you get how it goes right?

Rawhide is RR

Rawhide is a Rolling Release, and that means you will never have to upgrade. All you need to do is updates. Sometimes some “rebase” updates, for example when everything are re-built with a new GCC

Moreover Rawhide is a development Rolling Release system, because it ships some unstable software. However most of the upstream packages on repos are really on stable versions, with few exceptions

GNOME is one of them, unstable Kernels is another, Xorg / Wayland development versions yet another, and there are some more. But most of things are upstream stable

Does Rawhide break like hell?

Not really! Rawhide in many aspects gives even less annoyances than the stable Fedora releases (!!), and moreover provides very fast fixes!

Here is the 4 points that are most likely to annoy us

1. Unstable GNOME

Some nasty bug from GNOME unstable releases. To my experience GNOME the last couple of years pays extra attention to not ship major regressions on their unstable releases, but it still can happen

2. Various Fedora Things

Well, to name an example. 2–3 weeks ago a Rawhide update, screwed up boot. It was an easy manual fix, while the fix-update came few days later. Such things are likely to happen, and as a safe guard I reckon not to everyday update it, when everything works!

3. Unstable Xorg

That’s the worst it can happen, specially for NVIDIA owners! For instance at some point Rawhide (on F29) shipped Xorg 1.20 unstable, that was totally unsupported by NVIDIA, and it wasn’t even working with Nouveua!

And while Rawhide is a RR like Arch, downgrade isn’t supported, and it is even extremely hard to manually do it ..specially with XServer! Trust me!

Good news is that after Xorg 1.20 release I don’t think there will be more ABI breakages soon! I don’t know, I just hope!

4. Kernels

Rawhide typical desktop users are recommended to add the Kernel-No-Debug Repo and update Kernels from there. Still this might not be enough, but I will provide a better solution bellow. Also read on Rawhide Kernel Policies

0. SELinux

I don’t reckon or not-reckon to do this, but a thing I always personally do with Rawhide installation is to disable SELinux. I want to use Rawhide, not to debug it :p

In general you should know that packages in Rawhide they get into it, with automated testing only. There aren’t Testing repos in Rawhide. Oh and btw you can also add Koji repo to be even more updated :)

Flatpak on Rawhide

Flatpak on Rawhide works the same as everywhere else. But in Rawhide is even more crucial to use Flatpak apps

Most of Linux issues come straight from desktop apps and their dependencies. By using Flatpak when possible you minimize the problem, and you keep your base system as much clean and solid as it can be, and thus more stable

NVIDIA from RPM-Fusion

I’ll be honest here. RPM-Fusion is a bad repository (specially for Rawhide), and the guys there aren’t exactly helpful, which makes everything worse, but I’m still using this :/

I got a comment, about Negativo17 NVIDIA repo, that I didnt refer, because it isn’t perfect either for Rawhide, plus we might need to add RPM-Fusion for getting more things anyway. But you can try that instead!

If you aren’t familiar with Fedora, RPM-Fusion is a repository that provides what Fedora default repos don’t, because of Fedora Software Policies, and mainly patented or proprietary software like codecs and NVIDIA drivers

To install NVDIA drivers from there we first add the repo

$ dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpmSee Docs

And then we install NVIDIA

$ dnf install xorg-x11-drv-nvidia akmod-nvidiaSee Docs

Dont copy commands! Read here: rpmfusion.org

Speaking for NVIDIA on Fedora, Fedora doesn’t offer Mutter with EGLStream backend. We can get such builds from Copr repos, but tbh EGLStream / Wayland doesn’t work very good (it sucks really), so there isn’t much of point

And since there isn’t much of point to use Wayland and if you experience some weird lag on GDM or other issues, you can also do this

Open:
/etc/gdm/custom.conf
Uncomment WaylandEnable:
WaylandEnable=false

Get Kernels from Stable Fedora

Here’s my super advice if you want to use Fedora Rawhide daily! Instead of getting Kernels from Rawhide or Kernels No-debug repos, I strongly suggest to download them from a stable Fedora release

Kernels on Fedora Apps

You want these packages

kernel
kernel-core
kernel-devel
kernel-headers
kernel-modules
kernel-modules-extra

Then you install those locally with dnf or rpm and use --force option if needed

eg
$ rpm -i kernel-headers-4.18.3-1.fc29.x86_64.rpm --force

If NVIDIA modules won’t generate, force akmods build

$ akmods --force

To prevent an update to remove your stable kernel, you either pass the--exclude option

$ dnf update --exclude kernel*

Or you can lock the kernel package from dnf.conf .

Open this:
/etc/dnf/dnf.conf
Add this:
excludepkgs = kernel*

The reason you want to do this is because DKMS on RPM-Fusion modules doesn’t always work with Rawhide kernels, and there are some more issues too

Is Rawhide for me?

Not sure for you, but it certainly is for me! Rawhide is for everyone who’s fan of GNOME Desktop, who likes Fedora but hates upgrades, but also can deal with some workarounds!

But believe me, Rawhide is far from being unusable, and of course you can do whatever normal Fedora releases can do, like web-developing, setting up containers etc

Using Linux desktop isn’t maths to read docs and guides. Linux is physics! You only learn by experiments! -another alex wisdom quote :)

Point is you need to try Rawhide and see how it goes! This post was nothing but a small tip that might help you!

--

--