descriptionDebian package management system
homepage URLhttp://wiki.debian.org/Teams/Dpkg
repository URLhttps://git.dpkg.org/git/dpkg/dpkg.git
ownerjrnieder@gmail.com
last changeTue, 9 Apr 2024 04:03:22 +0000 (9 06:03 +0200)
last refreshTue, 23 Apr 2024 16:21:20 +0000 (23 18:21 +0200)
content tags
add:
README
dpkg - Debian's package maintenance system

This is the dpkg suite of programs that form the foundation of the Debian's
package management system; on the lower layer there are ‘dpkg-deb’ and
‘dpkg-split’ programs handling the binary formats, and ‘dpkg-source’ program
handling the source formats; there is a collection of tools to handle building
source packages into binary packages; there is the medium-level and less
user-friendly command-line interface (CLI) in the form of the ‘dpkg’ command;
and then there is the terminal user interface (TUI) ‘dselect’ program (which
has gone out of preference in favor of the apt (CLI) and aptitude (TUI)
programs).

The dpkg suite also includes some other programs currently maintained
on external repositories, namely ‘dpkg-repack’, ‘dpkg-www’, ‘dupload’
and ‘debsig-verify’.


Releases
--------

The current legacy, stable and development releases can be found at:

  <https://deb.debian.org/debian/pool/main/d/dpkg/>

For older releases check:

  <https://snapshot.debian.org/package/dpkg/>


Mailing List
------------

The subscription interface and web archives can be found at:

  <https://lists.debian.org/debian-dpkg/>

The mailing list address is (no subscription required to post):

  debian-dpkg@lists.debian.org


Source Repository
-----------------

The primary repository can be browsed and cloned from:

  <https://git.dpkg.org/git/dpkg/dpkg.git>


Building from git source
------------------------

To prepare the dpkg source tree from git before starting the build process
some required software needs to be installed:

  GNU autoconf >= 2.60
  GNU automake >= 1.11
  GNU libtool >= 2.0
  GNU autopoint >= 0.19.7 (from GNU gettext)
  GNU gettext >= 0.19.7 (only with --enable-nls)

After installing the needed software, and running the following command on
the git tree:

  $ ./autogen

the source should be roughly equivalent to the distributed tar source.

To enable translated documentation this software will be needed:

  po4a >= 0.59


Building from tar source
------------------------

The minimum software required to configure and build dpkg from a tarball is:

  C99 compiler (see doc/coding-style.txt)
  perl (see doc/coding-style.txt)
  pkgconf
  GNU make

To enable optional functionality or programs, this software might be needed:

  libmd (used by libdpkg, required if libc is missing digest functions)
  libz (from zlib, used instead of gzip command-line tool)
  liblzma (from xz utils, used instead of xz command-line tool)
  libzstd (from libzstd, used instead of zstd command-line tool)
  libbz2 (from bzip2, used instead of bzip2 command-line tool)
  libselinux
  curses compatible library (needed on --enable-dselect)

To run the test suite («make check» or «make authorcheck» for author tests,
those that might not be pertinent during release builds) the following
software might be needed:

  Test::MinimumVersion perl module (optional, author)
  Test::Pod perl module (optional)
  Test::Pod::Coverage perl module (optional, author)
  Test::Spelling perl module (optional, author)
  Test::Strict perl module (optional)
  Test::Synopsis perl module (optional, author)
  Test::Perl::Critic perl module (optional, author)
  aspell (optional, author)
  aspell-en (optional, author)
  codespell (optional, author)
  cppcheck (optional, author)
  fakeroot (optional)
  sop [sqop (from Sequoia-PGP), pgpainless-cli] (optional)
  sq (from Sequoia-PGP, optional)
  gpg-sq (from Sequoia-PGP, optional), gpg (optional)
  i18nspector (optional, author)
  shellcheck (optional, author)

To enable additional developer's documentation («make doc») this software
will be needed:

  pod2man
  doxygen
  dot

To enable code coverage («./configure --enable-coverage; make coverage»)
this software is needed:

  lcov (from the Linux Test Project)
  Devel-Cover perl module

The build process is done by running the usual «./configure; make». To
see all available configuration options please run «./configure --help».
The following configure options might be of interest to disable specific
programs:

  --disable-dselect
  --disable-start-stop-daemon
  --disable-update-alternatives

And the following to disable modifications to the build flags:

  --disable-compiler-warnings
  --disable-compiler-optimizations
  --disable-linker-optimizations
shortlog
2024-04-09 Nicolas Boulenguezscripts/mk: Generate the _FOR_BUILD variant of each... main
2024-04-09 Nicolas Boulenguezscripts/mk: Search once for parrallel= in DEB_BUILD_OPTIONS
2024-04-09 Nicolas Boulenguezscripts/mk: Use explicit test of $(origin) instead...
2024-04-09 Nicolas Boulenguezscripts/mk: Use filter instead of findstring
2024-04-09 Nicolas Boulenguezscripts/mk: Protect files against double inclusion
2024-04-02 Helge Kreutzmannpo: Update German man pages translation
2024-04-02 Guillem Joverman: Document DEB_BUILD_ARCH and DEB_HOST_ARCH usage...
2024-04-01 Guillem Joverbuild: Add support to track release VCS commit id
2024-04-01 Guillem Joverbuild: Print the release version at the end of configure
2024-03-29 Helge Kreutzmannpo: Update German man pages translation
2024-03-27 Guillem Joverbuild: Partially revert the sanitizer for some function...
2024-03-27 Matthias KloseDpkg::Vendor::Ubuntu: Use -fcf-protection=none instead...
2024-03-26 Guillem Joverlibdpkg: Handle readlink() failures in file_readlink()
2024-03-25 Guillem JoverDpkg::BuildDriver: Refactor build driver out of dpkg...
2024-03-24 Guillem Joverdpkg-buildpackage: Refactor build target hook execution
2024-03-24 Guillem Joverdpkg-buildpackage: Fix the debian/rules executable...
...
tags
6 weeks ago 1.22.6 Release 1.22.6
8 weeks ago 1.22.5 Release 1.22.5
2 months ago 1.22.4 Release 1.22.4
3 months ago 1.22.3 Release 1.22.3
4 months ago 1.22.2 Release 1.22.2
5 months ago 1.22.1 Release 1.22.1
7 months ago 1.20.13 Release 1.20.13
7 months ago 1.22.0 Release 1.22.0
11 months ago 1.21.22 Release 1.21.22
13 months ago 1.21.21 Release 1.21.21
14 months ago 1.21.20 Release 1.21.20
14 months ago 1.21.19 Release 1.21.19
15 months ago 1.21.18 Release 1.21.18
15 months ago 1.21.17 Release 1.21.17
15 months ago 1.21.16 Release 1.21.16
15 months ago 1.21.15 Release 1.21.15
...
heads
2 weeks ago main
6 months ago bookworm
6 months ago 1.21.x
7 months ago bullseye
7 months ago 1.20.x
21 months ago jessie
21 months ago 1.17.x
23 months ago stretch
23 months ago 1.18.x
23 months ago buster
23 months ago 1.19.x
3 years ago sid
8 years ago wheezy
8 years ago 1.16.x
8 years ago squeeze
8 years ago 1.15.x
...
forks
Cached version (186s old)
dpkg/guillem.git dpkg proposed updates jrnieder@gmail.com 12 days ago
dpkg/hertzog.git Buxy's dpkg repository jrnieder@gmail.com 11 years ago
+ dpkg/seanius.git dpkg with conffiles db jrnieder@gmail.com 14 years ago