Dpkg::Deps::KnownFacts(3perl) libdpkg-perl Dpkg::Deps::KnownFacts(3perl)

# [NAME](#NAME)

Dpkg::Deps::KnownFacts - list of installed real and virtual packages

# [DESCRIPTION](#DESCRIPTION)

This class represents a list of installed packages and a list of virtual packages provided (by the set of installed packages).

# [METHODS](#METHODS)

$facts = Dpkg::Deps::KnownFacts-&gt;**new()**;

Creates a new object.

$facts-&gt;add\_installed\_package($package, $version, $arch, $multiarch)

Records that the given version of the package is installed. If $version/$arch is undefined we know that the package is installed but we don't know which version/architecture it is. $multiarch is the Multi-Arch field of the package. If $multiarch is undef, it will be equivalent to "Multi-Arch: no".

Note that $multiarch is only used if $arch is provided.

$facts-&gt;add\_provided\_package($virtual, $relation, $version, $by)

Records that the "$by" package provides the $virtual package. $relation and $version correspond to the associated relation given in the Provides field (if present).

$facts-&gt;**evaluate\_simple\_dep()**

This method is private and should not be used except from within Dpkg::Deps.

# [CHANGES](#CHANGES)

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

Remove method: $facts-&gt;**check\_package()**.

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

New option: $facts-&gt;**add\_installed\_package()** now accepts 2 supplementary parameters ($arch and $multiarch).

Deprecated method: $facts-&gt;**check\_package()** is obsolete, it should not have been part of the public API.

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

Mark the module as public.

2026-09-09 1.23.11-dirty

---

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