LJ Archive

Distributions—A Brief History

Jes Fraser

Issue #194, June 2010

Add one part GNU, one part Linux kernel, stir lightly, bake for 19 years, and you get 452 different meals.

It seems as though there are as many Linux distributions as there are letters in the alphabet with which to name them. Certainly, there is a flavor to satisfy almost any palate. It wasn't always this way, however. How did it happen? Why hasn't the Linux world just standardized on a single distribution?

The beginning of the Linux distribution really started with Richard Stallman and his fledgling Free Software Foundation in the early 1980s. The GNU operating system was being developed, intending to re-implement a UNIX-like operating system as free software. Although many GNU tools enjoyed wide use, the project suffered various setbacks and delays in its hunt for a kernel. There was a lack of cooperation from some at Berkeley with using the BSD kernel, and there were licensing issues with Mach (Carnegie-Mellon University's microkernel). Before these issues were resolved and the GNU Project was able to make headway building its own kernel, Hurd (another free kernel) became available for use. Then in 1991, the following message appeared on a Usenet newsgroup groups.google.com/group/comp.os.minix/msg/b813d52cbc5a044b?pli=1:

Hello everybody out there using minix-

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)

Linus

(PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT protable [sic] (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(

Linux provided a stopgap measure for the free kernel GNU needed to be a complete operating system. Because Linux was no more and no less than a kernel, it similarly needed tools like those provided by GNU and other projects to be usable by anyone other than a developer. Early enthusiasts put together bundles of software running on the Linux kernel, creating the first distributions. These early distributions were mostly created by universities for internal use, some releasing their handiwork to the wider community.

With Linux 0.12, Linus announced his intention to license the kernel under the GNU GPL (General Public License). Achieved by the release of Linux 0.99, this removed the prior restriction on commercial distribution, paving the way for commercially backed distributions that were soon to come along.

One of those was Soft Landing Systems' SLS Linux, one of the first widely used distributions. It was installable by floppy disk and included such cutting-edge features as TCP-IP networking support and the X Window System. SLS enjoyed popularity for the time, but it came under criticism for being buggy and unstable. When Soft Landing Systems announced it was going to change the default binary format from a.out to ELF, it met with a very negative response from the user base.

Among those upset by Soft Landing Systems' decision was Patrick Volkerding, who then created a modified version of SLS he named Slackware. The first release was July 16, 1993, and Slackware holds the honor of being the oldest currently maintained Linux distribution—by a few months.

Ian Murdock also became quite frustrated with the flaws he perceived in SLS, and he announced on the newsgroup comp.os.linux.development on August 17, 1993 (groups.google.com/group/comp.os.linux.development/msg/a32d4e2ef3bcdcc6):

This is just to announce the imminent completion of a brand-new Linux release, which I'm calling the Debian Linux Release. This is a release that I have put together basically from scratch; in other words, I didn't simply make some changes to SLS and call it a new release. I was inspired to put together this release after running SLS and generally being dissatisfied with much of it, and after much altering of SLS I decided that it would be easier to start from scratch.

In the same year, Ian Murdock released the Debian Manifesto, detailing his vision for a free and open distribution that would be developed and maintained communally. He saw such a distribution as the way to avoid stagnation, crucial to Linux's success in the commercial market. The Free Software Foundation supported these efforts by funding Debian development for a year.

Both Debian and Slackware were born of the dissatisfaction of not just the problems with SLS but the closed nature of the distribution preventing any improvements being submitted by the user base. Ian Murdock's solution of having a distribution where many hands made light work of high standards persists today, although Debian's development process has come under criticism for its long release cycles.

Although Murdock built his solution on community involvement, Volkerding's response was almost the polar opposite. The Slackware team did grow to multiple developers; however, as late as 2000, all changes still were being signed off personally by Volkerding as the project's “czar”. This, he was recorded to have said, ensured that there was “...a high level of quality and consistency” (from http://slashdot.org/interviews/00/03/17/1120205.shtml).

Red Hat Linux was another of the successful early distributions. Marc Ewing was developing software for the UNIX platform but turned to Linux as a more affordable option than a UNIX workstation. He found after a time that rather than work on his main project, he spent the majority of his time fixing issues with Linux. Marc eventually decided to put his original project aside and “...work on putting together a better Linux distribution” (http://www.salon.com/tech/view/1999/10/04/marc_ewing) as a business venture.

His first version took about a year and a half, and released in 1994. Bob Young purchased most of the produced copies of the distribution for ACC Corporation, a mail-order business that sold Linux- and UNIX-related products, including distribution media. Not long after that, in 1995, Young bought Ewing's business and merged it with ACC to become Red Hat Software. That year, Red Hat 2.0 was released, including the then-new RPM package management system. Four years later, Red Hat bought and merged with Cygnus, becoming the largest open-source company in the world at that time.

SuSE, standing for Software und System-Entwicklung in German (Software and Systems Development), originally started as a software development and UNIX consultancy company, consisting of its four founders Roland Dyroff, Thomas Fehr, Burchard Steinbild and Hubert Mantel. Their original business plan did not succeed, so SuSE moved on to distributing Linux. To start with, SuSE provided software packages and services based on SLS. Once Patrick Volkerding had created Slackware, SuSE began translating it into German.

For some time, SuSE continued to translate and distribute Slackware, but for much the same reasons that Patrick Volkerding and Ian Murdock became frustrated with SLS, SuSE grew dissatisfied with Slackware. Slackware's closed development prevented SuSE from having its improvements and changes accepted. Disappointed by bugs it was unable to fix, SuSE decided to create its own Linux distribution.

The SuSE team identified a need for an easy-to-use installation and configuration tool and started work on YaST, the core of modern SuSE Linux. Over time, SuSE incorporated many features of Red Hat Linux, including the RPM packaging system and the Red Hat-style rc system.

Of course, both Red Hat and SuSE exist in somewhat different forms today. Red Hat eventually stopped supporting the free version of its operating system to focus on Red Hat Enterprise Linux, with the Fedora Project stepping in to maintain the community-focused distribution. SuSE Linux went through a similar change not long after being acquired by Novell, with OpenSUSE rising as a new free and open flavor. Slackware and Debian have navigated the years more or less intact, with Ian Murdock's vision of Linux's commercial success realized not in Debian itself but in the one who was yet to come—Ubuntu.

These are just the earliest distributions whose impact still clearly can be seen in the Linux world, with all of them featured on DistroWatch's top ten distributions list (albeit with the metamorphosized forms Fedora and OpenSUSE). Many others were not as successful but also played a part in shaping the early face of Linux—bonus points to any readers who have been Linux users long enough to remember MCC or Yggdrasil.

All four of the successful distributions had the common trait of providing a Linux distribution that was improved and easier to use, and all four of the distros discussed here were frustrated with their efforts at trying to contribute to the projects that had come before them. Ultimately, the story behind our myriad Linux distributions is like that of Linux itself: each was started by the most pragmatic kind of dreamer who could visualize a better way and had the talent and drive to make that vision real.

Jes Fraser is a Linux specialist from New Zealand.

LJ Archive