You are running Debian stable because you prefer the stable Debian tree. It runs great, there is just one problem: The software is a little bit outdated compared to other distributions. That is where backports come in.
Backports are recompiled packages from testing (mostly) and unstable (in a few cases only, e.g. security updates), so they will run without new libraries (wherever it is possible) on a stable Debian distribution. It is recommended to pick out single backports which fit your needs, and not to use all backports available.
This article illustrates how to:
- configure your stable system to use the Backports.org repository
- find a specific backport
- install packages from the repository
- have your backports upgraded automatically
For official instructions on how to use Debian Backports, visit Backports.org Instructions.
Configuring your stable system
In order to verify the integrity of downloaded backports before installing them, APT needs the Backports.org archive key. The package debian-backports-keyring contains this key. So you should install it first.
Note: Backports.org repository has to be added first.
Adding the repository
- Open Synaptic
- Go to:
Configuration > Repository
Add this repository (Substitute etch-backports with lenny-backports for the latest stable release!):
Using the command line
Become root and open the file /etc/apt/sources.list in your favorite editor:
human@debian:~$ su Password: debian:/home/human# nano /etc/apt/sources.list
Add the following lines:
# Backports.org repository deb http://www.backports.org/debian/ lenny-backports main contrib non-free
If you are a free software enthusiast, you might want to remove the contrib and non-free sections. (See Debian sections for details.)
Now that you have added the repository, update APT's cache to include the backports in the list of available packages:
debian:/home/human# aptitude update
There are a several different ways to find out if a backport of a certain Debian package exists. A pretty convenient one is using Debian's web-based package search (packages.debian.org). If you are running Iceweasel, simply use the built-in search plugin (Deb Search).
Installing backports on the command line
The backports repository is deactivated by default. So, if you want to install a backported package, you will have to state that explicitly.
debian:/home/human# aptitude -t lenny-backports install iceweasel
The -t option here specifies lenny-backports as the target release. This would install Iceweasel 3.5 from Backports.org instead of version 3.0 from the Debian stable release.
Because the Backports.org repository is deactivated by default, your installed backports will not recieve upgrades automatically. However, you can use pinning to cause APT to perform automatic upgrades. Pinning basically means controlling which version of which package is to be selected for installation. (See the APT HOWTO and man apt_preferences for in-depth explanation.)
In order to make APT perfom automatic upgrades of installed backports, follow these steps:
Open the file /etc/apt/preferences in an editor of your choice.
- Insert the text below.
- Save and exit.
# APT PINNING PREFERENCES Package: * Pin: release a=lenny-backports Pin-Priority: 200
After changing APT's behavior in that file, it will act like this:
If a package was installed from Backports.org and there is a newer version there, it will be upgraded from there. Other packages that are available from Backports.org will not be upgraded to the Backports.org version unless explicitly stated with -t lenny-backports.
Backports.org for more information
Article about backports on cliss21.com: The article contains information on how to backport packages as well as some step-by-step simple examples to start with.
Diffs between lenny-backports and squeeze: A useful comparison of package versions in lenny-backports and squeeze.