4.6. The Debian archive

The Debian distribution consists of a lot of packages (currently around 30000 source packages) and a few additional files (such as documentation and installation disk images).

Here is an example directory tree of a complete Debian archive:

  1. dists/stable/main/
  2. dists/stable/main/binary-amd64/
  3. dists/stable/main/binary-armel/
  4. dists/stable/main/binary-i386/
  5. ...
  6. dists/stable/main/source/
  7. ...
  8. dists/stable/main/disks-amd64/
  9. dists/stable/main/disks-armel/
  10. dists/stable/main/disks-i386/
  11. ...
  12. dists/stable/contrib/
  13. dists/stable/contrib/binary-amd64/
  14. dists/stable/contrib/binary-armel/
  15. dists/stable/contrib/binary-i386/
  16. ...
  17. dists/stable/contrib/source/
  18. dists/stable/non-free/
  19. dists/stable/non-free/binary-amd64/
  20. dists/stable/non-free/binary-armel/
  21. dists/stable/non-free/binary-i386/
  22. ...
  23. dists/stable/non-free/source/
  24. dists/testing/
  25. dists/testing/main/
  26. ...
  27. dists/testing/contrib/
  28. ...
  29. dists/testing/non-free/
  30. ...
  31. dists/unstable
  32. dists/unstable/main/
  33. ...
  34. dists/unstable/contrib/
  35. ...
  36. dists/unstable/non-free/
  37. ...
  38. pool/
  39. pool/main/a/
  40. pool/main/a/apt/
  41. ...
  42. pool/main/b/
  43. pool/main/b/bash/
  44. ...
  45. pool/main/liba/
  46. pool/main/liba/libalias-perl/
  47. ...
  48. pool/main/m/
  49. pool/main/m/mailx/
  50. ...
  51. pool/non-free/f/
  52. pool/non-free/f/firmware-nonfree/
  53. ...

As you can see, the top-level directory contains two directories, dists/ and pool/. The latter is a “pool” in which the packages actually are, and which is handled by the archive maintenance database and the accompanying programs. The former contains the distributions, stable, testing and unstable. The Packages and Sources files in the distribution subdirectories can reference files in the pool/ directory. The directory tree below each of the distributions is arranged in an identical manner. What we describe below for stable is equally applicable to the unstable and testing distributions.

dists/stable contains three directories, namely main, contrib, and non-free.

In each of the areas, there is a directory for the source packages (source) and a directory for each supported architecture (binary-i386, binary-amd64, etc.).

The main area contains additional directories which hold the disk images and some essential pieces of documentation required for installing the Debian distribution on a specific architecture (disks-i386, disks-amd64, etc.).