Post

Switching to Fedora 42

Fedora Installation Tutorial

We are using Fedora 42 with GNOME (not KDE). You can download Fedora from the official website.
Note: Fedora 42 uses Wayland only – X11 support has been removed. This can cause issues with Nvidia GPUs, such as low frame rates or external monitor problems.
So far, support has been solid. By default, the system and applications run on the integrated GPU, and you can easily launch programs with the dedicated GPU.
Previously, I had to use prime select <nvidia|intel>, which also heavily drained the battery in Nvidia mode.

This guide will be updated continuously.

RPM Package Manager

Some useful rpm/dnf commands for those used to apt:

1
2
3
4
sudo dnf install <program>            # Install packages
sudo dnf reinstall <program>          # Reinstall packages
sudo dnf upgrade                      # Upgrade all packages
sudo dnf remove <package>             # Remove packages

Flatpak

We use Flatpak for most application installations.

Add Flathub

1
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Install applications

1
2
3
4
5
6
7
8
9
10
11
flatpak install flathub im.riot.Riot
flatpak install flathub com.visualstudio.code
flatpak install flathub com.syntevo.SmartGit
flatpak install flathub com.mattjakeman.ExtensionManager
flatpak install flathub org.gnome.World.PikaBackup
flatpak install flathub com.nextcloud.desktopclient.nextcloud
flatpak install flathub io.qt.QtCreator
flatpak install flathub org.keepassxc.KeePassXC
flatpak install flathub org.mozilla.firefox
flatpak install flathub com.brave.Browser
flatpak install flathub org.kde.okular

Note: Okular automatically used my signing certificate. If not, go to Settings > Configure Backends > PDF and select the certificate database from Firefox/Thunderbird using the NSS module.

Okular with certificate for signing PDFs

Optional: VSCodium (Open Source VSCode)

1
flatpak install flathub com.vscodium.codium

UI Customization

Icon Theme: Colloid

Install the Colloid Icon Theme:

1
2
3
git clone https://github.com/vinceliuice/Colloid-icon-theme
cd Colloid-icon-theme
./install.sh -d ~/.local/share/icons

Switch theme using gnome-tweaks.

GNOME Tweaks

1
sudo dnf install gnome-tweaks

With gnome-tweaks you can reenable the minimize and maximize buttons of the windows. For this open tweaks and go to Window and then enable minimize and maximize.

Gnome tweaks with enabling min/max buttons

GNOME Extensions

Use Extension Manager to install GNOME extensions.

Recommended extensions:

Geany with Dark Mode (Flatpak UI Theme)

1
2
3
flatpak install org.gtk.Gtk3theme.Adwaita-dark
flatpak override --user --env=GTK_THEME=Adwaita:dark org.geany.Geany
flatpak info --show-permissions org.geany.Geany

You can also set the variable using Flatseal:

1
GTK_THEME=Adwaita:dark

Flatseal with environement variables

Programming

Qt & Qt Creator

Install Qt5:

1
2
3
sudo dnf install qt5-*-devel
sudo dnf install qt-creator
sudo dnf install mesa-libGLU-devel

qt5-*-devel installs all Qt5 development packages. Use carefully!

Optional Qt6:

1
sudo dnf install qt6-qtbase-devel qt6-qttools-devel

Qt Creator Launch Options for NVIDIA

Under Projects > Run > Environment add:

1
2
3
QT_QPA_PLATFORM=xcb
__NV_PRIME_RENDER_OFFLOAD=1
__GLX_VENDOR_LIBRARY_NAME=nvidia

This ensures proper rendering with XWayland and Nvidia, fixing misaligned UI elements.

C++ / Compiler / Tools

1
2
3
4
sudo dnf install gcc-c++
sudo dnf install libstdc++-static
sudo dnf install cmake
sudo dnf install git clang make gdb

OpenModelica

1
2
sudo dnf config-manager addrepo --from-repofile=https://build.openmodelica.org/rpm/fc41/omc.repo
sudo dnf install openmodelica-nightly

EduVPN

1
2
3
4
5
6
7
8
9
10
11
12
curl -O https://app.eduvpn.org/linux/v4/rpm/app+linux@eduvpn.org.asc
sudo rpm --import app+linux@eduvpn.org.asc

cat << 'EOF' | sudo tee /etc/yum.repos.d/python-eduvpn-client_v4.repo
[python-eduvpn-client_v4]
name=eduVPN for Linux 4.x (Fedora $releasever)
baseurl=https://app.eduvpn.org/linux/v4/rpm/fedora-$releasever-$basearch
gpgcheck=1
EOF

sudo dnf install eduvpn-client
rm app+linux@eduvpn.org.asc  # Optional cleanup

Nvidia Driver

Option 1: RPMFusion

1
2
3
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install akmod-nvidia
sudo dnf install xorg-x11-drv-nvidia-cuda

Alternative method here (⚠️ not tested).

Migrating from Snap to Flatpak

Example: Migrate Thunderbird settings

1
2
mkdir -p ~/.var/app/org.mozilla.Thunderbird/.thunderbird
cp -r ~/snap/thunderbird/common/.thunderbird/* ~/.var/app/org.mozilla.Thunderbird/.thunderbird/

Backups

Pika Backup (via Flatpak)

1
flatpak install flathub org.gnome.World.PikaBackup

Simple and secure incremental backups with encryption.

Fixing Missing Icons in DashtoDock / AATWS

If a desktop application’s icon does not appear in Dash to Dock, it is usually due to a missing StartupWMClass entry in the application’s .desktop file.

Step 1: Find the correct WM_CLASS using LookingGlass

Launch LookingGlass with Alt+F2, then type lg and press Enter.
A debug window will appear.

  1. Go to the Windows tab.
  2. Find the running application in the list.
  3. Copy the exact value of wmclass.

You will use this value in your .desktop file as StartupWMClass.

LookingGlass Screenshot

Step 2: Update the .desktop file

Locate or create the .desktop file in ~/.local/share/applications.

Example:

1
2
3
4
5
6
7
8
9
10
[Desktop Entry]
Name=License Manager
Comment=Building Energy Performance and District Simulation
Exec=/run/media/hirth/Daten/Git/VICUS/LizenzManager/bin/release/LicenseManager
Icon=/run/media/hirth/Daten/Git/VICUS/LizenzManager/LicenseManager/resources/gfx/Logo.svg
Terminal=false
Type=Application
Categories=Science
StartupNotify=true
StartupWMClass=LicenseManager

What does StartupWMClass do?

The StartupWMClass entry connects the application’s window to the correct icon in the dock.
It is essential for proper icon display when using Dash to Dock or similar extensions.


Notes (so far) for Fedora 42 on ThinkPad X1 Extreme Gen 5

  • Hardware compatibility is very good
  • For more stable Nvidia support, consider disabling hybrid graphics in BIOS
  • Fedora 42 runs smoothly on Wayland, but some older apps/games may still need XWayland
  • Wayland still kinda slow, but ok
This post is licensed under CC BY 4.0 by the author.