Wednesday, June 08, 2005

Debian 3.1 is released; a summary of the Debian distributions

On Monday, The Debian Project announced the official release of Debian 3.1, the newest stable version of Debian. This is big news for Debian, as their last major stable release (3.0) occurred back in 2002. This large lag time between major releases is intentional, and it certainly doesn't mean that Debian's code has been languishing; since 2002 thousands of volunteers have worked on, and improved, the Debian Project's code base.

Saying that it's been three years between major releases also makes it sound like users of Debian are all using three-year-old software (which, for Linux, would be horribly out of date), but this is not the case, as Debian has three release categories ("distributions") available simultaneously:
  • Unstable distribution: the newest and most up to date of the Debian distributions. This is the first distribution new packages (and fixes to old packages) enter, and the entry criteria are relatively low; thus, there may be serious bugs in software in this distribution.
  • Testing distribution: contains relatively new packages, but is more robust than the unstable distribution. Packages from the unstable distribution migrate into the testing distribution only if they've been free of major bugs (security flaws, crashes, etc) for a set amount of time (see the full policy here). Security updates occur via the updating of packages in the unstable distribution, which then migrate into testing.
  • Stable distribution: updated very infrequently. Only packages that have been in testing for a significant amount of time and don't have any major bugs reported enter the stable distribution. The stable distribution is regularly updated by a security team that hunts for bugs and releases security fixes, but otherwise the stable distribution remains static (to enhance stability for uses such as webservers).
So, when I say that Debian 3.1 has just been released, what I mean is that the newest release of Debian's stable distribution is now out. However, I (and many other users) have been running the testing distribution of Debian for quite a while now, and thus functionally I've been running Debian 3.1, even though it wasn't officially released.

So, if you want a rock-solid, stable operating system that won't have any major updates to it (other than security fixes), you want Debian's stable distribution. However, if you're just a regular home user who wants an up-to-date, yet not buggy, version of Debian, Debian's testing distribution is probably the best choice for you. Because 3.1 was just released, Debian testing and Debian stable are currently very similar to each other, but testing will accumulate new software over time, while Debian stable will remain static.

One minor annoyance with running the testing distribution (as I do), is that the stability requirements sometimes keep decent packages out of the distribution. For instance, TWiki recently had a "grave" bug (report page) filed for it, and thus is no longer in the testing distribution (though it is still in the unstable distribution, and will be back in the testing distribution when that bug is patched). Thus, if I were reinstalling the testing distribution right now, I couldn't install TWiki with just the push of a button. However, it's possible to run the testing distribution and install unstable distribution software, so it's not a major issue.

As a side note, the unstable distribution is usually run by developers, and comes with the following warning: "[The unstable distribution] is subject to massive changes and in-place library updates. This can result in a very 'unstable' system which contains packages that cannot be installed due to missing libraries, dependencies that cannot be fulfilled etc. Use it at your own risk!"

No comments: