Ben Leskey | Blog

Switching to openSUSE Tumbleweed

2024-08-06 #software

  1. The Hardware
  2. KDE + Software
  3. Decent hardware support
    1. Setting up NVIDIA
  4. NVIDIA + Secure Boot
  5. Codecs
After over ten years of Ubuntu with the i3 window manager and a host of custom scripts as my desktop OS, I've switched to using openSUSE Tumbleweed with KDE Plasma.

The Hardware

I took two identical Dell Inspiron 5577 laptops and cobbled them together into something slightly better. I chose one unit as the base for the new machine and the other as a donor unit since it had a random power off issue when using the graphics card. I swapped out the slow-as-sin hard drive in my chosen unit with a new SSD, then took the 8 GB RAM stick from the donor unit and stuck it into the chosen unit for a comfortable 16 GB RAM. I also had to steal the keyboard from the donor unit as the chosen unit's keyboard had a lot of dead keys from some damage. After the dust settled, I was left with a nice recycled build, as reported by KDE system information:

Operating System: openSUSE Tumbleweed 20240803
KDE Plasma Version: 6.1.3
KDE Frameworks Version: 6.4.0
Qt Version: 6.7.2
Kernel Version: 6.10.2-1-default (64-bit)
Graphics Platform: X11
Processors: 4 × Intel® Core™ i5-7300HQ CPU @ 2.50GHz
Memory: 15.4 GiB of RAM
Graphics Processor: NVIDIA GeForce GTX 1050/PCIe/SSE2
Manufacturer: Dell Inc.
Product Name: Inspiron 5577
System Version: 1.1.3

KDE + Software

KDE is an excellent desktop environment. Coming from i3, I find it very user-friendly, and entirely as powerful if more mouse-focused. The integration with the wide array of programs is refreshing.

The best part of openSUSE Tumbleweed is, of course, the software selection. New versions of everything, and a host of package repositories, all with frequent updates.

Decent hardware support

All the hardware is supported, including the NVIDIA graphics card. The only issue is (a classic Linux problem) with suspend and hibernate - the graphics card sometimes does not power back on. I don't need either state, so I just disabled them by masking their targets: sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target .

Setting up NVIDIA

The yast software installer automatically prompted me to install the NVIDIA drivers, and after they were installed I made them default with sudo prime-select boot nvidia. Fairly easy!

NVIDIA + Secure Boot

The biggest problem with the NVIDIA drivers is updating them. With UEFI secure boot enabled, each time the drivers were upgraded I had to enroll their keys at boot time. If I missed the 10 second window (and you only get one chance, even after rebooting), the graphical environment couldn't come up and I had to recover manually by running sudo mokutil --import /usr/share/nvidia-pubkeys/whatever-nvidia-pubkey.der from the recovery environment. You can also disable kernel module verification by running sudo mokutil --disable-validation. This will ask you to set up a small password and then disable the verification at next boot time (assuming you can remember the small password you set up).

Codecs

By default, openSUSE does not provide some codecs, e.g. for some internet video formats or for Discord live video streaming. The fix is simple but not prompted at all: sudo zypper install opi && sudo opi codecs will add the correct repositories and install the needed codecs.