Before diving right into the technology, let us have a look at what the Debian Project is, its objectives, its means, and its operations.
Debian is a GNU/Linux distribution. We will discuss what a distribution is in further detail in
Section 1.5, “The Role of Distributions”, but for now, we will simply state that it is a complete operating system, including software and systems for installation and management, all based on the Linux kernel and free software (especially those from the GNU project).
When he created Debian, in 1993, under the leadership of the Free Software Foundation (
FSF), Ian Murdock had clear objectives, which he expressed in the
Debian Manifesto. The free operating system that he sought would have to have two principal features. First, quality: Debian would be developed with the greatest care, to be worthy of the Linux kernel. It would also be a non-commercial distribution, sufficiently credible to compete with major commercial distributions. This double ambition would, in his eyes, only be achieved by opening the Debian development process just like that of Linux and the GNU project. Thus, peer review would continuously improve the product.
1.1.1. A Multi-Platform Operating System
Debian, remaining true to its initial principles, has had so much success that, today, it has reached a tremendous size. Currently, it officially supports nine hardware release architectures and several variations of each architecture known as “flavors”, and also other kernels like FreeBSD, although the FreeBSD-based ports are not part of the set of officially supported architectures either. Furthermore, with more than 31,000 source packages, the available software can meet almost any need, whether at home or in the enterprise.
The sheer size of the distribution can be inconvenient: it is really unreasonable to distribute 18 DVD-ROMs (only containing the packages qualifying as "Free Software") to install a complete version on a standard PC… This is why Debian is increasingly considered as a “meta-distribution”, from which one extracts more specific distributions intended for a particular public: Debian Science for scientific use, Debian Edu for education and pedagogical use in an academic environment, Debian Med for medical applications, Debian Jr. for young children, etc. A more complete list of the sub-projects can be found in
Section 1.3.3.1, “Existing Debian Sub-Projects and Blends”, dedicated to that purpose.
These partial views of Debian are organized in a well-defined framework, thus guaranteeing hassle-free compatibility between the various “sub-distributions”. All of them follow the general planning for release of new versions. And since they build on the same foundations, they can be easily extended, completed, and personalized with applications available in the Debian repositories.
All the Debian tools operate in this direction: debian-cd
has for a long time now allowed the creation of a set of CD-ROMs containing only a pre-selected set of packages; debian-installer
is also a modular installer, easily adapted to special needs. APT
will install packages from various origins, while guaranteeing the overall consistency of the system.
1.1.2. The Quality of Free Software
Debian follows all of the principles of Free Software, and its new versions are not released until they are ready. Developers do not work upon a set schedule and don't have to rush to meet an arbitrary deadline. People frequently complain of the long time between Debian's stable releases, but this caution ensures that Debian's legendary reliability is met: long months of testing are indeed necessary for the full distribution to receive the “stable” label.
Debian will not compromise on quality: all known critical bugs on key packages are resolved in any new version, even if this requires the initially forecast release date to be pushed back. Optional packages whose critical bugs are not fixed, and thus do not meet the quality requirements, are simply dropped from the stable release.
1.1.3. The Legal Framework: A Non-Profit Organization
Legally speaking, Debian is a project managed by an American not-for-profit, volunteer association. The project has around a thousand Debian developers, but brings together a far greater number of contributors (translators, bug reporters, artists, casual developers, etc.).
To carry its mission to fruition, Debian has a large infrastructure, with many servers connected across the Internet, offered and hosted by many sponsors.