Dpkg(3perl) libdpkg-perl Dpkg(3perl)

# [NAME](#NAME)

Dpkg - module with core variables

# [DESCRIPTION](#DESCRIPTION)

The Dpkg module provides a set of variables with information concerning this system installation.

It is also the entry point to the Dpkg module hierarchy.

# [VARIABLES](#VARIABLES)

$Dpkg::PROGNAME

Contains the name of the current program.

$Dpkg::PROGVERSION

Contains the version of the dpkg suite.

$Dpkg::PROGMAKE

Contains the name of the system GNU make program.

$Dpkg::PROGTAR

Contains the name of the system GNU tar program.

$Dpkg::PROGPATCH

Contains the name of the system GNU patch program (or another implementation that is directory traversal resistant).

$Dpkg::CONFDIR

Contains the path to the dpkg system configuration directory.

$Dpkg::ADMINDIR

Contains the path to the dpkg database directory.

$Dpkg::LIBDIR

Contains the path to the dpkg methods and plugins directory.

$Dpkg::DATADIR

Contains the path to the dpkg architecture tables directory.

# [MODULES](#MODULES)

The following is the list of public modules within the Dpkg hierarchy. Only modules with versions 1.00 or higher, and only the interfaces documented in their POD are considered public.

[Dpkg](#Dpkg)

This module, core variables.

[Dpkg::Arch](#Dpkg::Arch)

Architecture handling functions.

[Dpkg::BuildFlags](#Dpkg::BuildFlags)

Set, modify and query compilation build flags.

[Dpkg::BuildInfo](#Dpkg::BuildInfo)

Build information functions.

[Dpkg::BuildOptions](#Dpkg::BuildOptions)

Parse and manipulate **DEB\_BUILD\_OPTIONS**.

[Dpkg::BuildProfiles](#Dpkg::BuildProfiles)

Parse and manipulate build profiles.

[Dpkg::Changelog](#Dpkg::Changelog)

Parse changelogs.

[Dpkg::Changelog::Entry](#Dpkg::Changelog::Entry)

Represents a changelog entry.

[Dpkg::Changelog::Parse](#Dpkg::Changelog::Parse)

Generic changelog parser for *dpkg-parsechangelog*.

[Dpkg::Checksums](#Dpkg::Checksums)

Generate and parse checksums.

[Dpkg::Compression](#Dpkg::Compression)

Simple database of available compression methods.

[Dpkg::Compression::FileHandle](#Dpkg::Compression::FileHandle)

Transparently compress and decompress files.

[Dpkg::Compression::Process](#Dpkg::Compression::Process)

Wrapper around compression tools.

[Dpkg::Conf](#Dpkg::Conf)

Parse *dpkg* configuration files.

[Dpkg::Control](#Dpkg::Control)

Parse and manipulate Debian control information (*.dsc*, *.changes*, *Packages*/*Sources* entries, etc.).

[Dpkg::Control::Changelog](#Dpkg::Control::Changelog)

Represent fields output by *dpkg-parsechangelog*.

[Dpkg::Control::Fields](#Dpkg::Control::Fields)

Manage (list of known) control fields.

[Dpkg::Control::Hash](#Dpkg::Control::Hash)

Parse and manipulate a stanza of deb822 fields.

[Dpkg::Control::Info](#Dpkg::Control::Info)

Parse files like *debian/control*.

[Dpkg::Control::Tests](#Dpkg::Control::Tests)

Parse files like *debian/tests/control*.

[Dpkg::Control::Tests::Entry](#Dpkg::Control::Tests::Entry)

Represents a *debian/tests/control* stanza.

[Dpkg::Deps](#Dpkg::Deps)

Parse and manipulate dependencies.

[Dpkg::Deps::Simple](#Dpkg::Deps::Simple)

Represents a single dependency statement.

[Dpkg::Deps::Multiple](#Dpkg::Deps::Multiple)

Base module to represent multiple dependencies.

[Dpkg::Deps::Union](#Dpkg::Deps::Union)

List of unrelated dependencies.

[Dpkg::Deps::AND](#Dpkg::Deps::AND)

List of AND dependencies.

[Dpkg::Deps::OR](#Dpkg::Deps::OR)

List of OR dependencies.

[Dpkg::Deps::KnownFacts](#Dpkg::Deps::KnownFacts)

List of installed and virtual packages.

[Dpkg::Exit](#Dpkg::Exit)

Push, pop and run exit handlers.

[Dpkg::Gettext](#Dpkg::Gettext)

Wrapper around Locale::gettext.

[Dpkg::IPC](#Dpkg::IPC)

Spawn sub-processes and feed/retrieve data.

[Dpkg::Index](#Dpkg::Index)

Collections of Dpkg::Control (*Packages*/*Sources* files for example).

[Dpkg::Interface::Storable](#Dpkg::Interface::Storable)

Base object serializer.

[Dpkg::Path](#Dpkg::Path)

Common path handling functions.

[Dpkg::Source::Format](#Dpkg::Source::Format)

Parse and manipulate debian/source/format files.

[Dpkg::Source::Package](#Dpkg::Source::Package)

Extract Debian source packages.

[Dpkg::Substvars](#Dpkg::Substvars)

Substitute variables in strings.

[Dpkg::Vendor](#Dpkg::Vendor)

Identify current distribution vendor.

[Dpkg::Version](#Dpkg::Version)

Parse and manipulate Debian package versions.

# [CHANGES](#CHANGES)

## [Version 2.00 (dpkg 1.20.0)](#Version_2.00_%28dpkg_1.20.0%29)

Remove variables: $version, $progname, $admindir, $dpkglibdir and $pkgdatadir.

## [Version 1.03 (dpkg 1.18.24)](#Version_1.03_%28dpkg_1.18.24%29)

New variable: $PROGPATCH.

## [Version 1.02 (dpkg 1.18.11)](#Version_1.02_%28dpkg_1.18.11%29)

New variable: $PROGTAR, $PROGMAKE.

## [Version 1.01 (dpkg 1.17.0)](#Version_1.01_%28dpkg_1.17.0%29)

New variables: $PROGNAME, $PROGVERSION, $CONFDIR, $ADMINDIR, $LIBDIR and $DATADIR.

Deprecated variables: $version, $admindir, $dpkglibdir and $pkgdatadir.

## [Version 1.00 (dpkg 1.15.6)](#Version_1.00_%28dpkg_1.15.6%29)

Mark the module as public.

# [LICENSE](#LICENSE)

See the header comment on each module for their particular license.

2026-09-09 1.23.11-dirty

---

Document: Dpkg(3perl) from dpkg 1.23.11-r3 (Chainguard OS)
Source: https://git.dpkg.org/git/dpkg/dpkg.git
