End of last year, I’ve quit Ubuntu, after more than 7 years, to find out what was the best GNOME 3 Linux distribution. I’ve selected three major distributions: Ubuntu 11.10, Opensuse 12.1 and Fedora 16. I spent more than a month with each. Here’s what I’ve found and learned.
What I’m expecting from a distribution
Before asking yourself what is your distribution of choice, maybe you should start by clarifying what you really expect from a distribution. In fact, the list is quite short for me:
- I expect a good GNOME 3 experience, as close as possible from upstream.
- I want an easy way to install/manage software.
- I want all the software easily available and upgradable. This includes proprietary codecs, flash plugin, games, etc.
- I want the latest versions of those software and quickly after they are released.
- Be easily installable.
- Good default: the less I’ve to do when reinstalling, the better.
- Other than that, stay out of my way. No specific configuration tool. GNOME should handle that.
But that’s not all. Being a Linux evangelist, I install Linux for a lot of people. Which add completely different requirements.
- There should be a stable version with a long support time so I upgrade those people as rarely as possible.
- The stable version should be stable and as trouble free as possible. This include incremental upgrade and they should be prevented to make a complete distribution upgrade (because it is never trouble free).
- The stable version should be smart enough to update important things like hardware drivers, major versions of Firefox, etc.
- The installation should come with a selection of pretty wallpaper, good default, most needed software. (the less I’ve to do when installing, the less I forget something which may block them as soon as I leave the room).
- Installation process have to look sweet and requires the minimal input from me. I will be installing it when drinking tea with them.
Ubuntu has the easiest and most efficient installation tool. Installing is a breeze: boot, answer very few questions, handle your complex partitioning scheme if you want, click install, wait. You are done. It’s hard to think of an easiest way to install a distribution.
When it comes to handle software, Ubuntu is at his best: very graphical applications manager or synaptic and apt-get for those who prefer being efficient. Ubuntu packages most of the software I need. For more exotic or experimental stuffs, there is the concept of PPA, a small repository maintained by the developers themselves. This is a two-edged sword as I often end with tenth of PPA, conflicting with each other.
It has good default with video and music sample and pretty wallpapers.
Ubuntu has a good version scheme. A “normal” version, released every six months, which is perfect for my use, and a “long term support” version, released every two years. That would be perfect, isn’t it?
Unfortunately, this has a price.
I had lot of problems with GNOME 3 under Ubuntu, including regular freezes and annoying bugs. This could be acceptable but there’s a communication problem between Ubuntu and upstream GNOME. Ubuntu developers keep telling you that the bug is upstream, GNOME developers reject bug as being specific to Ubuntu. In the end, you have to live with those bugs. It is true that Ubuntu patches GNOME a lot. Having a regular GNOME 3 experience under Ubuntu requires a lot of boring tweaking (replacing ligthdm by gdm, removing overlay scrollbar,…).
This is of course a problem when I install Ubuntu for someone else. Should I heavily modify his/her installation or make him/her use something I’m not comfortable with (Unity)?
Ubuntu also reveal its dark side when it comes to upgrading. As a rule of thumb, I reinstall Ubuntu every six months. Upgrading Ubuntu is a recipe for disaster and not making a clean reinstall will be paid, sooner or later.
This is to the point where nearly everybody I know has a bad experience with upgrade. As a consequence, all my “non-geek” friends don’t upgrade. Not at all. They don’t understand the difference between simple upgrade and major upgrade. Even after I explain it, they either go through the big dist-upgrade (and break something) or dismiss any upgrade completely.
Let’s forget the time I’ve lost to found an installable image of OpenSuse GNOME and switch to installation process itself.
To my great displeasure, I discovered that my keyboard layout (which is shipped by default with X.org) was not supported during installation, making everything even more complicated.
Once you have a working OpenSuse, it doesn’t get better: installing a software is *always* a pain, whatever the software is. Each software seems to have its own channel that you have to figure out (when it’s packaged at all), to add then to install. The architecture of packages management is so complicated that it it was still a major pain after six weeks of intensive usage. And whatever you want to do, zypper will first wait for twenty seconds doing nothing. At the end of a stressful day, it made me on the verge of smashing the computer through the window. The only positive aspect is zypper command line UI. Seriously, it is the best interface I’ve ever seen for package management: everything is logical and under one command, not like the cryptic apt-get I’ve learned to love.
As soon as it comes to administer your system, be warned that Yast will always get in your way. Through its interface inherited from the Windows NT4 era, Yast offers you something ugly that mess up with everything done through GNOME administration tools. Installing a printer with a proprietary driver, which is plug/accept the license that automatically popped up/print under Ubuntu, took me one half day. Somewhat, it reminded me of the 2002-2003 era, where everything was a real challenge under Linux.
Not everything is bad: the GNOME3 experience is way better than under Ubuntu although I had some severe bugs with Evolution. It is not pure GNOME as it’s mixed up with a lot of Qt/KDE stuffs but might be okayish. Also, OpenSuse offers a lot development packages that don’t exist anywhere else, which is sometimes interesting.
The installation went fine even if it was not as easy as Ubuntu. No seamless encryption of my /home partition was offered and, once again, by keyboard layout was not available. Which means that it is impossible to have good support for my keyboard in console and in GDM. You might say that I could tweak that manually after installation. No! It will be reset after each upgrade.
But let’s forget about that.
Fedora is probably the most popular distribution amongst GNOME developers. And, indeed, you could call it GNOME OS.
The GNOME experience is wonderful. Also, a lot of packages are available. If you want all the usual non-free stuffs (flash, DVD, non-free repository), my advice is to use a small tool called FedoraUtils. In fact, that kind of tools was very popular in the early days of Ubuntu. But, at some point, Canonical understood that if people develop those tools, it is because there’s a need to adapt the default installation.
Fedora didn’t yet. The most infamous example is SELinux. By default, nothing will work on your Fedora. The first thing to do is to disable SELinux. Every single Fedora howto starts with “disable SELinux”. Security is important but failing to realize that SELinux is not a good security model for casual laptop users shows how Fedora doesn’t care about them.
While the overall Fedora experience is enjoyable, it has very rough edges. Why is yum updating the cache at each request, making it a painful experience? Why is a root account required by default? Using Fedora will require you to use the command line from time to time or to fix something that was broken by a small upgrade. Don’t expect exotic hardware or some rare proprietary software to work out of the box.
If you are afraid or making your hands dirty or are uncomfortable with playing with the console, don’t even think about using Fedora. You are simply not the targeted user.
For very conservative users, CentOS might be an option. I was tempted to try it for my parents and my non-geeks users.
What I’ve learned during this experience is that Ubuntu is now the de-facto Linux standard. If a software is told to support Linux, it often means “Ubuntu support”. This is kinda sad for diversity but I don’t complain: the situation is thousand times better than what it was ten years ago, where Windows was the only choice.
I would say that Fedora is now the only truly popular GNOME distribution, meaning that you will have the latest GNOME quickly, by default and not tainted with any distribution specific thing. If you are a GNOME fanatic and have the technical skills, you should probably use it. On the other hand, I would say that Fedora cannot be used by non-technical persons if they don’t have very regular support.
It is also very surprising that no popular GNOME 3 Ubuntu distribution has taken-off, if you exclude Linux Mint, which is far from offering a vanilla GNOME 3 experience and not something I’m interested in. I’m also sure that many readers will point out ArchLinux and Debian as alternatives but they are simply too far from my needs (easy to install, good default, nearly nothing to do after installation, etc). It should be noted that I’m comparing distributions against my own needs, I don’t make any judgement to those who simply have different needs/vision of what they want from a distribution.
After writing this comparison, initially envisioned as a Fedora praise, I was frightened when I realized that removing my “good GNOME 3 experience” from my distribution expectations list makes Ubuntu wins in every single other point.
This experience refreshed my vision and leads me to the terrible question: do I have any logical reason to have that GNOME3 requirement? Should I put my GNOME loyalty in question?
 It raises the question: X.org has done a great job including a variety of keyboard layouts to cover many use cases. Fedora and OpenSuse both considered that they were more intelligent and unilaterally decided to only allow their users to use a subset of the layouts offered by X.org. It’s not like it could save place on the installation disk or whatever: the layout are there, shipped with X.org! They are simply not selectable during installation. And each time I complain, I receive the “you are using an exotic thing”. Like Fedora or OpenSuse were so mainstream they could afford that…