Cooking Linux the right way: choosing the distribution
Preface
Linux is great for a server, but it's still a challenge for a desktop. The server requires stability and minimal resource usage, but does anybody know what the desktop requires? I used Linux at home for 20 years and I used it at work for several months, so in my viewpoint the following is important:
- Hardware support; you can know beforehand, whether the hardware is supported and choose the compatible hardware; so, it's better to have a wider choice!
- Software availability: you will not know beforehand, what software you need for the desktop;
- Known issues and solutions database aka community support and documentation availability.
If you value your time and prefer to get the job done (whether it's a hobby or a payable job) vs. fixing and tuning, according to my experience deb or rpm package formats are preferable. Hardware manufacturers distribute drivers and accompanying software in these formats, and commercial software manufacturers also prefer them. Some software is available in deb and not available in rpm and vice versa, but on average you can find a package you need in these two formats. Arch and Manjaro users suffer here, but you are welcome to install these in a virtual environment and play as much as you like.
The software availability issue is almost fixed with the help of Flatpak and Flathub: you can have fresh software on any distribution now, but for a limited number of programs.
The menu
Regarding the list of distributions I'd list the following:
Package format | Stable | Unstable |
---|---|---|
rpm | Rocky Linux (CentOS) | Fedora |
deb | Debian | Ubuntu |
I tried 3 of 4: Fedora as my main system at home, Ubuntu at work, and Debian for a few months at home. But first, a few words concering the 'stability'. Yes, it's about the number of bugs, which lead to system faults and excessive resource consumption, but 'stable' distributions are also less user-friendly. Let's go through the alternatives.
Rocky Linux
It's a successor for CentOS, which was very popular among scientists because scientists need to get the job done, they also need stability and they need it cheap. I can't say anything bad about it, maybe it doesn't have the latest software like Gnome, which is important for desktop users. Debian warns us:
Don't suffer from Shiny New Stuff Syndrome
I can fully admit that when you need to just get the job done, new shiny animations matter less than stability. With Rocky Linux, you can also fully benefit from Red Hat Linux documentation.
I just don't need this stability at home, so why not be on the edge with Fedora?
Debian
Debian is great for servers, I tried it at home and it lacks hardware support and some essential desktop features, like VPN support in Network Manager. It requires more effort in cases that require no effort in Fedora and Ubuntu. When my hard disk died, I decided to return to Fedora. I liked Debian for stability and low resource usage, but small desktop issues are disturbing and hard to fix. I mean suspend mode works not so well, wi-fi needs time to connect after suspend.
In terms of hardware support, some hardware manufacturers tend to have old software, so the software for my MFD worked in Debian, although it didn't work in Ubuntu and Fedora.
My idea was to combine Debian stability with the latest software versions from Flatpak, but for the desktop that wasn't enough, regretfully. You are trying to do desktop things on a server.
Ubuntu
Ubuntu works, but it seems that it was designed by marketing managers instead of engineers. It's heavily patched and these patches bring more bugs: more resource usage, less speed, and stability. It feels like windows if you missed it. I didn't get it, I tried to fix it by installing 'vanilla' software versions. Yes, it worked, but I didn't like it. For me, it seems that some solutions in Ubuntu are dead: Snap and Unity. At the end of the day, Ubuntu takes solutions from Fedora: Gnome, pipewire audio system. With Ubuntu, you just wait for technologies to migrate from Fedora. Still, some bugs are fixed and Ubuntu generally is more stable, than Fedora.
Besides, I consider the deb package format outdated, I had to fix corrupted dependencies several times.
Fedora
Fedora's way to fix things is like "let's invent another system". We don't like pulseaudio, let's make pipewire. We don't like deb, let's make rpm. We don't like yum, let's make dnf. It works in major versions, but it brings lots of bugs in the beginning. The kernel is so fresh, that it breaks hardware compatibility: during three years I had two severe bugs, last time wi-fi stopped working. And this high pace of progress is not going to stop. Too fresh software? We have a new answer: immutable linux.
Regarding community it's smaller than Ubuntu's one, so sometimes you have to look for answers on Ubuntu (or Arch) wiki and forums.
Conclusion
It's hard to recommend anything from the list, Fedora requires less effort after installation and works well for me. If you read this, it means that my wi-fi card worked. :) We'll look at a minimal software list for any distribution and apps to unleash the true Linux power in the next episodes, stay tuned!