pkg_info(1)
- NetBSD Manual Pages
PKG_INFO(1) NetBSD General Commands Manual PKG_INFO(1)
NAME
pkg_info -- a utility for displaying information on software packages
SYNOPSIS
pkg_info [-BbcDdFfhIikLmNnpqRrSsVvX] [-e package] [-E package]
[-K pkg_dbdir] [-l prefix] pkg-name ...
pkg_info [-a | -u] [flags]
pkg_info [-Q variable] pkg-name ...
DESCRIPTION
The pkg_info command is used to dump out information for packages, which
may be either packed up in files or already installed on the system with
the pkg_create(1) command.
The pkg-name may be the name of an installed package (with our without
version), a pattern matching several installed packages (see the PACKAGE
WILDCARDS section for a description of possible patterns), the pathname
to a binary package, a filename belonging to an installed package (if -F
is also given), or a URL to an ftp-available package.
The following command-line options are supported:
-a Show information for all currently installed packages. See also
-u.
-B Show some of the important definitions used when building the
binary package (the ``Build information'') for each package.
Additionally, any installation information variables (lowercase)
can be queried, too. In particular, automatic tells if a package
was installed automatically as a dependency of another package.
-b Show the NetBSD RCS Id strings from the files used in the con-
struction of the binary package (the "Build version") for each
package. These files are the package Makefile, any patch files,
any checksum files, and the packing list file.
-c Show the one-line comment field for each package.
-D Show the install-message file (if any) for each package.
-d Show the long-description field for each package.
-E pkg-name
This option allows you to test for the existence of a given pack-
age. If a package identified by pkg-name is currently installed,
return code is 0, otherwise 1. The name of the best matching
package found installed is printed to stdout unless turned off
using the -q option. pkg-name can contain wildcards (see the
PACKAGE WILDCARDS section below).
-e pkg-name
This option allows you to test for the existence of a given pack-
age. If a package identified by pkg-name is currently installed,
return code is 0, otherwise 1. The names of any package(s) found
installed are printed to stdout unless turned off using the -q
option. pkg-name can contain wildcards (see the PACKAGE
WILDCARDS section below).
-F Interpret any pkg-name given as filename, and translate it to a
package name using the package database. This can be used to
query information on a per-file basis, e.g. in conjunction with
the -e flag to find out which package a file belongs to.
-f Show the packing list instructions for each package.
-I Show the index entry for each package.
-i Show the install script (if any) for each package.
-K pkg_dbdir
Override the value of the PKG_DBDIR configuration option with the
value pkg_dbdir.
-k Show the de-install script (if any) for each package.
-L Show the files within each package. This is different from just
viewing the packing list, since full pathnames for everything are
generated. Files that were created dynamically during installa-
tion of the package are not listed.
-l str Prefix each information category header (see -q) shown with str.
This is primarily of use to front-end programs that want to
request a lot of different information fields at once for a pack-
age, but don't necessary want the output intermingled in such a
way that they can't organize it. This lets you add a special
token to the start of each field.
-m Show the mtree file (if any) for each package.
-N Show which packages each package was built with (exact dependen-
cies), if any.
-n Show which packages each package needs (depends upon), if any.
-p Show the installation prefix for each package.
-Q Show the definition of variable from the build information for
each package. An empty string is returned if no such variable
definition is found for the package(s).
-q Be ``quiet'' in emitting report headers and such, just dump the
raw info (basically, assume a non-human reading).
-R For each package, show the packages that require it.
-r For each package, show the packages that require it. Continue
recursively to show all dependents.
-S Show the size of this package and all the packages it requires,
in bytes.
-s Show the size of this package in bytes. The size is calculated
by adding up the size of each file of the package.
-u Show information for all user-installed packages. Automatically
installed packages (as dependencies of other packages) are not
displayed. See also -a.
-V Print version number and exit.
-v Turn on verbose output.
-X Print summary information for each package. The summary format
is described in pkg_summary(5). Its primary use is to contain
all information about the contents of a (remote) binary package
repository needed by package managing software.
TECHNICAL DETAILS
Package info is either extracted from package files named on the command
line, or from already installed package information in
<PKG_DBDIR>/<pkg-name>.
A filename can be given instead of a (installed) package name to query
information on the package this file belongs to. This filename is then
resolved to a package name using the package database. For this transla-
tion to take place, the -F flag must be given. The filename must be
absolute, compare the output of pkg_info -aF.
PACKAGE WILDCARDS
In the places where a package name/version is expected, e.g. for the -e
switch, several forms can be used. Either use a package name with or
without version, or specify a package wildcard that gets matched against
all installed packages.
Package wildcards use fnmatch(3). In addition, csh(1) style {,} alter-
nates have been implemented. Package version numbers can also be matched
in a relational manner using the >=, <=, >, and < operators. For exam-
ple, pkg_info -e 'name>=1.3' will match versions 1.3 and later of the
name package. Additionally, ranges can be defined by giving a lower
bound with > or >= and an upper bound with < or <=. The lower bound has
to come first. For example, pkg_info -e 'name>=1.3<2.0' will match ver-
sions 1.3 (inclusive) to 2.0 (exclusive) of package name.
The collating sequence of the various package version numbers is unusual,
but strives to be consistent. The magic string ``alpha'' equates to
alpha version and sorts before a beta version. The magic string ``beta''
equates to beta version and sorts before a release candidate. The magic
string ``rc'' equates to release candidate and sorts before a release.
The magic string ``pre'', short for ``pre-release'', is a synonym for
``rc''. For example, name-1.3rc3 will sort before name-1.3 and after
name-1.2.9. Similarly name-1.3alpha2 will sort before name-1.3beta1 and
they both sort before name-1.3rc1. In addition, alphabetic characters
sort in the same place as their numeric counterparts, so that name-1.2e
has the same sorting value as name-1.2.5 The magic string ``pl'' equates
to a patch level and has the same value as a dot in the dewey-decimal
ordering schemes, as does the underscore `_'.
ENVIRONMENT
See pkg_install.conf(5) for options, that can also be specified using the
environment.
SEE ALSO
pkg_add(1), pkg_admin(1), pkg_create(1), pkg_delete(1),
pkg_install.conf(5) pkgsrc(7)
AUTHORS
Jordan Hubbard
most of the work
John Kohl
refined it for NetBSD
Hubert Feyrer
NetBSD wildcard dependency processing, pkgdb, depends displaying,
pkg size display etc.
NetBSD 6.0 February 27, 2010 NetBSD 6.0
Powered by man-cgi (2024-03-20).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.