Installation manual

26 5. Debian and other Software Packages
5. 2. Local Debian Tree
The Debian distribution is currently organised along three releses: “stable” (a.k.a. “woody”), “testing” (a.k.a.
“sarge”) and “unstable” (a.k.a. “sid”). Under normal circumstances and for most purposes we want to install
packages from “woody” only,which corresponds to the default setup.
As its label implies, “woody” is stable and does therewith not represent the bleeding edge of newdev elopment.
In most cases, this does not matter.Inafew cases, however, weneed or want a more recent package with new
features, which may be available in “sarge” or “sid” but not in “woody”. Weput these fewpackages in our local
Debian tree, from which we can install them without upgrading the whole distribution.
Another reason for a local tree is that we might not always agree with the compile-time configuration of a De-
bian package and want to recompile it from source. The resulting binary package will then be stowed in the local
Debian tree and overrides the default package.
/etc/apt/sources.list:
#LOCAL
deb file:/usr/local/debian woody main
deb file:/usr/local/debian sarge main
#WOODY main contrib non−free
#The following site was benchmarked at 14.49 kB/s
deb ftp://ftp.skynet.be/debian/ woody main contrib non−free
#The following site was benchmarked at 14.29 kB/s
deb ftp://ftp.stw−bonn.de/pub/mirror/debian/ woody main contrib non−free
#The following site was benchmarked at 14.29 kB/s
deb ftp://toxo.com.uvigo.es/debian/ woody main contrib non−free
#Official Debian Mirror DE
deb ftp://ftp.de.debian.org/debian woody main contrib non−free
#NON−US main contrib non−free
deb http://non−us.debian.org/debian−non−US woody non−US/main non−US/contrib non−US/non−free
#SECURITY
deb http://security.debian.org/ stable/updates main contrib non−free
Creating a local Debian tree:
#> cd /usr/local
#> mkdir −p debian/dists/woody/main/binary−i386/local
#> mkdir −p debian/dists/sarge/main/binary−i386/local
#> mkdir debian/dists/woody/source
#> mkdir debian/dists/woody/rpm
#> mkdir debian/dists/sarge/source
#> mkdir debian/dists/sarge/rpm
#> touch debian/override.local.woody
#> touch debian/override.local.sarge
#> touch debian/dists/woody/main/binary−i386/Packages
#> touch debian/dists/sarge/main/binary−i386/Packages
#> apt−get update
The binary-i386/local directories are, where we stowthe binary packages. In the source directories we install,
unpack and compile the source packages, in the rpm directories we install and convert RedHat RPM packages.
Note: Weshould not resdistribute binary packages we have compiled within this framework since theymay have
non-standard dependencies, which are hard or impossible to satisfy in other (more standard) setups.
5. 3. GCC
Selecting a good version of the GNU C Compiler gcc is not unlikeselecting a good wine. Most people don’t
knowand don’tcare. But for those who knowand care, there are big differences. The default version of gcc
shipped with Debian, i.e. gcc 2.95.4, was a “vintage” version, whereas most later versions up and through
gcc 3.0.x are more or less “fusel” versions. For this reason we want to replace gcc 3.0.4 from “woody” with
gcc 3.2.1 from “sarge”.