[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ A ] [ next ]



A Brief History of Debian
Chapter 4 - A Detailed History


4.1 The 0.x Releases

Debian was begun in August 1993 by Ian Murdock, then an undergraduate at Purdue University. Debian was sponsored by the GNU Project of The Free Software Foundation, the organization started by Richard Stallman and associated with the General Public License (GPL), for one year -- from November 1994 to November 1995.

Debian 0.01 through Debian 0.90 were released between August and December of 1993. Ian Murdock writes:

"Debian 0.91 was released in January 1994. It had a primitive package system that allowed users to manipulate packages but that did little else (it certainly didn't have dependencies or anything like that). By this time, there were a few dozen people working on Debian, though I was still mostly putting together the releases myself. 0.91 was the last release done in this way.

Most of 1994 was spent organizing the Debian Project so that others could more effectively contribute, as well as working on dpkg (Ian Jackson was largely responsible for this). There were no releases to the public in 1994 that I can remember, though there were several internal releases as we worked to get the process right.

Debian 0.93 Release 5 happened in March 1995 and was the first "modern" release of Debian: there were many more developers by then (though I can't remember exactly how many), each maintaining their own packages, and dpkg was being used to install and maintain all these packages after a base system was installed.

"Debian 0.93 Release 6 happened in November 1995 and was the last a.out release. There were about sixty developers maintaining packages in 0.93R6. If I remember correctly, dselect first appeared in 0.93R6."

Ian Murdock also notes that Debian 0.93R6 "... has always been my favorite release of Debian", although he admits to the possibility of some personal bias, as he stopped actively working on the project in March 1996 during the pre-production of Debian 1.0, which was actually released as Debian 1.1 to avoid confusion after a CDROM manufacturer mistakenly labelled an unreleased version as Debian 1.0. That incident led to the concept of "official" CDROM images, as a way for the project to help vendors avoid this kind of mistake.

During August 1995 (between Debian 0.93 Release 5 and Debian 0.93 Release 6), Hartmut Koptein started the first port for Debian, for the Motorola m68k family. He reports that "Many, many packages were i386-centric (little endian, -m486, -O6 and all for libc4) and it was a hard time to get a starting base of packages on my machine (an Atari Medusa 68040, 32 MHz). After three months (in November 1995), I uploaded 200 packages from 250 available packages, all for libc5!" Later he started another port together with Vincent Renardias and Martin Schulze, for the PowerPC family.

Since this time, the Debian Project has grown to include several ports to other architectures, a port to a new (non-Linux) kernel, the GNU Hurd microkernel, and at least one flavor of BSD kernel.

An early member of the project, Bill Mitchell, remembers the Linux kernel

"... being between 0.99r8 and 0.99r15 when we got started. For a long time, I could build the kernel in less than 30 minutes on a 20 Mhz 386-based machine, and could also do a Debian install in that same amount of time in under 10Mb of disk space.

" ... I recall the initial group as including Ian Murdock, myself, Ian Jackson, another Ian who's surname I don't recall, Dan Quinlan, and some other people who's names I don't recall. Matt Welsh was either part of the initial group or joined pretty early on (he has since left the project). Someone set up a mailing list, and we were off and running.

As I recall, we didn't start off with a plan, and we didn't start off by putting together a plan in any highly organized fashion. Right from the start, I do recall, we started off collecting up sources for a pretty random collection of packages. Over time, we came to focus on a collection of items which would be required to put together the core of a distribution: the kernel, a shell, update, getty, various other programs and support files needed to init the system, and a set of core utilities."


4.1.1 The Early Debian Packaging System

At the very early stages of the Project, members considered distributing source-only packages. Each package would consist of the upstream source code and a Debianized patch file, and users would untar the sources, apply the patches, and compile binaries themselves. They soon realized, however, that some sort of binary distribution scheme would be needed. The earliest packaging tool, written by Ian Murdock and called dpkg, created a package in a Debian-specific binary format, and could be used later to unpack and install the files in the package.

Ian Jackson soon took over the development of the packaging tool, renaming the tool itself dpkg-deb and writing a front-end program he named dpkg to facilitate the use of dpkg-deb and provide the Dependencies and Conflicts of today's Debian system. The packages produced by these tools had a header listing the version of the tool used to create the package and an offset within the file to a tar-produced archive, which was separated from the header by some control information.

At about this time some debate arose between members of the project -- some felt that the Debian-specific format created by dpkg-deb should be dropped in favor of the format produced by the ar program. After several revised file formats and correspondingly-revised packaging tools, the ar format was adopted. The key value of this change is that it makes it possible for a Debian package to be un-packaged on any Unix-like system without the need to run an untrusted executable. In other words, only standard tools present on every Unix system like 'ar' and 'tar' are required to unpack a Debian binary package and examine the contents.


4.2 The 1.x Releases

When Ian Murdock left Debian, he appointed Bruce Perens as the next leader of the project. Bruce first became interested in Debian while he was attempting to create a Linux distribution CD to be called "Linux for Hams", which would include all of the Linux software useful to ham radio operators. Finding that the Debian core system would require much further work to support his project, Bruce ended up working heavily on the base Linux system and related installation tools, postponing his ham radio distribution, including organizing (with Ian Murdock) the first set of Debian install scripts, eventually resulting in the Debian Rescue Floppy that was a core component of the Debian installation toolset for several releases.

Ian Murdock states:

"Bruce was the natural choice to succeed me, as he had been maintaining the base system for nearly a year, and he had been picking up the slack as the amount of time I could devote to Debian declined rapidly."

He initiated several important facets of the project, including coordinating the effort to produce the Debian Free Software Guidelines and the Debian Social Contract, and the initiation of The Open Hardware Project. During his time as Project Leader, Debian gained market share and a reputation as a platform for serious, technically-capable Linux users.

Bruce Perens also spearheaded the effort to create Software in the Public Interest, Inc.. Originally intended to provide the Debian Project with a legal entity capable of accepting donations, its aims quickly expanded to include supporting free software projects outside the Debian Project.

The following Debian versions were released during this time:

There were several interim "point" releases made to 1.3, with the last being 1.3.1R6.

Bruce Perens was replaced by Ian Jackson as Debian Project Leader at the beginning of January, 1998, after leading the project much of the way through the preparation for the 2.0 release.


4.3 The 2.x Releases

Ian Jackson became the Leader of the Debian Project at the beginning of 1998, and was shortly thereafter added to the board of Software in the Public Interest in the capacity of Vice President. After the resignation of the Treasurer (Tim Sailer), President (Bruce Perens), and Secretary (Ian Murdock), he became President of the Board and three new members were chosen: Martin Schulze (Vice President), Dale Scheetz (Secretary), and Nils Lohner (Treasurer).

Debian 2.0 (Hamm) was released July 1998 for the Intel i386 and Motorola 68000 series architectures. This release marked the move to a new version of the system C libraries (glibc2 or for historical reasons libc6). At the time of release, there were 1500+ packages maintained by more than 400 Debian developers.

Wichert Akkerman succeeded Ian Jackson as Debian Project Leader in January of 1999. Debian 2.1 was released on 09 March, 1999, after being delayed by a week when a few last-minute issues arose.

Debian 2.1 (Slink) featured official support for two new architectures: Alpha and Sparc. The X-Windows packages included with Debian 2.1 were greatly reorganized from previous releases, and 2.1 included apt, the next-generation Debian package manager interface. Also, this release of Debian was the first to require 2 CD-ROMs for the "Official Debian CD set"; the distribution included about 2250 packages.

On 21 April 1999, Corel Corporation and the K Desktop Project effectively formed an alliance with Debian when Corel announced it's intentions to release a Linux distribution based on Debian and the desktop environment produced by the KDE group. During the following spring and summer months, another Debian-based distribution, Storm Linux, appeared, and the Debian Project chose a new logo, featuring both an Official version for use on Debian-sanctioned materials such as CD-ROMs and official Project websites, and an Unofficial logo for use on material mentioning or derived from Debian.

A new, unique, Debian port also began at this time, for the Hurd port. This is the first port to use a non-Linux kernel, instead using the GNU Hurd, a version of the GNU Mach microkernel.

Debian 2.2 (Potato) was released August 15th, 2000 for the Intel i386, Motorola 68000 series, alpha, SUN Sparc, PowerPC and ARM architectures. This is the first release including PowerPC and ARM ports. At the time of release, there were 3900+ binary and 2600+ source packages maintained by more than 450 Debian developers.

An interesting fact about Debian 2.2 is that it showed how an free software effort could lead to a modern operating system despite all the issues around it. This was studied thoroughly by a group of interest in an article called Counting potatoes quoting from this article:

"[...] we use David A. Wheeler's sloccount system to determine the number of physical source lines of code (SLOC) of Debian 2.2 (aka potato). We show that Debian 2.2 includes more than 55,000,000 physical SLOC (almost twice than Red Hat 7.1, released about 8 months later), showing that the Debian development model (based on the work of a large group of voluntary developers spread around the world) is at least as capable as other development methods [...] It is also shown that if Debian had been developed using traditional proprietary methods, the COCOMO model estimates that its cost would be close to $1.9 billion USD to develop Debian 2.2. In addition, we offer both an analysis of the programming languages used in the distribution (C amounts for about 70%, C++ for about 10%, LISP and Shell are around 5%, with many others to follow), and the largest packages (Mozilla, the Linux kernel, PM3, XFree86, etc.)"


4.4 The 3.x Releases

Before woody could even begin to be prepared for release, a change to the archive system on ftp-master had to be made. Package pools, which enabled special purpose distributions, such as the new "Testing" distribution used for the first time to get woody ready for release, were activated on ftp-master in mid December 2000. A package pool is just a collection of different versions of a given package, from which multiple distributions (currently experimental, unstable, testing, and stable) can draw packages, which are then included in that distribution's Packages file.

At the same time a new distribution testing was introduced. Mainly, packages from unstable that are said to be stable moved to testing (after a period of a few weeks). This was introduced in order to reduce freeze time and give the project the ability to prepare a new release at any time.

In that period, some of the companies that were shipping modified versions of Debian closed down. Corel sold its Linux division in the first quarter of 2001, Stormix declared bankruptcy on January 17th 2001, and Progeny ceased development of its distribution on October 1st, 2001.

The freeze for the next release started on July 1st 2001. However, it took the project a little more than a year to get to the next release, due to problems in boot-floppies, because of the introduction of cryptographic software in the main archive and due to the changes in the underlying architecture (the incoming archive and the security architecture). In that time, however, the stable release (Debian 2.2) was revised up to seven times, and two Project Leaders were elected: Ben Collins (in 2001) and Bdale Garbee. Also, work in many areas of Debian besides packaging kept growing, including internationalization, Debian's web site (over a thousand webpages) was translated into over 20 different languages, and installation for the next release was ready in 23 languages. Two internal projects: Debian Junior (for children) and Debian Med (for medical practice and research) started during the woody release time frame providing the project with different focuses to make Debian suitable for those tasks.

The work around Debian didn't stop the developers from organising an annual meeting called Debconf. The first meeting was held from the 2nd to the 5th of July together with the Libre Software Meeting (LSM) at Bordeaux (France) gathered around forty Debian developers. The second conference took place in Toronto (Canada) July 5th 2002 with over eighty participants.

Debian 3.0 (woody) was released July 19th, 2002 for the Intel i386, Motorola 68000 series, alpha, SUN Sparc, PowerPC, ARM, HP PA-RISC, IA-64, MIPS, MIPS (DEC) and IBM s/390 architectures. This is the first release including HP PA-RISC, IA-64, MIPS, MIPS (DEC) and IBM s/390 ports. At the time of release, there were around 8500 binary packages maintained by over nine hundred Debian developers, becoming the first release to be available on DVD media as well as CD-ROMs.

Before the next release the Debconf annual meeting continued with the fourth conference taking place in Oslo from July 18th to July 20th 2003 with over one hundred and twenty participants, with a Debcamp preceding it, from July 12th to July 17th. The fifth conference took place from May 26th to June 2nd 2004 in Porto Alegre, Brazil with over one hundred and sixty participants from twenty six different countries.

Debian 3.1 (sarge) was released June 6th, 2005 for the same architectures than woody, although an unofficial AMD64 port was released at the same time using the project hosting infrastructure provided for the distribution and available at http://alioth.debian.org. There were around 15,000 binary packages maintained by more than one thousand and five hundred Debian developers.

There were many major changes in the sarge release, mostly due to the large time it took to freeze and release the distribution. Not only did this release update over 73% of the software shipped in the previous version, but it also included much more software than previous releases almost doubling in size with 9,000 new packages including the OpenOffice suite, the Firefox web browser and the Thunderbird e-mail client.

This release shipped with the 2.4 and 2.6 Linux kernel series, XFree86 4.3, GNOME 2.8 and KDE 3.3 and with a brand new installer. This new installer replaced the aging boot-floopies installer with a modular design with provided for more advanced installations (with RAID, XFS and LVM support) including hardware detections and making installations easier for novice users of all the architectures. It also switched to aptitude as the selected tool for package management. But the installation system also boasted full internationalization support as the software was translated into almost forty languages. The supporting documentation: installation manual and release notes, were made available with the release in ten and fifteen different languages respectively.

This release included the efforts of the Debian-Edu/Skolelinux, Debian-Med and Debian-Accessibility sub-projects which boosted the number of educational packages and those with a medical affiliation as well as packages designed especially for people with disabilities.

The sixth Debconf was held in Espoo, Finland, from July 10th to July 17th, 2005 with over three hundred participants. Videos from this conference are available online.

The seventh Debconf was held in Oaxtepec, Mexico, from May 14th to May 22nd, 2006 with around two hundred participants. Videos and pictures from this conference are available online.


4.5 The 4.x Releases

Debian 4.0 (etch) was released April 8th, 2007 for the same number of architectures as in sarge, it included the AMD64 port but dropped support for m68k. The m68k port was, however, still available in the unstable distribution. There were around 18,200 binary packages maintained by more than one thousand and thirty Debian developers.


4.6 Important Events


4.6.1 July 2000: Joel Klecker died

On July 11th, 2000, Joel Klecker, who was also known as Espy, passed away at 21 years of age. No one who saw 'Espy' in #mklinux, the Debian lists or channels knew that behind this nickname was a young man suffering from a form of Duchenne muscular dystrophy. Most people only knew him as 'the Debian glibc and powerpc guy' and had no idea of the hardships Joel fought. Though physically impaired, he shared his great mind with others.

Joel Klecker (also known as Espy) will be missed.


4.6.2 October 2000: Implementation of Package Pools

James Troup reported that he has been working on re-implementing the archive maintenance tools and switching to package pools. From this date, files are stored in a directory named after the corresponding source package inside of the pools directory. The distribution directories will only contain Packages files that contain references to the pool. This simplifies overlapping distributions such as testing and unstable. The archive is also database-driven using PostgreSQL which also speeds up lookups.


4.6.3 March 2001: Christopher Rutter died

On March 1st, 2001, Christopher Matthew Rutter (also known as cmr) was killed after he was struck by a car at the age of 19. Christopher was a young and well known member of the Debian project helping the ARM port.

Chris Rutter will be missed.


4.6.4 March 2001: Fabrizio Polacco died

On March 28th, 2001, Fabrizio Polacco passed away after a long illness. The Debian Project honors his good work and strong dedication to Debian and Free Software. The contributions of Fabrizio will not be forgotten, and other developers will step forward to continue his work.

Fabrizio Polacco will be missed.


4.6.5 July 2002: Martin Butterweck died

On July 21st, 2002, Martin Butterweck (also known as blendi) died after battling leukemia. Martin was a young member of the Debian project who recently joined the project.

Martin Butterweck will be missed.


4.6.6 November 2002: Fire burnt Debian server

Around 08:00 CET on November 20th, 2002, the University of Twente Network Operations Center (NOC) caught fire. The building has burnt to the ground. The fire department has given up every hope on protecting the server area. Among other things the NOC hosted satie.debian.org which contained both the security and non-US archive as well as the new-maintainer (nm) and quality assurance (qa) databases. Debian rebuilt these services on the host klecker, which was recently moved from the U.S.A. to the Netherlands.


4.6.7 May 2004: Manuel Estrada Sainz and Andrés García died

On May 9th Manuel Estrada Sainz (ranty) and Andrés García (ErConde) were killed in a tragic car accident while returning from the Free Software conference held at Valencia, Spain.

Manuel Estrada Sainz and Andrés García will be missed.


4.6.8 July 2005: Jens Schmalzing died

On July 30th Jens Schmalzing (jensen) died in a tragic accident at his workplace in Munich, Germany. He was involved in Debian as a maintainer of several packages, as supporter of the PowerPC port, as a member of the kernel team, and was instrumental in taking the PowerPC kernel package to version 2.6. He also maintained the Mac-on-Linux emulator and its kernel modules, helped with the installer and with local Munich activities.

Jens Schmalzing will be missed.


4.7 What's Next?

The Debian Project continues to work on the unstable distribution (codenamed sid, after the evil and "unstable" kid next door from the movie Toy Story who should never be let out into the world) Sid is the permanent name for the unstable distribution and is always 'Still In Development'. Most new or updated packages are uploaded into this distribution.

The testing release is intended to become the next stable release and is currently codenamed lenny.


[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ A ] [ next ]


A Brief History of Debian


2.7 (last revised 3 April 2007)

Debian Documentation Team [email protected]