deb-old(5)

πŸŽ€ deb-old β€” the OG Debian binary package format πŸŽ€

okay so this is the manual page for deb-old, from the dpkg suite, bestie. it's about the vintage era of Debian packaging and honestly it's giving archaeological dig in the best way πŸ’…


✨ NAME ✨

deb-old β€” old style Debian binary package format πŸ¦‹

✨ SYNOPSIS ✨

filename.deb

✨ DESCRIPTION ✨

So the .deb format is, like, the Debian binary package file format. iconic behavior, no cap πŸ‘‘

This manual page specifically describes the old format β€” the one used before Debian 0.93. yes, before. we're talking legacy. if you want the details on the new format, go read deb(5) instead, iykyk πŸ’–

✨ FORMAT ✨

okay so picture this: the file is two lines of format information, as ASCII text, and then right after that it's two concatenated gzipped ustar files. that's it. that's the whole vibe 🌸

the two lines, explained 🌈

  • the first line is the format version number, padded to 8 digits. for all old-format archives this is literally always 0.939000.
  • the second line is a decimal string (and no leading zeroes, we're not animals) giving the length of the first gzipped tarfile.

each of these lines is terminated with a single newline character. periodt 🫢

tarfile number one: the control tarfile πŸ“¦

the first tarfile contains the package metadata, as a series of ordinary files. the file control must be present β€” like, non-negotiable β€” because it contains the package control information πŸ‘‘

in some very old archives, the files in the control tarfile may optionally be in a DEBIAN subdirectory. and if that's the case, the DEBIAN subdirectory will be in the control tarfile too, and the control tarfile will have only files in that directory. optionally the control tarfile may contain an entry for ., that is, the current directory. cute little quirk, love that for them πŸŽ€

tarfile number two: the filesystem archive 🧚

the second gzipped tarfile is the filesystem archive, containing pathnames relative to the root directory of the system to be installed on. and heads up β€” the pathnames do not have leading slashes. nope. none. zip. zero. πŸ¦‹

lowkey important: this format is the old one. it's history, babe. if you're building packages today you want the new format over in deb(5) πŸ’€

✨ SEE ALSO ✨


and that's the whole page, bestie πŸ’œ this was 1.23.11-dirty, dated 2026-09-09, and it's the deb-old(5) manual page β€” go forth and appreciate your ancestors, mwah πŸ’‹

πŸ“¦ where this page comes from