Manual Page Result
0
Command: pkg_info | Section: 1 | Source: OpenBSD | File: pkg_info.1
PKG_INFO(1) FreeBSD General Commands Manual PKG_INFO(1)
NAME
pkg_info - display information on software packages
SYNOPSIS
pkg_info [-AaCcdfIKLMmPqRSstUvz] [-D name[=value]] [-E filename]
[-e pkg-name] [-l str] [-Q substring] [-r pkgspec]
[pkg-name ...]
DESCRIPTION
The pkg_info command is used to dump out information for packages, as
created by pkg_create(1), which may be still packed up or already
installed on the system with the pkg_add(1) command.
The pkg-name may be the name of an installed package, the pathname to a
package distribution file, or a URL to a package available through FTP,
HTTP, HTTPS, or SCP. pkg_info will try to complete pkg-name with a
version number while looking through installed packages. If no pkg-name
is specified, pkg_info shows the names and one-line comments for all
installed packages except internal packages.
When browsing through uninstalled packages, running pkg_info -I *.tgz
will report a summary line for each package, so that it is possible to
run pkg_info pkgname.tgz to obtain a longer package description, and
pkg_add -n pkgname.tgz to check that the installation would proceed
cleanly, including dependencies.
The following command-line options are supported:
-A Show the names and one-line comments for all installed packages,
including internal packages. This option cannot be combined with
pkg-name arguments.
-a Show the names and one-line comments for all installed packages
except internal packages. This option cannot be combined with
pkg-name arguments. It is the default when neither options nor
arguments are given.
-C Show certificate information for signed packages.
-c Show the one-line comment field for each package.
-D name[=value]
Enforce extra options as given by name, similarly to pkg_add(1).
SIGNER List of trusted signers, separated by commas.
Corresponds to list of public keys under
/etc/signify we want to trust. Defaults to any
key matching `*pkg' for packages, and any key
matching `*fw' for firmware.
snap Force `%c' and `%m' to expand to `snapshots',
even on a release kernel.
unsigned Allow opening unsigned packages without
warnings/errors (necessary for ports(7),
automatically set by the build infrastructure).
-d Show the long-description field for each package.
-E filename
Look for the package(s) that contains the given filename. As a
faster alternative, note that there is a package, pkglocatedb,
that contains a locate(1) database of every file in every
package.
-e pkg-name
This option allows you to test for the presence of another
(perhaps prerequisite) package from a script. If the package
identified by pkg-name is currently installed, return 0,
otherwise return 1. In addition, the names of any package(s)
found installed are printed to stdout unless turned off using the
-q option.
The given pkg-name is actually a package specification, as
described in packages-specs(7). For example, pkg_info -e
'name->=1.3' will match versions 1.3 and later of the name
package.
-e pkgpath
Another variant of this option that uses a pkgpath instead. A
pkgpath is a location within the ports tree, as described in
pkgpath(7). For example, pkg_info -e x11/kde/base3 will match
any package that was compiled according to
${PORTSDIR}/x11/kde/base3.
-f Show the packing-list instructions for each package. See
pkg_create(1) and package(5) for the various annotations.
-I Show the name and one-line comment ("index entry") for each
package. This is done by default if neither options nor
arguments are given.
-K Prefix file names with category keyword (e.g., @file, @lib).
Always used together with -L.
-L Show the files within each package. This is different from just
viewing the packing-list, since full pathnames for everything are
generated.
-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
package, but don't necessarily 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 install-message file (if any) for each package.
-m Show the names and one-line comments for all packages tagged as
manually installed, omitting those automatically installed as
dependencies. This option cannot be combined with pkg-name
arguments.
-P Show the pkgpath(7) for each package. You can easily build a
subdirlist with this.
-Q substring
Show the names of all packages in the first repository of the
package search path containing the substring in the stems of
their package names. A stem is a package name with all version
and flavor suffixes removed; see pkg_add(1) for more details on
stems. If -a is also specified, show the names of all matching
packages in all repositories instead.
-q Be "quiet" in emitting report headers and such, just dump the raw
info (basically, assume a non-human reading).
-R Show which packages require a given package.
-r pkgspec
Check a list for a given pkgspec. The following arguments are
names of packages to verify. Exit status will be augmented by 2
if none of the packages do match.
-S Show the update signature for each package. The `update
signature' is a unique tag showing the package name, a global
version number, and the version number of every run time
dependency and shared library used to build this package.
-s Show an estimate of the total size of each package.
-t Show the names and one-line comments for packages which are not
required by any other packages. This option cannot be combined
with pkg-name arguments.
-U Show the deinstall-message file (if any) for each package.
-v Turn on verbose output.
-z Fuzzy listing option, often used together with -m. Only shows
stems, flavors and branches information. To be reused with
pkg_add(1) -l to recreate a package installation with different
versions and no ambiguity. Note that this intentionally does not
include firmware, as they are not handled by pkg_add(1).
ENVIRONMENT
PKG_DBDIR The standard package database directory, /var/db/pkg, can be
overridden by specifying an alternative directory in the
PKG_DBDIR environment variable.
PKG_PATH This can be used to specify a colon-separated list of paths
to search for package files. The current directory is always
searched first, even if PKG_PATH is set. If PKG_PATH is
used, the suffix ".tgz" is automatically appended to the
pkg-name, whereas searching in the current directory uses
pkg-name literally. Each entry consists of a directory name.
URL schemes such as FTP, HTTP, HTTPS, or SCP are also
appropriate. The current directory may be indicated
implicitly by an empty directory name, or explicitly by a
single period (`./'). Special sequences `%a', `%c', `%m',
`%v' will be expanded.
PKG_TMPDIR Temporary area where package information files will be
extracted, instead of /tmp.
TRUSTED_PKG_PATH
Same semantics as PKG_PATH, but it is searched before
PKG_PATH and waives any kind of signature checking.
FILES
/usr/local/share/doc/pkg-readmes/
OpenBSD-specific information about individual packages
/var/db/pkg/ database of installed packages(7)
TECHNICAL DETAILS
Package info is either extracted from package files named on the command
line, or from already installed package information in
/var/db/pkg/<pkg-name>.
SEE ALSO
pkg_add(1), pkg_create(1), pkg_delete(1), bsd.port.mk(5), package(5),
packages-specs(7), pkgpath(7)
AUTHORS
Jordan Hubbard
initial design
Marc Espie
complete rewrite
FreeBSD 14.1-RELEASE-p8 May 29, 2022 FreeBSD 14.1-RELEASE-p8