Understanding Linux distributions
The GNU Project experienced some problems implementing the kernel it had officially developed. Known as Hurd, this kernel is a collection of protocols that formalizes how different components should interact with each other (https://www.gnu.org/software/hurd/index.html). The tools worked well but did not have the right cohesion to integrate with the operating system. When Linus Torvalds released the Linux kernel, many enthusiastic developers ported the GNU code, including the compiler to run on it. These efforts filled in the remaining gaps to get a completely free operating system.
In 1992, Linux and the GNU Project joined forces (http://laurel.datsi.fi.upm.es/~ssoo/IG/download/timeline.html), and Richard Stallman urged to call it GNU/Linux since many of its tools were integrated from the GNU project. This led to the creation of new projects that integrated these GNU tools and the Linux kernel into what we know today as Linux distributions.
Distributions consist of the Linux kernel, the GNU tools, and a lot of other packages; many distributions also provide an installation system like that of other modern operating systems. Distributions are usually segmented into packages, some of which provide only the kernel binary, compilation tools, and an installer. Packages come as compiled code, with the installation and removal of packages handled by a package management system (PMS) rather than a simple file archiver.
Some distributions are even delivered as embedded operating systems on some devices, except for mobile distributions, which are based on Android. These distributions are created separately for mobile phones.
Throughout the years, there have been different GNU/Linux distribution projects, with the ones that have lasted over time being the most important. Besides that, they have led to the birth of new distributions, including the following:
- Slackware: Released in 1993, it was originally named Softlanding Linux System (SLS) and included the X Window System. It was the most complete distribution for a short period (1992). With the newest tools of the time, Slackware Linux offered both new and experienced users a full-featured system, suited for use for any need, as a desktop workstation or as a server. Web, FTP, and email services were ready to go out of the box, as was a wide selection of popular desktop environments. A full range of development tools, editors, and libraries was included for users wishing to develop or compile additional software. It was the first distribution to benefit from the work of millions of developers around the world.
- Debian: In 1993, Ian Murdock, disappointed with the poor maintenance and the prevalence of bugs in SLS (later known as Slackware), released what he initially called the Debian Linux Release. Debian is a portmanteau (a blend of words in which parts of several words are combined into a new word) of his then-girlfriend Debra Lynn’s first name and his name. The stable branch of Debian is the most used in personal computers and servers. The release included the Debian Linux Manifesto, with Murdock’s vision for his operating system, in which he called to keep it “open in the spirit of Linux and GNU.” Debian releases are codenamed based on characters from the Toy Story movies. Debian is also the basis for many other distributions, with Ubuntu being the most notable of them. Debian uses
dpkg
(Debian Package) as a package management system, as well as its numerous derivations. - Red Hat: Also in 1993, Marc Ewing was creating, debugging, and circulating his own Linux distribution on CD from his home in Raleigh, North Carolina. The name Red Hat came from his computer lab days in college; he always wore a red hat and users would say. “If you need help, look for the guy in the red hat.” Bob Young met him at a tech conference and started buying his CDs for resale due to the growing interest in Linux. In 1995, they joined forces to create Red Hat Software. Red Hat uses
rpm
(named Red Hat Package Manager initially; as it became popular among various Linux distributions, it changed to RPM Package Manager) as a package management system, as well as its numerous derivations.
Now, it is time to learn about the distribution we use, which has several interesting precepts.