PKG_INFO(1)

NAME
pkg_info - a utility for displaying information on software packages

SYNOPSIS
pkg_info [-bcdDEfghGiIjkKLmopPqQrRsvVxX] [-e package] [-l prefix] [-t template] -a | pkg-name ...
pkg_info [-qQ] -W filename
pkg_info [-qQ] -O origin
pkg_info

DESCRIPTION
The pkg_info command is used to dump out information for packages, either packed up in files with the pkg_create(1) command or already installed on the system with the pkg_add(1) command.

OPTIONS
The following command line options are supported:

pkg-name ...
    The named packages are described. A package name may either be the name of an installed package, the pathname to a package distribution file or a URL to an FTP available package. Package version numbers can also be matched in a relational manner using the >=, <=, > and < operators. For example,

        pkg_info 'portupgrade>=20030723'

    will match versions 20030723 and later of the portupgrade package.

-a, --all
    Show all currently installed packages.

-b, --blocksize
    Use the BLOCKSIZE environment variable for output even when the -q or -Q flag is present.

-h, --help
    Print help message.

-v, --verbose
    Turn on verbose output.

-p  Show the installation prefix for each package.

-q, --quiet
    Be “quiet” in emitting report headers and such, just dump the raw info (basically, assume a non-human reading).

-Q  Be “quiet” as above but print preface output with the package name.

-c  Show the (one line) comment field for each package.

-d  Show the long description field for each package.

-D  Show the install-message file for each package.

-f  Show the packing list instructions for each package.

-g  Show files that do not match the recorded checksum.

-i  Show the install script (if any) for each package.

-I  Show an index line for each package. This option takes precedence over all other package formatting options.

-j  Show the requirements script (if any) for each package.

-k  Show the de-install script (if any) for each package.

-K, --keep
    Keep any downloaded package in PKGDIR if it is defined or in current directory by default.

-r  For each of the specified packages, show the list of packages on which it depends.

-R  For each of the specified packages, show the list of installed packages which require it.

-m  Show the mtree(8) file (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.

-s  Show the total size occupied by files installed within each package.

-o  Show the “origin” path recorded on package generation. This path is the directory name in the FreeBSD Ports Collection of the underlying port from which the package was generated.

-G, --no-glob
    Do not try to expand shell glob patterns in the pkg-name when selecting packages to be displayed (by default pkg_info automatically expands shell glob patterns in the pkg-name).

-W, --which filename
    For the specified filename argument show which package it belongs to. If the file is not in the current directory, and does not have an absolute path, then the directories specified in the environment variable PATH are searched using which(1).

-O, --origin origin
    List all packages having the specified origin.

-x, --regex
    Treat the pkg-name as a regular expression and display information only for packages whose names match that regular expression. Multiple regular expressions could be provided, in that case pkg_info displays information about all packages that match at least one regular expression from the list.

-X, --extended
    Like -x, but treats the pkg-name as an extended regular expression.

-e, --exists package
    If the package identified by package is currently installed, return 0, otherwise return 1. This option allows you to easily test for the presence of another (perhaps prerequisite) package from a script.

-E  Show only matching package names. This option takes precedence over all other package formatting options. If any packages match, return 0, otherwise return 1.

-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 do not necessarily want the output intermingled in such a way that they cannot organize it. This lets you add a special token to the start of each field.

-t, --template template
    Use template as the argument to mktemp(3) when creating a “staging area”. By default, this is the string /tmp/instmp.XXXXXX, but it may be necessary to override it in the situation where space in your /tmp directory is limited. Be sure to leave some number of ‘X’ characters for mktemp(3) to fill in with a unique ID.
    Note: This should really not be necessary with pkg_info, since very little information is extracted from each package and one would have to have a very small /tmp indeed to overflow it.

-V  Show revision number of the packing list format.

-P, --version
    Show revision number of package tools.

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>.

ENVIRONMENT

BLOCKSIZE
    If the environment variable BLOCKSIZE is set the block counts will be displayed in units of that size block.

PKG_TMPDIR
    Points to the directory where pkg_info creates its temporary files. If this variable is not set, TMPDIR is used. If both are unset, the builtin defaults are used.

PKG_DBDIR
    Specifies an alternative location for the installed package database.

PKG_PATH
    Specifies an alternative package location, if a given package cannot be found.

PKGDIR
    Specifies an alternative location to save downloaded packages to.

FILES
/var/tmp
    Used if the environment variables PKG_TMPDIR and TMPDIR are not set, or if the directories named have insufficient space.
/tmp
    The next choice if /var/tmp does not exist or has insufficient space.
/usr/tmp
    The last choice if /tmp is unsuitable.
/var/db/pkg
    Default location of the installed package database.

SEE ALSO
pkg_add(1), pkg_create(1), pkg_delete(1), pkg_version(1), mktemp(3), mtree(8)

AUTHORS
Jordan Hubbard

CONTRIBUTORS
John Kohl <jtk@rational.com>, Oliver Eikemeier <eik@FreeBSD.org>

BUGS
Sure to be some.