deb (file format)

deb (file format)
Debian package
Application-x-deb.svg
The GNOME icon for deb files
Filename extension .deb
Internet media type application/x-deb
Developed by Debian
Type of format Package management system
Container for Software package
Extended from ar archive
GDebi installing a .deb package

deb is the extension of the Debian software package format and the most often used name for such binary packages. Like the "Deb" part of the term Debian, it originates from the name of Debra, erstwhile girlfriend and now ex-wife of Debian's founder Ian Murdock.

Debian packages are also used in distributions based on Debian, such as Ubuntu and others.

Debian packages are standard Unix ar archives that include two gzipped, bzipped or lzmaed tar archives: one that holds the control information and another that contains the data.

The accepted program for handling these packages is dpkg, most commonly via other programs such as apt/aptitude or Gdebi.

Debian packages can be converted into other packages and vice versa using alien, and created from source code using CheckInstall or Debian Package Maker.

Some core Debian packages are available as udebs (“micro debs”), and are typically used only for bootstrapping a Debian installation. Although these files use the udeb filename extension, they adhere to the same structure specification as ordinary deb files. However, unlike their deb counterparts, udeb packages contain only essential functional files.[1] In particular, documentation files are normally omitted. udeb packages are not installable on a standard Debian system.

Contents

Implementation

Since Debian 0.93, a deb file is implemented as an ar archive. Canonical contents of this archive are three files:

  • debian-binary: deb format version number. This is "2.0" for current versions of Debian.
  • control.tar.gz: all package meta-information.
  • data.tar, data.tar.gz, data.tar.bz2, data.tar.lzma or data.tar.xz: the actual installable files.

The debian-binary file must be the first entry in the archive, otherwise it will not be recognized as a Debian package.

See also

External links

  1. ^ http://d-i.alioth.debian.org/doc/internals/ch03.html