...making Linux just a little more fun!
By Rob Tougher
APT stands for the Advanced Packaging Tool - it is a package management system for Debian GNU/Linux. In Part 1 of this series, I described how to use APT to install Debian software on your machine. If you are unfamiliar with APT, you should read that first.
Part 1 focused on installing only released versions of Debian's software packages. Besides the released versions, Debian provides unreleased packages for people who need the latest versions of software. This article describes how to install these unreleased packages.
In the last article I introduced two concepts: the package, and the package cache. Now I am introducing a third: the distribution. A distribution is a collection of packages, installation scripts, user documentation, and configuration applications unique to Debian.
There are three Debian distributions:
stable- the released version.
testing- the candidate for the next release.
unstable- the development version.
stable distribution is the released version of Debian. The packages in
have been tested thoroughly. Most of the packages installed on my machine come from the
testing distribution is the candidate for the next release.
Packages in this distribution have undergone some testing, but require more testing before they can
testing is ready, it becomes the
stable distribution, and the
stable distribution is moved to archives.
unstable distribution is the development distribution. Debian volunteers update it continuously.
The packages in
unstable may not have been tested at all, and may not work.
After a package has undergone some testing, it gets moved to the
A software package can exist in one or more of these distributions. For example, the
package is contained in all three. In
stable its version is 4.1.2,
testing its version is 4.1.2, and in
unstable its version is 4.2.3.
I currently have version 4.1.2 installed on my machine - if I needed version 4.2.3, I could install it
To get your machine ready to install software packages from
unstable, you have to perform the following steps:
/etc/apt/sources.listto include the distribution
/etc/apt/apt.confto make the
stabledistribution the default
sources.list keeps a list of sources for Debian software.
In the last article we had 7 CDROM sources and 2
HTTP sources. Now let's add two more HTTP sources - one for the
testing distribution and one for the
sources.list file now looks like the following:
# Two new sources deb http://http.us.debian.org/debian unstable main contrib non-free deb http://http.us.debian.org/debian testing main contrib non-free # Sources from last article deb http://security.debian.org/ stable/updates main deb http://http.us.debian.org/debian stable main contrib non-free deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-6 (20020718)]/ unstable contrib main non-US/contrib non-US/main deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-7 (20020718)]/ unstable contrib main non-US/contrib non-US/main deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-5 (20020718)]/ unstable contrib main non-US/contrib non-US/main deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-4 (20020718)]/ unstable contrib main non-US/contrib non-US/main deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-3 (20020718)]/ unstable contrib main non-US/contrib non-US/main deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-2 (20020718)]/ unstable contrib main non-US/contrib non-US/main deb cdrom:[Debian GNU/Linux 3.0 r0 _Woody_ - Official i386 Binary-1 (20020718)]/ unstable contrib main non-US/contrib non-US/main
Next you modify
apt.conf so that you still
use packages from
stable by default. My
apt.conf file looks like the following:
# Make 'stable' the default distribution APT::Default-Release "stable";
To finish the initial setup call
apt-get update. This will download the
latest package information, and update your local package cache.
Let's continue our example from last section. The
stable distribution contains version
4.1.2 of the
php4 package. Let's say you wanted version 4.2.3 - maybe
it contained some new feature you needed. You could install this package using the following command:
prompt$ apt-get -t unstable install php4
This would install version 4.2.3 of the
php4 package. Note the -t switch on the command line -
this is telling APT that it is allowed to use packages from the
unstable distribution. If
you didn't include the -t switch, APT would be unable to install version 4.2.3 of the package, because the
stable distribution is your default.
You can upgrade your
unstable packages by
prompt$ apt-get install `apt-show-versions -u -b | grep testing`
You can downgrade packages on your machine. This means that if you have a
unstable package installed, and you don't want it any more, you can downgrade the package
to the latest
Before being able to downgrade, you must make an entry in your
/etc/apt/preferences file. The entry
looks like the following:
Package: php4 Pin: release a=stable Priority: 1001
Once you make this entry you can run the following command to downgrade a package:
prompt$ apt-get update
APT is a powerful package management system. It allows you to install, maintain, and remove
software applications from your Debian system. In this article I focused on installing software from
Debian's unreleased distributions,
Rob is a software developer in the New York City area.