HOME

TheInfoList



OR:

dpkg is the
software Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work. At the lowest programming level, executable code consist ...
at the base of the package management system in the free operating system
Debian Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of De ...
and its numerous derivatives. dpkg is used to install, remove, and provide information about
.deb deb is the format, as well as extension of the software package format for the Debian Linux distribution and its derivatives. Design Debian packages are standard Unix ar archives that include two tar archives. One archive holds the cont ...
packages. dpkg (Debian Package) itself is a low-level tool.
APT Apt. is an abbreviation for apartment. Apt may also refer to: Places * Apt Cathedral, a former cathedral, and national monument of France, in the town of Apt in Provence * Apt, Vaucluse, a commune of the Vaucluse département of France * A ...
(Advanced Package 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 An aptitude is a component of a competence to do a certain kind of work at a certain level. Outstanding aptitude can be considered "talent". Aptitude is inborn potential to perform certain kinds of activities, whether physical or mental, and ...
(
ncurses ncurses (new curses) is a programming library providing an application programming interface (API) that allows the programmer to write text-based user interfaces (TUI) in a terminal-independent manner. It is a toolkit for developing "GUI-like" ...
) and synaptic (
GTK GTK (formerly GIMP ToolKit and GTK+) is a free and open-source cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both free and propriet ...
), 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

The possibly first attempt at a package management system was the development of Stop Alop by Greg Wettstein at the Roger Maris Cancer Center in Fargo, North Dakota. It provided inspiration for the creation of dpkg. dpkg was originally created by
Ian Murdock Ian Ashley Murdock (April28, 1973 – December 28, 2015) was an American software engineer, known for being the founder of the Debian project and Progeny Linux Systems, a commercial Linux company. Life and career Although Murdock's parents ...
in January 1994 as a
Shell script A shell script is a computer program designed to be run by a Unix shell, a command-line interpreter. The various dialects of shell scripts are considered to be scripting languages. Typical operations performed by shell scripts include file man ...
.
Matt Welsh Matthew James Welsh (born 18 November 1976) is an Australian swimmer who is the former world champion in the backstroke and butterfly. He took two golds in 50-meter butterfly and 50-meter backstroke, during one hour, at the World Championships ...
, Carl Streeter and
Ian Murdock Ian Ashley Murdock (April28, 1973 – December 28, 2015) was an American software engineer, known for being the founder of the Debian project and Progeny Linux Systems, a commercial Linux company. Life and career Although Murdock's parents ...
then rewrote it in
Perl Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it also referred to its redesigned "sister language", Perl 6, before the latter's name was offic ...
, and then later the main part was rewritten in C by
Ian Jackson Ian Jackson is a longtime free software author and Debian developer. Jackson wrote dpkg (replacing a more primitive Perl tool with the same name), SAUCE (Software Against Unsolicited Commercial Email), userv and debbugs. He used to maintain the Lin ...
in 1994. The name ''dpkg'' was originally a shortening of "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 in Debian.


Example use

To install a .deb package: dpkg -i ''filename.deb'' where ''filename.deb'' is the name of the Debian package (such as pkgname_0.00-1_amd64.deb). The list of installed packages can be obtained with: dpkg -l '' ptional pattern' To remove an installed package: dpkg -r ''packagename''


Development tools

dpkg-dev contains a series of development tools required to unpack, build and upload Debian source packages. These include: * dpkg-source packs and unpacks the source files of a Debian package. * 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.


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.


wpkg packager for Windows

wpkg was created as a dpkg look-alike that would run under the
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
operating system. It subsequently evolved to include functionality similar to parts of the
APT Apt. is an abbreviation for apartment. Apt may also refer to: Places * Apt Cathedral, a former cathedral, and national monument of France, in the town of Apt in Provence * Apt, Vaucluse, a commune of the Vaucluse département of France * A ...
suite, improved repository management, distribution management and was ported to
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whi ...
and
Unix-like A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-li ...
systems, including
Cygwin Cygwin ( ) is a POSIX-compatible programming and runtime environment that runs natively on Microsoft Windows. Under Cygwin, source code designed for Unix-like operating systems may be compiled with minimal modification and executed. The Cygwin in ...
,
Mingw32 MinGW ("Minimalist GNU for Windows"), formerly mingw32, is a free and open source software development environment to create Microsoft Windows applications. MinGW includes a port of the GNU Compiler Collection (GCC), GNU Binutils for Windows ( ...
,
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
,
OpenSolaris OpenSolaris () is a discontinued open-source computer operating system based on Solaris and created by Sun Microsystems. It was also, perhaps confusingly, the name of a project initiated by Sun to build a developer and user community around t ...
and
FreeBSD FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular ...
. It retains
.deb deb is the format, as well as extension of the software package format for the Debian Linux distribution and its derivatives. Design Debian packages are standard Unix ar archives that include two tar archives. One archive holds the cont ...
file format compatibility and is supplied with the ready-to-use executable wpkg.exe. , the most recent release of the software was in 2015.


See also

*
Advanced Packaging Tool Advanced package tool, or APT, is a free-software user interface that works with core libraries to handle the installation and removal of software on Debian, and Debian-based Linux distributions. APT simplifies the process of managing softwa ...
*
Alien (file converter) Alien is a computer program that converts between different Linux package formats, created by Joey Hess and presently maintained by Kyle Barry. Features Alien supports conversion between Linux Standard Base (LSB), LSB-compliant .rpm packages ...
*
Debian build toolchain The Debian build toolchain is a collection of software utilities used to create Debian source packages (.dsc) and Debian binary packages (.deb files) from upstream source tarballs. These tools are used in the Debian project and also in Debi ...
* Deb file format * RPM, for RedHat-derived systems *
opkg opkg (''open package management'') is a lightweight package management system based upon ipkg. It is written in C and resembles Advanced Package Tool (APT)/dpkg in operation. It is intended for use on embedded Linux devices and is used in this ...
, for storage-constrained Linux installations. *
List of software package management systems This is a list of notable software package management systems, categorized first by package format (binary, source code, hybrid) and then by operating system family. Binary packages The following package management systems distribute apps in binar ...
*
Package management system A package manager or package-management system is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer in a consistent manner. A package manager deals w ...
*
List of installation software The following is a list of applications for building installation programs, organized by platform support. Cross-platform Linux Windows macOS AmigaOS See also * List of software package management systems This is a list of notable ...


References


External links

*
Mailing list

wpkg manual page
{{Debian Free software programmed in C