dpkg

From Wikipedia, the free encyclopedia

dpkg
Developed by the dpkg team
Genre Package management system

dpkg is the software at the base of the Debian package management system. dpkg is used to install, remove, and provide information about .deb packages.

dpkg itself is a low level tool; higher level tools, such as APT, are used to fetch packages from remote locations or deal with complex package relations. End users are encouraged to use tools like aptitude or synaptic, having a more sophisticated way of dealing with package relationships and a friendlier interface.

The Debian package "dpkg" provides the dpkg program, as well as several others necessary for run-time functioning of the packaging system, including dpkg-statoverride, dpkg-divert and update-alternatives. It also includes the programs such as start-stop-daemon and install-info, and the latter is kept mostly due to backwards compatibility (it is developed and distributed separately nowadays). The Debian package "dpkg-dev" includes the numerous build tools described below.

Contents

[edit] History

dpkg was originally created by Matt Welsh, Carl Streeter and Ian Murdock, first as a Perl program, and then later the main part was rewritten in C by Ian Jackson in 1993. The name dpkg was originally the short for "Debian package", but the meaning of that phrase has evolved significantly, as dpkg the software is orthogonal to the deb package format as well as the Debian Policy which defines how Debian packages behave.

[edit] Example use

To install a .deb package:

dpkg -i debFileName

where debFileName is the name of the file with the package information and will generally have an extension of .deb; you must run the dpkg this as root.

The list of installed packages can be obtained with:

dpkg -l [optional pattern]

To remove an installed package:

dpkg -r package name

[edit] Development tools

dpkg-dev contains a series of tools that have to be called to construct a package. They are the following:

  • dpkg-source packs and unpacks the source files of a Debian package.
  • dpkg-deb packs and unpacks binary packages
  • dpkg-gencontrol reads the information from an unpacked Debian tree source and generates a binary package control package, creating an entry for this in Debian/files.
  • dpkg-shlibdeps calculates the dependencies of runs with respect to libraries.
  • dpkg-genchanges reads the information from an unpacked Debian tree source that once constructed creates a control file (.changes).
  • dpkg-buildpackage is a control script that can be used to construct the package automatically.
  • dpkg-distaddfile adds a file input to debian/files.
  • dpkg-parsechangelog reads the changes file (changelog) of an unpacked Debian tree source and creates a conveniently prepared output with the information for those changes.

[edit] See also

[edit] Compare

  • dpkg is similar to RPM.
  • ipkg is a dpkg-inspired package management system for storage-constrained Linux installations.

[edit] External links