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 pkg-name] [-e pkg-name]
[-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 or 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 (with
-F), or a URL to an FTP-available package.
The following command line options are available:
-a Show information for all currently installed packages. See also
-u. When neither -a nor -u is given, the former is assumed.
-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 query information
on the package that file belongs to. This can be used to query
information on a per-file basis. See the TECHNICAL DETAILS sec-
tion below for more information.
-f Show the packing list instructions for each package.
-h Print usage message and exit.
-I Show the index entry for each package. This option is assumed
when no arguments or relevant flags are specified.
-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 prefix
Prefix each information category header (see -q) shown with
prefix. This is primarily of use to front-end programs that want
to request a lot of different information fields at once for a
package, 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 variable
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>.
When the -F option is used, a filename can be given instead of a package
name to query information on the (installed) package that file belongs
to. The filename is resolved to a package name using the package data-
base. The filename must be absolute, as in the output of
pkg_info -aF.
For example,
pkg_info -Fe /path/to/file
can be used to display the package the given file belongs to, and
pkg_info -LF /path/to/file
can be used to display all files belonging to the package the given file
belongs to.
PACKAGE WILDCARDS
In the places where a package name/version is expected, e.g., for the -e
option, 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 ``<'' opera-
tors. For example,
pkg_info -e 'name>=1.3'
will match versions 1.3 and later of the ``name'' package. (Make sure to
use shell quoting.) Additionally, ranges can be defined, by giving both
a lower bound (with ``>'' or ``>='') as well as an upper bound (with
``<'' or ``<=''). The lower bound has to come first. For example,
pkg_info -e 'name>=1.3<2.0'
will match versions 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 candi-
date. 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.3alpha2'' will sort before ``name-1.3beta1'', and they both sort
before ``name-1.3rc1''. Similarly, ``name-1.3rc3'' will sort before
``name-1.3'', and after ``name-1.2.9''. The magic string ``pl'' equates
to ``patch level'', and has the same value as a dot (`.') in the dewey-
decimal ordering schemes, as does the underscore (`_'). Additionally,
alphabetic characters sort in the same place as their numeric counter-
parts, so that ``name-1.2e'' has the same sorting value as
``name-1.2.5''.
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, and more.
NetBSD 9.4_STABLE January 11, 2015 NetBSD 9.4_STABLE
Powered by man-cgi (2024-03-20).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.