With Linux traditionally coming in many, many flavours, a common call among some Linux fans – but mostly among people who actually do not use Linux – is to standardise all the various distributions, and work from a single “one-distribution-to-rule-them-all”. In a recent interview, Linus Tovalds discarded the idea, stating that he thinks “it’s something absolutely required!”
There are probably hundreds of Linux distributions to choose from, and this allegedly poses potential users with a choice they are unable to make. To make matters worse, distributions are usually incompatible with one another, leading to a situation where you need to hunt down applications specifically packaged for your distributions, or to situations where a how-to applies to one distribution, but not another.
Linus Torvalds is pretty clear on the subject. Let me copy his reply verbatim:
I think multiple distributions aren’t just a good thing, I think it’s something absolutely required! We have hundreds of distros, and a lot of them are really for niche markets. And you need that – simply because different markets simply have different requirements, and no single distro will take care of them all.
Of course, people then often say “well, do you need multiple distros for the same market” when they think about the normal desktop market and just look at the whole issue of having openSUSE/Fedora/Ubuntu all in that same space. But it really isn’t that different – you still have the distributions looking at and concentrating on specific issues, and you do want the competition – and letting the markets decide which issues are the ones that really dominate.
In addition, having multiple players just keeps everybody honest, and allows you to compare them. It may all look a bit messy and complex, but I’d much rather have a multi-party system over a single-party one. Even if it’s more complicated.
I am inclined to agree with Torvalds for a number of reasons. First, the market for desktop Linux distributions has more or less settled on a relatively small number of distributions, such as Fedora, openSUSE, and Ubuntu. Sure, some of these have derivatives, but they are all compatible with one another, so you can’t really claim that Xubuntu is a separate distribution from Ubuntu, for instance.
An additional problem with settling on one single distribution is the issue of desktop environment, probably the most important piece of software in a desktop Linux distribution. KDE, GNOME, and Xfce all serve different types of people, and their respective applications tend to those different types of people as well. In other words, you would already need a number of different distributions to cater to these very different groups of people. A KDE user generally doesn’t like using GNOME, and vice versa.
The competition argument Linus puts forth is also not to be underestimated. It often happens that a single distributor takes it upon themselves to work on a specific element of the Linux desktop that needs work, and then this work gets adopted by other distributions. This is a direct result of different distributions targeting different user groups, and thus having different priorities. If you standardise on a single distribution, this dynamic is killed off, seriously hindering innovation.
However, that is not to say that at a lower level, the Linux world wouldn’t benefit from more standardisation. A few areas that come to my mind is installation locations, a stricter adherence file system layout specifications, and the obvious hot iron package management. Especially that last one usually triggers heartfelt debates, but it is undeniable that a lot of effort is wasted on duplicate efforts, because all major distributions spend a lot of time packaging the same software over and over again in different package formats.
When I first started using Linux (somewhere at the start of this century), I used to be an advocate of having a single, unified user-oriented Linux distribution. However, my years and years of experience in the Linux world has taught me that Free software developers thrive in a world of competition and freedom of choice. Imposing Windows-esque and Apple-esque policies on Free software developers is not only pointless, it would only work to the detriment of the Linux desktop.