A POTTED HISTORY OF LINUX
Or how a 21-year-old’s bedroom coding project took over the world and a few other things on the way.
LINUX ONLY EXISTS because of Christmas: On January 5, 1991, a 21-year-old computer science student, who was currently living with his mom, trudged through the (we assume) snowcovered streets of Helsinki, with his pockets stuffed full of Christmas gift money. Linus Torvalds wandered up to his local PC store and purchased his first PC, an Intel 386 DX33, with 4MB of memory and a 40MB hard drive. On this stalwart machine he would write the first ever version of Linux. From this moment on, the history of Linux becomes a love story about open-source development, software freedom, and open platforms.
Previous to walking into that computer store, Linus Torvalds had tinkered on the obscure UK-designed Sinclair QL (Quantum Leap) and the far better known Commodore Vic-20. Fine home computers, but neither was going to birth a world-straddling kernel. A boy needs standards to make something that will be adopted worldwide, and an IBM compatible PC is a good place to start. But we’re sure Torvalds’ mind was focused more on having fun with Prince
ofPersia at that point than developing a Microsoft-conquering kernel.
Let’s be clear: A 21-year-old, barely able to afford an Intel 386 DX33, was about to start a development process that would support a software ecosystem, which in turn would run most of the smart devices in the world, a majority of the Internet, all of the world’s fastest supercomputers, chunks of Hollywood’s special effects industry, SpaceX rockets, NASA Mars probes, self-driving cars, and whole bunch of other stuff besides. How the heck did that happen?
TO UNDERSTAND HOW Linux got started, you need to understand Unix. Before Linux, Unix was a well-established operating system standard through the 1960s into the 1970s. It was already powering mainframes built by the likes of IBM, HP, and AT&T. We’re not talking small fry, then—they were mega corporations selling around the globe.
If we look at the development of Unix, you’ll see certain parallels with Linux: Freethinking academic types who were given free rein to develop what they want. But whereas Unix was ultimately boxed into closed-source corporatism, tied to a fixed and dwindling development team, eroded by profit margins and lawyers’ fees, groups that followed Linux embraced an open approach, which enabled free experimentation, development, and collaboration on a worldwide scale. Yeah, yeah, you get the point.
Back to Unix, which is an operating system standard that started development in academia at the end of the 1960s as part of MIT, Bell Labs, and AT&T. The initially single or uni-processing OS, spawned from the Multics OS, was dubbed Unics, with an assembler, editor, and the B programming language. At some point, that “c” was swapped to an “x,” probably because it was cooler, dude.
Later, someone needed a text editor to run on a DEC PDP-11 machine. So, the Unix team obliged and developed roff and troff, the first digital typesetting system. Such
unfettered functionality demanded documentation, so the “man” system (still used to this day) was created with the first Unix Programming Manual in November 1971. This was all a stroke of luck, as the DEC PDP-11 was the most popular mini-mainframe of its day, and everyone focused on the neatly documented and openly shared Unix system.
In 1973, version 4 of Unix was rewritten in portable C, though it would be five more years until anyone tried running Unix on anything but a PDP-11. At this
point, a copy of the Unix source code cost almost $100,000 in current money to license from AT&T, so commercial use was limited during the 1970s. However, moving into the 1980s, costs rapidly dropped, and widespread use at Bell Labs, AT&T, and among computer science students propelled the use of Unix. It was considered a universal OS standard, and in the mid-1980s, the POSIX standard was proposed by the IEEE, backed by the US government. This makes any operating system following POSIX at
least partly if not largely compatible with other versions.
At the end of the 1980s, the Unix story got messy, with lots of commercial infighting, competing standards, and closing off of standards, often dubbed Unix Wars. So, while AT&T, Sun Microsystems, Oracle, SCO, and others argued, a certain Finnish boy was about to start university.
WE GNU THAT
Before we dive into the early world of Linux, there’s another part of the puzzle of its success that we need to put in place: the GNU Project, established by Richard Stallman. Stallman was a product of the 1970s development environment, a freethinking, academic, hippy type. One day, he couldn’t use a printer, and because the company refused to supply the source code, he couldn’t fix the issue—supplying source code was quite normal at the time. He went apoplectic and established a free software development revolution: an entire free OS ecosystem, free software license, and philosophy that’s still going strong. Take that, proprietary software!
The GNU Project was established by Stallman in 1983, with GNU being a hilarious (to hackers) recursive acronym for “GNU is Not Unix.” Geddit? Its aim was to establish a free OS ecosystem with all the tools and services a fully functioning OS requires. Bear in mind, most of the tools created then are still used today. By 1987, GNU had established its own compiler, GCC, the Emacs editor, the basis of the GNU Core Utilities (basic file manipulation tools like list, copy, delete, and so on), and a rudimentary kernel. But just as importantly, Stallman had cemented his ideal of software freedom with the “copyleft” GPL software license, and his manifesto setting out the four software freedoms enabling users to run, study, modify, and distribute any software, including the source, for any reason.
The GPL remains the strongest copyleft license, and while it has perhaps fallen out of vogue, it’s still regarded as the best license for true open-source development, and cements most Linux distros. GCC is still an industry standard, Emacs remains a feature-rich development environment, and the GNU Core Utilities are still widely used in certain POSIX systems and most Linux distros.
You could argue that without the GNU Project being established, Linux would never have taken off. The GPL license (adopted early on in Linux development) forces all developers to share back their enhancements to the source code. It’s a feedback loop that promotes shared improvements. Alternative open-source licenses enable corporations to take source code and never share back improvements, meaning the base code is more likely to remain static. This was backed by a generation of developers that grew up studying and using Unix, looking for a truly freed open-source OS to contribute to.
KERNEL FREAX
We’re getting ahead of ourselves. Linus Torvalds had his Intel 386, was studying computer science at the University of Helsinki, and was using the MINIX 16-bit OS and kernel. MINIX is a POSIX-compatible Unix-like OS and micro-kernel. In 1991, it had a liberal license, costing just $69, offering the source code but restricted modification and redistribution.
We imagine the 16-bit limitation spurred Torvalds to create his own 32
bit kernel, but he states the license restrictions were also key. So, on August 25, 1991, Linux posted to comp.os.minix that he was developing his own free OS, “nothing professional like GNU,” and it’d only support AT disks, as that’s all he had.
This was developed on a MINIX system, compiled on GNU GCC, and he’d ported GNU bash. Torvalds had planned to call his OS Freax, combining “Free,” “Freak,” and “Unix,” but once he’d uploaded it to ftp.funet.fi, a volunteer admin (Ari Lemmke) renamed it Linux, as he thought it was better. So, version 0.01 of Linux was released to the world in September
1991. One telling part of the release notes states: “A kernel by itself gets you nowhere. To get a working system you need a shell, compilers, a library, etc… Most of the tools used with Linux are GNU software and are under the GNU copyleft. These tools aren’t in the distribution—ask me (or GNU) for more info.”
Importantly, this outlines Linux’s reliance on other GPL-licensed tools, and shows the use of the term “distribution,” now shortened to “distro.” As Torvalds points out, an operating system isn’t a kernel alone; it’s a collection of tools, scripts, configs, drivers, services, and a
kernel, lumped together in an easier form for users to install and use.
As for the license, Torvalds initially used his own, which restricted commercial use, but by January 1992, he’d been asked to adopt the GPL, and had stated the kernel license would change to align it with the other tools being used. It was December 1992, and for the release of v0.99, the Linux kernel was GPLv2-licensed. This cemented the legal clause that anyone using the kernel source has to contribute back any changes used in published code.
We’re not going to follow the development of the Linux kernel itself
in detail, but how Linux distros from this point were developed and branched into a wide-ranging ecosystem. This enabled the use of the Linux kernel to grow rapidly, as distros not only ease the installation of Linux (which early on was a complex process of source compilation, gathering the right tools, creating filesystem layouts by hand, and bootloaders, all from the Terminal on systems with limited resources), but one distro can also become the base for a whole new distro, tailored for a new use or audience.
PRIMORDIAL SOUP
As v0.01 was only released in September 1991, the first distribution of Linux— though by modern standards, it’s lacking in every department—created by H. J. Lu, was simply called Linux 0.12. Released at the end of 1991, it came on two 5.25-inch floppy disks, and required a HEX editor to get running. One disk was a kernel boot disk, the other stored the root OS tools.
In those early days of distro evolution, things changed rapidly. Development was quickly adding functionality, and people tried out the best ways to package a Linux-based OS. MCC Interim Linux was released in February 1992 with an improved text-based installer, and was made available through an FTP server. X Windows—the standard Unix windowing system—was ported, and TAMU Linux was released in May 1992 with it packaged: The first graphical distro.
Whilst all of these are notable as being among the first Linux distros, they didn’t last. The same can be said for Softlanding Linux System (SLS), also released in May 1992, which packaged X Windows and a TCP/IP network stack. It’s notable, though, because its shortcomings (bugs and a change to the executable system) inspired the creation of the two longest-running and, in many ways, most influential Linux distros: Slackware and Debian.
EVOLUTION OF A GENUS
Now a number of base distros appear, reliably maintained by individuals, groups, or businesses. Once they’re established, stable, and become popular, offshoots branch from these root distros offering new specializations or features. This creates a number of base distro genera, formed around the original package manager and software repositories.
The effect is a Linux family tree, where you can date all distros back to an initial root release. Some branches sprout and die off; either the group maintaining it disbands or there’s no wider interest. Some branches become so popular they create a whole new genus, becoming the basis for a further expansion of distros.
As with plants and animals, offshoots inherit traits, the base install, package manager, and software repositories being key. A package manager is how the OS installs, updates, removes, and maintains the installed software, which includes downloading software packages from the managed software servers, called repositories. This can get contentious, as these child distros are leeching off the parent’s bandwidth, but initially, while they’re growing, this use won’t look much different from normal user activity.
Bear in mind we’re back in 1992— you’re lucky if people have 14.4Kb/s dialup modems at home, while expensive T1 lines (1.54Mb/s) are limited to academic institutions and larger businesses. The early TAMU v1.0 distro required 18 disks for the 26MB binaries, and 35 disks for the 50MB compressed (200MB uncompressed) source code. This obviously limited access in these early days to academics and those in suitable businesses, so distro evolution was slow.
MEET THE ANCESTORS
Softlanding Linux System was popular, but it was buggy and badly maintained,
so in July 1993, Patrick Volkerding forked SLS and created Slackware—so named because it wasn’t a serious undertaking at the time, and was a reference to the Church of the SubGenius—this is the oldest Linux distro still maintained, and it’s about to see its version 15 release after 28 years. Slackware is interesting because it’s very much controlled and maintained by Volkerding, while followed by a small but enthusiastic band of users and contributors. Whereas many other distros have taken on modern enhancements, Volkerding sticks to older more traditional “Unix” ways of controlling services on Slackware. There’s no formal bug tracking, no official way to contribute to the project, and no public code repository. This all makes Slackware very much an oddity that stands on its own in the Linux world. Due to its longevity, however, Slackware has
attracted a couple dozen offshoots, and at least half are still maintained today.
In August 1993, Ian Murdock, also frustrated by Softlanding Linux System, established Debian, a combination of “Debby,” his girlfriend’s name at the time, and “Ian.” From the outset, it was established as a formal, collaborative open project in the spirit of Linux and GNU.
Early on in the Debian project, Bruce Perens maintained the base system. He went on to draft a social contract for the project and created Software in the Public Interest, a legal umbrella group to enable Debian to accept contributions. At the time, Perens was working at Pixar, so all Debian development builds are named after Toy Story characters. The Debian logo also has a strong similarity to the mark on Buzz Lightyear’s chin.
Debian is arguably the single most influential and important Linux distro
ever. Just the sheer number of branches of distros from it would attest to that, but Debian is renowned for its stability, high level of testing, dedication to software freedom, and being a rigorously well-run organization. It’s testament to its creator, Ian Murdock, who sadly passed away in December 2015.
GETTING COMMERCIAL
Things were still moving slowly into 1994—just a single Slackware fork called SUSE and a few random Linux sprouts appeared, but all died out. In October 1994, Red Hat Linux was publicly released. Red Hat was established as a for-profit Linux business, initially selling the Red Hat Linux distribution and going on to provide support services. Red Hat went public in 1999, achieving the eighth biggest first-day gain in the history of Wall Street. It entered the NASDAQ-100
in December 2005 and topped $1 billion annual revenue in 2012. IBM purchased Red Hat in October 2018—24 years after its first release—for $34 billion. So that worked out very well.
Red Hat Linux was relaunched as Red Hat Enterprise in 2001, and its commercial success attracted a wide range of forks. Notably, Red Hat directly supports Fedora as its testing distro and CentOS as its free community edition. Or it did. CentOS is being shuttered—to understandable community disdain—and a rolling release CentOS Stream is replacing it. As an alternative, Red Hat Enterprise is now offered freely to community projects with fewer than 16 servers.
Meanwhile in Germany, SUSE (Software und System Entwicklung) started life as a commercially sold German translation of Slackware in late 1992. In 1996, an entire new SUSE distro and business was released, based on the Dutch Jurix Linux, selling the new distro and support services. SUSE was purchased by Novell in 2003, and in 2005, the openSUSE community edition was launched, while SUSE Linux Enterprise was developed in tandem for its commercial arm. SUSE was acquired in 2018 for $2.5 billion and returned double-digit growth through 2020, with a revenue of over $450 million. Despite its success, SUSE and openSUSE have only ever attracted a couple of forks. Possibly down to their European roots.
DISTRO INFERNO
Between the creation of Red Hat in 1994 and 2000, there were a good number of Red Hat spin-offs, because at that point there was clear commercial interest in Linux. Through this period, Linux was best suited to business server tasks, where much of the open-source Unix work had been focused. However, by the end of the 1990s, 56k modems had become commonplace, early home broadband was just appearing, and modern graphical desktops were in development. Linux was about to get a whole new audience.
One early example was Mandrake Linux, in mid-1998. A fork of Red Hat, it was crazily aimed at making Linux easy to use for new users, using the new Kool Desktop Environment (KDE). The French/Brazilian development team gained a lot of attention but, ultimately, financial problems closed the project in 2011. However, its spirit continues in the excellent but less well known Mageia and OpenMandriva projects.
With Mandrake pointing the way, the early 2000s saw an explosion of distro releases. With the Debian project at this point being well established, well regarded, and well known, it became the basis for hundreds of Linux distros. But we’ll only mention one: Ubuntu, released in 2004 by South African millionaire Mark Shuttleworth, who jokingly calls himself the self-appointed benevolent dictator for life. The Ubuntu Foundation was created in 2005 as a philanthropic project—Ubuntu is a Zulu word meaning humanity—to provide quality opensource software, with Canonical as the supporting commercial arm.
Ubuntu as a branch of Debian has itself seen over 80 distros branched from it, while Ubuntu has the highest share of all desktop Linux installs—though this is notoriously hard to measure—when users are polled. Why Ubuntu became so popular is hard to pinpoint. Like Mandrake before it, it set out to make desktop Linux easy for first-time users. It also offered the distro on free CDs via its ShipIt service until 2011, alongside fast, reliable server downloads. Plus, it was based on the popular Debian, it jumped on the new, slick Gnome desktop, and it set out a regular six-month release cycle, with a Long Term Support release every two years. Support was for 18 months (now nine months) for regular releases, and 36 months for LTS ones (now five years).
It also offered great forums and help sites, along with a community council, and support for forks such as Xubuntu, Lubuntu, and many others. It had sane defaults, too, and made it easier to install display drivers (an absolute pain 10-plus years ago), while offering a huge catalog of tested, ready-to-run open-source software and dedicated server builds. We guess when you say it out loud, it sounds pretty compelling.
Two core release branches we’ll quickly mention are Arch Linux and Gentoo,
both released around 2000. Gentoo (named after the fastest penguin in the world) is a built-from-source distro compiled with specific optimizations for the hardware it’s going to run on. This is very clever but also very time-consuming. Google Chrome OS is derived from Gentoo. In early 2002, Arch Linux was released, devised as a minimalist distro, where the user does much of the installation work to create an OS with just the parts required. This DIY approach was partly why Arch is renowned for its amazing documentation and for rolling out the earliest release of new versions of software.
MODERN CONSOLIDATION
At the height of the distro madness (around 2010), there were almost 300 Linux distros, an unsustainable number, with many just repeating basic desktop functionality already available in core root distros. Progressing into the 2000s, and with increasing complexity in maintaining a modern OS, the number of Linux distros started to reduce, but that didn’t stop well-organized groups creating popular new distro forks when they felt a need.
A good example is Raspberry Pi OS, a rebrand of Raspbian, itself a fork of Debian. The new Arm-based hardware platform needed a dedicated operating system, so picking up Debian and refitting it for the Raspberry Pi, including educational software, libraries for its GPIO access, and tailored tools to configure its hardware, made absolute sense.
Linux hardware specialist System76 was tired of niggling software issues associated with using other distros, and wanted direct control. So, it introduced Pop!_OS, a fork of Ubuntu, to not only directly support its laptops and desktop hardware, but also its customers’ needs. It’s a slick, modern distro, with support for popular software and hardware.
Linux Mint started in 2006 as a small personal Ubuntu fork project. When Ubuntu changed to its “modern” Unity desktop design in 2011, many users revolted. The Linux Mint project created its own “classic” desktop, called Cinnamon, in 2012, and it brought many former Ubuntu users with it. The Linux Mint project has stuck with its “user first” design approach, and evolved well.
This doesn’t even touch upon commercially focused distros, such as Android, Chrome OS, Intel’s ClearOS, Google’s Wear OS, Sailfish OS, and the host of server-specific distros. Even today, there are well over 200 (we counted 265) active Linux distros, and they’re as diverse, interesting, and wonderful as the communities that use them.