My Experience with Desktop Graphics on Fedora 38


Journey from NixOS

NixOS was great for trying out new software, being able to revert to previous system wide configurations in the form of generations, as well as isolating dependant packages and identifying them with the derivation as a hash.

Unfortunately, I had to rely on other experts to provide derivations for Qt, because its not easy to understand what dependencies and patches, and applying them in a Nix script.

Switching to Fedora 38

As I've driven Ubuntu 22.04 previously, and I believed there could be newer, and more pleasant distributions, I decided to try out Fedora, as it had gained Linus Torvalds' seal of approval, and I wanted to see how well the GNOME desktop environment would work on Wayland, as well as Firefox and other Qt based applications.

My laptop is a Laptop ThinkBook, with an AMD Ryzen 5600H CPU and a dedicated NVIDIA GeForce RTX 3060 mobile GPU. In short, launching programs with the NVIDIA Prime environment variables set works for fewer apps with Wayland. Firefox shows an empty window, so Chromium is used instead, and for Qt Apps I can use GPU offloading, but have to use the XCB platform back-end, IE for Stellarium:

switcherooctl launch -g 1 stellarium --startup-script=%f -platform xcb

On NixOS, Blender seemed to work with Wayland and with NVIDIA offloading, although on Fedora, just like Firefox, it shows a blank window. This is caused by an EGL Surface not being initialized properly as per the error log:

EGL Error (0x300D): EGL_BAD_SURFACE: An EGLSurface argument does not name a valid surface (window, pixel buffer or pixmap) configured for GL rendering.