Original author(s) Written in C, C++, Perl | Developer(s) The dpkg team | |
Stable release 1.17.27 / April 25, 2016; 10 months ago (2016-04-25) Preview release 1.18.18 / December 20, 2016; 2 months ago (2016-12-20) Repository anonscm.debian.org/cgit/dpkg/dpkg.git |
dpkg is the software at the base of the package management system in the free operating system Debian and its numerous derivatives. dpkg
is used to install, remove, and provide information about .deb packages.
Contents
dpkg
(Debian Package) itself is a low level tool. APT (Advanced Packaging Tool), a higher level tool, is more commonly used than dpkg
as it can fetch packages from remote locations and deal with complex package relations, such as dependency resolution. Frontends for APT like aptitude (ncurses) and synaptic (GTK+) are used for their friendlier interfaces.
The Debian package "dpkg" provides the dpkg
program, as well as several other programs necessary for run-time functioning of the packaging system, including dpkg-deb
, dpkg-split
, dpkg-query
, dpkg-statoverride
, dpkg-divert
and dpkg-trigger
. It also includes the programs such as update-alternatives
and start-stop-daemon
. The install-info
program used to be included as well, but was later removed as it is now developed and distributed separately. The Debian package "dpkg-dev" includes the numerous build tools described below.
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 1994. 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 Manual which defines how Debian packages behave.
Example use
To install a .deb package:
dpkg -i debFileNamewhere debFileName is the name of the Debian software package.
The list of installed packages can be obtained with:
dpkg -l [optional pattern]To remove an installed package:
dpkg -r packagenameDevelopment tools
dpkg-dev contains a series of development tools required to unpack, build and upload Debian source packages. These include:
Database
The dpkg database is located under /var/lib/dpkg; the "status" file contains the list of installed software on the current system. There is no information about repositories in this database.