November 5, 2004

Too many cooks in Linux?

Author: Vinod Vijayarajan

Linux has always been about choice: the freedom to change code if you wish to modify its behavior, the freedom to see what one is running on one's hardware. This concept of choice has been extended to Linux distributions as well. A staggering array of Linux distributions cater to the whims of the minutest factions, each directed at its own specific ends and goals. There appears to be one for everybody; in fact, from a brief glance at Distrowatch, it almost appears that there is one by everybody. Nothing's wrong with that, but the profusion of available choices may be hurting adoption of Linux by users who are used to Windows as a standard in operating systems.

How? To illustrate, let's compare two users, Abe and Bret, who have purchased hardware and seek to install an OS. Abe buys a copy of Windows and proceeds to do a simple installation. When it finishes, he has a working setup, just like every other Windows user in the world. His out-of-box (OOB) experience with the OS includes the most basic tools he needs, and lets him install additional software for his specific needs. These he chooses after due research or based on peer input. Of course, there is cruft too, which he can choose to let be or replace or remove.

Now let's catch up with Bret, who is part of the growing minority deciding to install a Linux distribution on their machines. Before he can begin, however, he must decide which distribution. Fedora? Debian? Mandrake? Gentoo? Xandros? Bret is, understandably, in a quandary. He spends considerable time scrounging around for information -- browsing forums, asking for opinions, visiting distro Web sites. Eventually he picks one and installs it. Either he likes it and retains it or he goes back to hunting around.

Unlike Windows, it is not enough just to choose Linux. One must choose which Linux. An average user, when confronted with more than a thousand distributions (or even just the 10 most popular) and asked to make a choice at the very outset will, in all probability, take the easier route and stick with Windows, where he can do work without having to do research beforehand. Having to research and choose a distribution may keep a considerable set of users away from Linux.

How might Linux developers solve this problem? Let there be choice, but let there also be a basic consistency for those who wish to choose a little later.

Today, each Linux distributor offers a certain feature set, and each seeks to make this set as unique as possible. One would assume that they bundle the basic Linux kernel, the neccessary run-time libraries, the toolchain, the set of console programs, and the X Window System, and then add packages and software above this or extending these. Sometimes, however, distributors make changes with implications that affect the basic packages I've listed above. One distributor adds a security feature to the Linux kernel, another compiles his distribution with prelinking enabled, another adds a beta of a given component instead of the more-popular stable release. This tends to magnify differences between the distros.

Now imagine an understanding between the various distributors, akin to the work of Linux Standards Base (LSB) (which seeks to define a few standards, in terms of common API, file system hierarchy, even behavior of certain programs), but with a bigger charter -- to provide in every compliant Linux distribution an install option, called Linux Base, that will install the same set of basic packages to get a user up and running in a similar setup across distributions. Use of this install option would give new Linux users something to stand on while they explore Linux, the various available distros, and their features. Further, it would simplify the answer to the question of "which distro?" from a Linux newbie to "Install any of those, choose Linux Base, then look around."

For the distributors, most of whom have subscribed to LSB standards, it would be a simple extension to agree on a basic package set.

Notice the similarity to the Windows installation model. Install the OS first and then choose what other software to install, or in the case of Linux, choose other packages from the distro, or an entirely different distro.

The choice would still be there, just as it is now, but a common, basic install option would eliminate the need for potential users to have to ask too many questions before they can even get started.

Vinod Vijayarajan works on BlackFin-based CE systems in Emuzed, India. He is a Linux enthusiast who believes in raising the bar every time the OS beats the one he set last.


  • Linux
Click Here!