Everything about Debian totally explained
| latest_release_version = 4.0r3 Etch
| latest_release_date =
| language = Multilingual
| kernel_type =
Monolithic (
Linux)
| ui =
GNOME,
KDE &
Xfce (see
freedesktop.org)
| supported_platforms =
x86-32,
x86-64,
PowerPC,
SPARC,
DEC Alpha,
ARM,
MIPS,
HPPA,
S390,
IA-64
| updatemodel =
APT
| package_manager =
dpkg
| working_state = Current
}}
Debian ([ˈdɛbiən]) is a computer
operating system (OS) composed entirely of software which is both
free and open source (FOSS). Its primary form,
Debian GNU/Linux, is a popular and influential
Linux distribution. It is a multipurpose OS; it can be used as a
desktop or
server operating system.
Debian is known for strict adherence to the
Unix and
free software philosophies. Debian is also known for its abundance of options — the current release includes over twenty-six thousand
software packages for eleven
computer architectures. These architectures range from the Intel/AMD
32-bit/
64-bit architectures commonly found in
personal computers to the
ARM architecture commonly found in
embedded systems and the
IBM eServer zSeries mainframes. Throughout Debian's lifetime, other distributions have taken it as a basis to develop their own, including:
Ubuntu,
MEPIS,
Dreamlinux,
Damn Small Linux,
Xandros,
Knoppix,
Linspire,
sidux,
Kanotix, and
LinEx among
others. A university's study concluded that Debian's 283 million source code lines would cost 10 billion
USA Dollars to develop by proprietary means.
Prominent features of Debian are its
APT package management system, its strict policies regarding its packages and the quality of its releases.These practices afford easy upgrades between releases and easy automated installation and removal of packages. Debian uses an open development and testing process. It is developed by volunteers from around the world and supported by donations through
SPI, a
non-profit umbrella organization for various free software projects.
The default install provides popular programs such as:
OpenOffice,
Iceweasel (a
rebranding of
Firefox),
Evolution mail, CD/DVD writing programs, music and video players, image viewers and editors, and
PDF viewers. Only the first CD/DVD is necessary for the default install; the remaining discs contain all 26,000+ extra programs and packages currently available. If a user doesn't wish to download the CDs/DVDs, these extras can be downloaded and installed separately using the package manager. Debian can also be configured to download and install updates automatically.
History
Debian was first announced on
16 August 1993 by
Ian Murdock, then a student at
Purdue University. Murdock initially called his system the "Debian Linux Release". Previously,
Softlanding Linux System had been the first well-known attempt at making a Linux distribution from various software packages, and was a popular option among Linux users in 1994. It was the perceived poor maintenance and prevalence of
bugs in SLS that motivated Murdock to launch a new distribution.
In the
Debian Manifesto, Murdock called for the creation of a distribution to be maintained in an open manner, in the spirit of Linux and GNU. He formed the name "Debian" as a combination of the first name of his girlfriend (later wife, now ex-wife) Debra and his own first name. As such, Debian is pronounced as the corresponding
syllables of these names in American English: /'dɛbiən/ but other pronunciations are common in different parts of the world.
The Debian Project grew slowly at first and released its first 0.9x versions in 1994 and 1995. The first ports to other architectures were begun in 1995, and the first 1.x version of Debian was released in 1996. In 1996,
Bruce Perens replaced Ian Murdock as the project leader. In the same year, fellow developer
Ean Schuessler suggested that Debian establish a
social contract with its users. He distilled the resulting discussion on Debian mailing lists into the
Debian Social Contract and the
Debian Free Software Guidelines, defining fundamental commitments for the development of the distribution. He also initiated the creation of the legal
umbrella organization Software in the Public Interest.
Perens left in 1998 before the release of the first
glibc-based Debian, 2.0. The Project elected new leaders and made two more 2.x releases, each including more ports and packages. The
Advanced Packaging Tool was deployed during this time and the first port to a non-Linux kernel,
Debian GNU/Hurd, was started. The first
Linux distributions based on Debian,
Libranet,
Corel Linux and
Stormix's Storm Linux, were started in 1999. Though no longer developed, these distributions were the first of many
distributions based on Debian.
In late 2000, the project made major changes to archive and release management, reorganizing software archive processes with new "package pools" and creating a testing branch as an ongoing, relatively stable staging area for the next release. Also in that year, developers began holding an annual conference called
DebConf with talks and workshops for developers and technical users.
On
April 8 2007 the project announced the official release of Debian GNU/Linux version 4.0, codenamed "Etch".
Development procedures
Software packages in development are either uploaded to the project branch named
unstable, also known as
sid, or the
experimental branch. Software packages uploaded to
unstable are normally versions stable enough to be released by the original
upstream developer, but with the added Debian-specific packaging and other modifications introduced by Debian developers. These additions may be new and untested. Software not ready yet for the
unstable branch is typically placed in the
experimental branch.
After a version of a software package has remained in
unstable for a certain length of time (depending on the urgency of the software's changes), that package is automatically migrated to the
testing branch. The package's migration to testing occurs only if no serious (
release-critical) bugs in the package are reported and if other software needed for package functionality qualifies for inclusion in
testing.
Since updates to Debian software packages between official releases don't contain new features, some choose to use the
testing and
unstable branches for their newer packages. However, these branches are less tested than
stable, and
unstable doesn't receive timely security updates. Starting
September 9,
2005 a
testing security team provides security updates. In particular, incautious upgrades to working
unstable packages can sometimes seriously break software functionality.
After the packages in
testing have matured and the goals for the next release are met, the
testing branch becomes the next stable release. The latest stable release of Debian (
etch) is 4.0. It was released on
April 8,
2007. The forthcoming version is codenamed "
lenny."
Project organization
The Debian Project is a volunteer organization with three foundational documents:
- The Debian Social Contract defines a set of basic principles by which the project and its developers conduct affairs.
- The Debian Free Software Guidelines define the criteria for "free software" and thus what software is permissible in the distribution, as referenced in the Social Contract. These guidelines have also been adopted as the basis of the Open Source Definition. Although it can be considered a separate document for all practical purposes, it formally is part of the Social Contract.
- The Debian Constitution describes the organizational structure for formal decision-making within the Project, and enumerates the powers and responsibilities of the Debian Project Leader, the Debian Project Secretary, and the Debian Developers generally.
Currently, the project includes more than a thousand developers. Each of them sustains some niche in the project, be it
package maintenance,
software documentation, maintaining the project infrastructure,
quality assurance, or release coordination. Package maintainers have jurisdiction over their own packages, although packages are increasingly co-maintained. Other tasks are usually the domain of smaller, more collaborative groups of developers.
The project maintains official
mailing lists and conferences for communication and coordination between developers.For issues with single packages or domains, a public
bug tracking system is used by developers and end-users both. Informally,
Internet Relay Chat channels (primarily on the
OFTC and
freenode networks) are used for communication among developers and users as well.
Together, the Developers may make binding general decisions by way of a General Resolution or election. All voting is conducted by
Cloneproof Schwartz Sequential Dropping, a
Condorcet method of voting. A
Project Leader is elected once per year by a vote of the Developers; in April 2008,
Steve McIntyre was voted into this position, succeeding
Sam Hocevar. The Debian Project Leader has several special powers, but this power is far from absolute and is rarely utilized. Under a General Resolution, the Developers may, among other things, recall the leader, reverse a decision by him or his delegates, and amend the constitution and other foundational documents.
The Leader sometimes delegates authority to other developers in order for them to perform specialized tasks. Generally this means that a leader delegates someone to start a new group for a new task, and gradually a team gets formed that carries on doing the work and regularly expands or reduces their ranks as they think is best and as the circumstances allow.
A role in Debian with a similar importance to the Project Leader's is
Release Manager. Release Managers set goals for the next release, supervise the process, and make the final decision as to when to release.
Developer recruitment, motivation, and resignation
The Debian project has a steady influx of applicants wishing to become developers. These applicants must undergo an elaborate vetting process which establishes their identity, motivation, understanding of the project's goals (embodied in the Social Contract), and technical competence. .
Debian Developers join the Project for any number of reasons; some that have been cited in the past include:
a desire to contribute back to the Free Software community (practically all applicants are users of Free Software);
a desire to see some specific software task accomplished (some view the Debian user community as a valuable testing or proving ground for new software);
a desire to make, or keep, Free Software competitive with proprietary alternatives;
a desire to work closely with people that share some of their aptitudes, interests, and goals (there is a very strong sense of community within the Debian project which some applicants don't experience in their paid jobs);
a simple enjoyment of the iterative process of software development and maintenance.
Debian Developers may resign their positions at any time by orphaning the packages they were responsible for and sending a notice to the developers and the keyring maintainer (so that their upload authorization can be revoked).
Package life cycle
Each Debian software package has a maintainer who keeps track of releases by the "upstream" authors of the software and ensures that the package is compliant with Debian Policy, coheres with the rest of the distribution, and meets the standards of quality of Debian. In relations with users and other developers, the maintainer uses the bug tracking system to follow up on bug reports and fix bugs. Typically, there's only one maintainer for a single package, but increasingly small teams of developers "co-maintain" larger and more complex packages and groups of packages.
Periodically, a package maintainer makes a release of a package by uploading it to the "incoming" directory of the Debian package archive (or an "upload queue" which periodically batch-transmits packages to the incoming directory). Package uploads are automatically processed to ensure that they're well-formed (all the requisite files are in place) and that the package is digitally signed by a Debian developer using OpenPGP-compatible software. All Debian developers have public keys. Packages are signed to be able to reject uploads from hostile outsiders to the project, and to permit accountability in the event that a package contains a serious bug, a violation of policy, or malicious code.
If the package in incoming is found to be validly signed and well-formed, it's installed into the archive into an area called the "pool" and distributed every day to hundreds of mirrors worldwide. Initially, all package uploads accepted into the archive are only available in the "unstable" suite of packages, which contains the most up-to-date version of each package.
However, new code is also untried code, and those packages are only distributed with clear disclaimers. For packages to become candidates for the next "stable" release of the Debian distribution, they first need to be included in the "testing" suite. The requirements for a package to be included in "testing" is that it:
must have been in unstable for the appropriate length of time (the exact duration depends on the "urgency" of the upload).
must not have a greater number of "release-critical" bugs filed against it than the current version in testing. Release-critical bugs are those bugs which are considered serious enough that they make the package unsuitable for release.
must be compiled for all release architectures the package claims to support (eg: the i386-specific package gmod can be included in "testing").
must be a package for an architecture that's slated to release (in other words, packages for architectures that aren't scheduled to release with all the rest are never considered for "testing").
must not depend on versions of any packages that don't meet the above conditions.
Thus, a release-critical bug in a package on which many packages depend, such as a shared library, may prevent many packages from entering the "testing" area, because that library is considered deficient.
Periodically, the Release Manager publishes guidelines to the developers in order to ready the release, and in accordance with them eventually decides to make a release. This occurs when all important software is reasonably up-to-date in the release-candidate suite for all architectures for which a release is planned, and when any other goals set by the Release Manager have been met. At that time, all packages in the release-candidate suite ("testing") become part of the released suite ("stable").
It is possible for a package -- particularly an old, stable, and seldom-updated one -- to belong to more than one suite at the same time. The suites are simply collections of pointers into the package "pool" mentioned above.
Releases
As of April 2007, the latest stable release is version 4.0, code name etch. When a new version is released, the previous stable is labeled oldstable; currently, this is version 3.1, code name sarge.
In addition, a stable release gets minor updates (called point releases) marked, for example, like 4.0r3.
The Debian security team releases security updates for the latest stable major release, as well as for the previous stable release for one year. As version 4.0 Etch was released on 8 April 2007, this means that the security team expects to support version 3.1 Sarge until April 2008. For most uses it's strongly recommended to run a system which receives security updates. The testing version also receives security updates.
Debian has made nine major stable releases:
| Color |
Meaning |
| Red |
Old release; not supported |
| Yellow |
Old release; still supported |
| Green |
Current release |
| Blue |
Future release |
Further Information
Get more info on 'Debian'.
|
External Link Exchanges
Do you know how hard it is to get a link from a large encyclopaedia? Well we're different and will prove it. To get a link from us just add the following HTML to your site on a relevant page:
<a href="http://debian.totallyexplained.com">Debian Totally Explained</a>
Then simply click through this link from your web page. Our crawlers will verify your link, extract the title of your web page and instantly add a link back to it. If you like you can remove the words Totally Explained and embed the link in article text.
As long as your link remains in place, we'll keep our link to you right here. Please play fair - our crawlers are watching. Your site must be closely related to this one's topic. Any kind of spamming, dubious practises or removing the link will result in your link from us being dropped and, potentially, your whole site being banned. |