diff options
Diffstat (limited to 'scripts/Dpkg.pm')
-rw-r--r-- | scripts/Dpkg.pm | 192 |
1 files changed, 175 insertions, 17 deletions
diff --git a/scripts/Dpkg.pm b/scripts/Dpkg.pm index 0d171c080..9d06b4145 100644 --- a/scripts/Dpkg.pm +++ b/scripts/Dpkg.pm @@ -24,12 +24,14 @@ Dpkg - module with core variables 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. + =cut use strict; use warnings; -our $VERSION = '1.03'; +our $VERSION = '2.00'; our @EXPORT_OK = qw( $PROGNAME $PROGVERSION @@ -41,13 +43,6 @@ our @EXPORT_OK = qw( $LIBDIR $DATADIR ); -our @EXPORT = qw( - $version - $progname - $admindir - $dpkglibdir - $pkgdatadir -); use Exporter qw(import); @@ -99,7 +94,7 @@ Contains the path to the dpkg architecture tables directory. our ($PROGNAME) = $0 =~ m{(?:.*/)?([^/]*)}; # The following lines are automatically fixed at install time -our $PROGVERSION = '1.19.x'; +our $PROGVERSION = '1.20.x'; our $PROGMAKE = $ENV{DPKG_PROGMAKE} // 'make'; our $PROGTAR = $ENV{DPKG_PROGTAR} // 'tar'; our $PROGPATCH = $ENV{DPKG_PROGPATCH} // 'patch'; @@ -107,20 +102,183 @@ our $PROGPATCH = $ENV{DPKG_PROGPATCH} // 'patch'; our $CONFDIR = '/etc/dpkg'; our $ADMINDIR = '/var/lib/dpkg'; our $LIBDIR = '.'; -our $DATADIR = '..'; +our $DATADIR = '../data'; $DATADIR = $ENV{DPKG_DATADIR} if defined $ENV{DPKG_DATADIR}; -# XXX: Backwards compatibility, to be removed on VERSION 2.00. -## no critic (Variables::ProhibitPackageVars) -our $version = $PROGVERSION; -our $admindir = $ADMINDIR; -our $dpkglibdir = $LIBDIR; -our $pkgdatadir = $DATADIR; -## use critic +=head1 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. + +=over + +=item L<Dpkg> + +This module, core variables. + +=item L<Dpkg::Arch> + +Architecture handling functions. + +=item L<Dpkg::Build::Info> + +Build information functions. + +=item L<Dpkg::BuildFlags> + +Set, modify and query compilation build flags. + +=item L<Dpkg::BuildOptions> + +Parse and manipulate B<DEB_BUILD_OPTIONS>. + +=item L<Dpkg::BuildProfiles> + +Parse and manipulate build profiles. + +=item L<Dpkg::Changelog> + +Parse changelogs. + +=item L<Dpkg::Changelog::Entry> + +Represents a changelog entry. + +=item L<Dpkg::Changelog::Parse> + +Generic changelog parser for F<dpkg-parsechangelog>. + +=item L<Dpkg::Checksums> + +Generate and parse checksums. + +=item L<Dpkg::Compression> + +Simple database of available compression methods. + +=item L<Dpkg::Compression::FileHandle> + +Transparently compress and decompress files. + +=item L<Dpkg::Compression::Process> + +Wrapper around compression tools. + +=item L<Dpkg::Conf> + +Parse F<dpkg> configuration files. + +=item L<Dpkg::Control> + +Parse and manipulate Debian control information (F<.dsc>, F<.changes>, +F<Packages>/F<Sources> entries, etc.). + +=item L<Dpkg::Control::Changelog> + +Represent fields output by F<dpkg-parsechangelog>. + +=item L<Dpkg::Control::Fields> + +Manage (list of known) control fields. + +=item L<Dpkg::Control::Hash> + +Parse and manipulate a block of RFC822-like fields. + +=item L<Dpkg::Control::Info> + +Parse files like F<debian/control>. + +=item L<Dpkg::Control::Tests> + +Parse files like F<debian/tests/control>. + +=item L<Dpkg::Control::Tests::Entry> + +Represents a F<debian/tests/control> stanza. + +=item L<Dpkg::Deps> + +Parse and manipulate dependencies. + +=item L<Dpkg::Deps::Simple> + +Represents a single dependency statement. + +=item L<Dpkg::Deps::Multiple> + +Base module to represent multiple dependencies. + +=item L<Dpkg::Deps::Union> + +List of unrelated dependencies. + +=item L<Dpkg::Deps::AND> + +List of AND dependencies. + +=item L<Dpkg::Deps::OR> + +List of OR dependencies. + +=item L<Dpkg::Deps::KnownFacts> + +List of installed and virtual packages. + +=item L<Dpkg::Exit> + +Push, pop and run exit handlers. + +=item L<Dpkg::Gettext> + +Wrapper around L<Locale::gettext>. + +=item L<Dpkg::IPC> + +Spawn sub-processes and feed/retrieve data. + +=item L<Dpkg::Index> + +Collections of L<Dpkg::Control> (F<Packages>/F<Sources> files for example). + +=item L<Dpkg::Interface::Storable> + +Base object serializer. + +=item L<Dpkg::Path> + +Common path handling functions. + +=item L<Dpkg::Source::Format> + +Parse and manipulate debian/source/format files. + +=item L<Dpkg::Source::Package> + +Extract Debian source packages. + +=item L<Dpkg::Substvars> + +Substitute variables in strings. + +=item L<Dpkg::Vendor> + +Identify current distribution vendor. + +=item L<Dpkg::Version> + +Parse and manipulate Debian package versions. + +=back =head1 CHANGES +=head2 Version 2.00 (dpkg 1.20.0) + +Remove variables: $version, $progname, $admindir, $dpkglibdir and $pkgdatadir. + =head2 Version 1.03 (dpkg 1.18.24) New variable: $PROGPATCH. |