1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
7
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
9
<title>The Debian GNU/Linux FAQ - The Debian FTP archives</title>
15
<p><a name="ch-ftparchives"></a></p>
19
[ <a href="ch-software.en.html">previous</a> ]
20
[ <a href="index.en.html#contents">Contents</a> ]
21
[ <a href="ch-basic_defs.en.html">1</a> ]
22
[ <a href="ch-getting.en.html">2</a> ]
23
[ <a href="ch-compat.en.html">3</a> ]
24
[ <a href="ch-software.en.html">4</a> ]
26
[ <a href="ch-pkg_basics.en.html">6</a> ]
27
[ <a href="ch-pkgtools.en.html">7</a> ]
28
[ <a href="ch-uptodate.en.html">8</a> ]
29
[ <a href="ch-kernel.en.html">9</a> ]
30
[ <a href="ch-customizing.en.html">10</a> ]
31
[ <a href="ch-support.en.html">11</a> ]
32
[ <a href="ch-contributing.en.html">12</a> ]
33
[ <a href="ch-redistrib.en.html">13</a> ]
34
[ <a href="ch-nexttime.en.html">14</a> ]
35
[ <a href="ch-faqinfo.en.html">15</a> ]
36
[ <a href="ch-pkg_basics.en.html">next</a> ]
42
The Debian GNU/Linux FAQ
43
<br>Chapter 5 - The Debian FTP archives
48
<h2><a name="s-dirtree"></a>5.1 What are all those directories at the Debian FTP archives?</h2>
51
The software that has been packaged for Debian GNU/Linux is available in one of
52
several directory trees on each Debian mirror site.
56
The <samp>dists</samp> directory is short for "distributions", and it
57
is the canonical way to access the currently available Debian releases (and
62
The <samp>pool</samp> directory contains the actual packages, see <a
63
href="#s-pools">What's in the <samp>pool</samp> directory?, Section 5.10</a>.
67
There are the following supplementary directories:
70
<dt><em>/tools/</em>:</dt>
73
DOS utilities for creating boot disks, partitioning your disk drive,
74
compressing/decompressing files, and booting Linux.
79
<dt><em>/doc/</em>:</dt>
82
The basic Debian documentation, such as the FAQ, the bug reporting system
88
<dt><em>/indices/</em>:</dt>
91
The Maintainers file and the override files.
96
<dt><em>/project/</em>:</dt>
99
mostly developer-only materials, such as:
102
<dt><em>project/experimental/</em>:</dt>
105
This directory contains packages and tools which are still being developed, and
106
are still in the alpha testing stage. Users shouldn't be using packages from
107
here, because they can be dangerous and harmful even for the most experienced
117
<h2><a name="s-dists"></a>5.2 How many Debian distributions are there in the <samp>dists</samp> directory?</h2>
120
There are three distributions, the "stable" distribution, the
121
"testing" distribution, and the "unstable" distribution.
122
The "testing" distribution is sometimes `frozen' (see <a
123
href="#s-frozen">What about "testing"? How is it `frozen'?, Section
129
<h2><a name="s-codenames"></a>5.3 What are all those names like slink, potato, etc.?</h2>
132
They are just "codenames". When a Debian distribution is in the
133
development stage, it has no version number but a codename. The purpose of
134
these codenames is to make easier the mirroring of the Debian distributions (if
135
a real directory like <samp>unstable</samp> suddenly changed its name to
136
<samp>stable</samp>, a lot of stuff would have to be needlessly downloaded
141
Currently, <samp>stable</samp> is a symbolic link to <samp>etch</samp> (i.e.
142
Debian GNU/Linux 4.0) and <samp>testing</samp> is a symbolic link to
143
<samp>lenny</samp>. This means that <samp>etch</samp> is the current stable
144
distribution and <samp>lenny</samp> is the current testing distribution.
148
<samp>unstable</samp> is a permanent symbolic link to <samp>sid</samp>, as
149
<samp>sid</samp> is always the unstable distribution (see <a href="#s-sid">What
150
about "sid"?, Section 5.4</a>).
155
<h3><a name="s-oldcodenames"></a>5.3.1 Which other codenames have been used in the past?</h3>
158
Other codenames that have been already used are: <samp>buzz</samp> for release
159
1.1, <samp>rex</samp> for release 1.2, <samp>bo</samp> for releases 1.3.x,
160
<samp>hamm</samp> for release 2.0, <samp>slink</samp> for release 2.1,
161
<samp>potato</samp> for release 2.2, <samp>woody</samp> for release 3.0 and
162
<samp>sarge</samp> for release 3.1.
167
<h3><a name="s-sourceforcodenames"></a>5.3.2 Where do these codenames come from?</h3>
170
So far they have been characters taken from the movie "Toy Story" by
176
<em>buzz</em> (Buzz Lightyear) was the spaceman,
183
<em>rex</em> was the tyrannosaurus,
190
<em>bo</em> (Bo Peep) was the girl who took care of the sheep,
197
<em>hamm</em> was the piggy bank,
204
<em>slink</em> (Slinky Dog (R)) was the toy dog,
211
<em>potato</em> was, of course, Mr. Potato (R),
218
<em>woody</em> was the cowboy,
225
<em>sarge</em> was the sergeant of the Green Plastic Army Men,
232
<em>etch</em> was the toy blackboard (Etch-a-Sketch (R)),
239
<em>lenny</em> was the binoculars.
246
<em>sid</em> was the boy next door who destroyed toys.
253
<h2><a name="s-sid"></a>5.4 What about "sid"?</h2>
256
<em>sid</em> or <em>unstable</em> is the place where most of the packages are
257
initially uploaded. It will never be released directly, because packages which
258
are to be released will first have to be included in <em>testing</em>, in order
259
to be released in <em>stable</em> later on. sid contains packages for both
260
released and unreleased architectures.
264
The name "sid" also comes from the "Toy Story" animated
265
motion picture: Sid was the boy next door who destroyed toys :-)
269
[<a href="footnotes.en.html#f1" name="fr1">1</a>]
274
<h2><a name="s-stable"></a>5.5 What does the stable directory contain?</h2>
278
stable/main/: This directory contains the packages which formally constitute
279
the most recent release of the Debian GNU/Linux system.
283
These packages all comply with the <code><a
284
href="http://www.debian.org/social_contract#guidelines">Debian Free Software
285
Guidelines</a></code>, and are all freely usable and distributable.
292
stable/non-free/: This directory contains packages distribution of which is
293
restricted in a way that requires that distributors take careful account of the
294
specified copyright requirements.
298
For example, some packages have licenses which prohibit commercial
299
distribution. Others can be redistributed but are in fact shareware and not
300
freeware. The licenses of each of these packages must be studied, and possibly
301
negotiated, before the packages are included in any redistribution (e.g., in a
309
stable/contrib/: This directory contains packages which are DFSG-free and
310
<em>freely distributable</em> themselves, but somehow depend on a package that
311
is <em>not</em> freely distributable and thus available only in the non-free
319
<h2><a name="s-testing"></a>5.6 What does the testing directory contain?</h2>
322
Packages are installed into the `testing' directory after they have undergone
323
some degree of testing in <a href="#s-unstable">unstable</a>.
327
They must be in sync on all architectures where they have been built and
328
mustn't have dependencies that make them uninstallable; they also have to have
329
fewer release-critical bugs than the versions currently in testing. This way,
330
we hope that `testing' is always close to being a release candidate.
334
More information about the status of "testing" in general and the
335
individual packages is available at <code><a
336
href="http://www.debian.org/devel/testing">http://www.debian.org/devel/testing</a></code>
341
<h3><a name="s-frozen"></a>5.6.1 What about "testing"? How is it `frozen'?</h3>
344
When the "testing" distribution is mature enough, the release manager
345
starts `freezing' it. The normal propagation delays are increased to ensure
346
that as little as possible new bugs from "unstable" enter
351
After a while, the "testing" distribution becomes truly `frozen'.
352
This means that all new packages that are to propagate to the
353
"testing" are held back, unless they include release-critical bug
354
fixes. The "testing" distribution can also remain in such a deep
355
freeze during the so-called `test cycles', when the release is imminent.
359
We keep a record of bugs in the "testing" distribution that can hold
360
off a package from being released, or bugs that can hold back the whole
361
release. For details, please see <code><a
362
href="http://www.debian.org/releases/testing/">current testing release
363
information</a></code>.
367
Once that bug count lowers to maximum acceptable values, the frozen
368
"testing" distribution is declared "stable" and released
369
with a version number.
373
With each new release, the previous "stable" distribution becomes
374
obsolete and moves to the archive. For more information please see <code><a
375
href="http://www.debian.org/distrib/archive">Debian archive</a></code>.
380
<h2><a name="s-unstable"></a>5.7 What does the unstable directory contain?</h2>
383
The `unstable' directory contains a snapshot of the current development system.
384
Users are welcome to use and test these packages, but are warned about their
385
state of readiness. The advantage of using the unstable distribution is that
386
you are always up-to-date with the latest in GNU/Linux software industry, but
387
if it breaks: you get to keep both parts :-)
391
There are also main, contrib and non-free subdirectories in `unstable',
392
separated on the same criteria as in `stable'.
397
<h2><a name="s-archsections"></a>5.8 What are all those directories inside <samp>dists/stable/main</samp>?</h2>
400
Within each of the major directory trees[<a href="footnotes.en.html#f2"
401
name="fr2">2</a>], there are three sets of subdirectories containing index
406
There's one set of <samp>binary-<var>something</var></samp> subdirectories
407
which contain index files for binary packages of each available computer
408
architecture, for example <samp>binary-i386</samp> for packages which execute
409
on Intel x86 PC machines or <samp>binary-sparc</samp> for packages which
410
execute on Sun SPARCStations.
414
The complete list of available architectures for each release is available at
415
<code><a href="http://www.debian.org/releases/">the release's web
416
page</a></code>. For the current release, please see <a
417
href="ch-compat.en.html#s-arches">On what hardware architectures/systems does
418
Debian GNU/Linux run?, Section 3.1</a>.
422
The index files in binary-* are called Packages(.gz) and they include a summary
423
of each binary package that is included in that distribution. The actual
424
binary packages (for <em>woody</em> and subsequent releases) reside in the top
425
level <a href="#s-pools"><samp>pool</samp> directory</a>.
429
Furthermore, there's a subdirectory called source/ which contains index files
430
for source packages included in the distribution. The index file is called
435
Last but not least, there's a set of subdirectories meant for the installation
436
system index files. In the <em>woody</em> release, these are named
437
<samp>disks-<var>architecture</var></samp>; in <em>sarge</em>, they are at
438
<samp>debian-installer/binary-<var>architecture</var></samp>.
443
<h2><a name="s-source"></a>5.9 Where is the source code?</h2>
446
Source code is included for everything in the Debian system. Moreover, the
447
license terms of most programs in the system <em>require</em> that source code
448
be distributed along with the programs, or that an offer to provide the source
449
code accompany the programs.
453
The source code is distributed in the <samp>pool</samp> directory (see <a
454
href="#s-pools">What's in the <samp>pool</samp> directory?, Section 5.10</a>)
455
together with all the architecture-specific binary directories. To retrieve
456
the source code without having to be familiar with the structure of the FTP
457
archive, try a command like <samp>apt-get source mypackagename</samp>.
461
Some packages are only distributed as source code due to the restrictions in
462
their licenses. Notably, one such package is <samp>pine</samp>, see <a
463
href="ch-software.en.html#s-pine">Where is pine?, Section 4.10</a> for more
468
Source code may or may not be available for packages in the "contrib"
469
and "non-free" directories, which are not formally part of the Debian
475
<h2><a name="s-pools"></a>5.10 What's in the <samp>pool</samp> directory?</h2>
478
Packages are kept in a large `pool', structured according to the name of the
479
source package. To make this manageable, the pool is subdivided by section
480
(`main', `contrib' and `non-free') and by the first letter of the source
481
package name. These directories contain several files: the binary packages for
482
each architecture, and the source packages from which the binary packages were
487
You can find out where each package is placed by executing a command like
488
<samp>apt-cache showsrc mypackagename</samp> and looking at the `Directory:'
489
line. For example, the <samp>apache</samp> packages are stored in
490
<samp>pool/main/a/apache/</samp>.
494
Additionally, since there are so many <samp>lib*</samp> packages, these are
495
treated specially: for instance, libpaper packages are stored in
496
<samp>pool/main/libp/libpaper/</samp>.
500
[<a href="footnotes.en.html#f3" name="fr3">3</a>]
505
<h2><a name="s-incoming"></a>5.11 What is "incoming"?</h2>
508
After a developer uploads a package, it stays for a short while in the
509
"incoming" directory before it is checked that it's genuine and
510
allowed into the archive.
514
Usually nobody should install things from this place. However, in some rare
515
cases of emergency, the incoming directory is available at <code><a
516
href="http://incoming.debian.org/">http://incoming.debian.org/</a></code>. You
517
can manually fetch packages, check the GPG signature and MD5sums in the
518
.changes and .dsc files, and then install them.
523
<h2><a name="s-ownrepository"></a>5.12 How do I set up my own apt-able repository?</h2>
526
If you have built some private Debian packages which you'd like to install
527
using the standard Debian package management tools, you can set up your own
528
apt-able package archive. This is also useful if you'd like to share your
529
Debian packages while these are not distributed by the Debian project.
530
Instructions on how to do this are given in the <code><a
531
href="http://www.debian.org/doc/manuals/repository-howto/repository-howto">Debian
532
Repository HOWTO</a></code>.
538
[ <a href="ch-software.en.html">previous</a> ]
539
[ <a href="index.en.html#contents">Contents</a> ]
540
[ <a href="ch-basic_defs.en.html">1</a> ]
541
[ <a href="ch-getting.en.html">2</a> ]
542
[ <a href="ch-compat.en.html">3</a> ]
543
[ <a href="ch-software.en.html">4</a> ]
545
[ <a href="ch-pkg_basics.en.html">6</a> ]
546
[ <a href="ch-pkgtools.en.html">7</a> ]
547
[ <a href="ch-uptodate.en.html">8</a> ]
548
[ <a href="ch-kernel.en.html">9</a> ]
549
[ <a href="ch-customizing.en.html">10</a> ]
550
[ <a href="ch-support.en.html">11</a> ]
551
[ <a href="ch-contributing.en.html">12</a> ]
552
[ <a href="ch-redistrib.en.html">13</a> ]
553
[ <a href="ch-nexttime.en.html">14</a> ]
554
[ <a href="ch-faqinfo.en.html">15</a> ]
555
[ <a href="ch-pkg_basics.en.html">next</a> ]
561
The Debian GNU/Linux FAQ
565
version 3.1.5, 17 January 2007<br>
567
Authors are listed at <a href="ch-faqinfo.en.html#s-authors">Debian FAQ Authors</a><br>