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-08-26). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.