FreeBSD-5.3/usr.sbin/pkg_install/info/pkg_info.1

Compare this file to the similar file:
Show the results in this format:

.\"
.\" FreeBSD install - a package for the installation and maintenance
.\" of non-core utilities.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" Jordan K. Hubbard
.\"
.\"
.\"     @(#)pkg_info.1
.\" $FreeBSD: src/usr.sbin/pkg_install/info/pkg_info.1,v 1.53 2004/07/03 18:35:52 ru Exp $
.\"
.Dd June 29, 2004
.Dt PKG_INFO 1
.Os
.Sh NAME
.Nm pkg_info
.Nd a utility for displaying information on software packages
.Sh SYNOPSIS
.Nm
.Op Fl bcdDEfgGijIkLmopPqQrRsvVxX
.Op Fl e Ar package
.Op Fl l Ar prefix
.Op Fl t Ar template
.Fl a | Ar pkg-name ...
.Nm
.Op Fl qQ
.Fl W Ar filename
.Nm
.Op Fl qQ
.Fl O Ar origin
.Nm
.Sh DESCRIPTION
The
.Nm
command is used to dump out information for packages, either packed up in
files with the
.Xr pkg_create 1
command or already installed on the system
with the
.Xr pkg_add 1
command.
.Sh OPTIONS
The following command line options are supported:
.Bl -tag -width indent
.It Ar 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
.Pa \*[Ge], \*[Le], \*[Gt]
and
.Pa \*[Lt]
operators.
For example,
.Pa pkg_info 'portupgrade\*[Ge]20030723'
will match versions 20030723 and later of the
.Pa portupgrade
package.
.It Fl a
Show all currently installed packages.
.It Fl b
Use the BLOCKSIZE environment variable for output even when the
.Fl q
or
.Fl Q
flag is present.
.It Fl v
Turn on verbose output.
.It Fl p
Show the installation prefix for each package.
.It Fl q
Be
.Dq quiet
in emitting report headers and such, just dump the
raw info (basically, assume a non-human reading).
.It Fl Q
Be
.Dq quiet
as above but print preface output with the package name.
.It Fl c
Show the (one line) comment field for each package.
.It Fl d
Show the long description field for each package.
.It Fl D
Show the install-message file for each package.
.It Fl f
Show the packing list instructions for each package.
.It Fl g
Show files that don't match the recorded checksum.
.It Fl i
Show the install script (if any) for each package.
.It Fl I
Show an index line for each package.
This option takes
precedence over all other package formatting options.
.It Fl j
Show the requirements script (if any) for each package.
.It Fl k
Show the de-install script (if any) for each package.
.It Fl r
Show the list of packages on which each package depends.
.It Fl R
Show the list of installed packages which require each package.
.It Fl m
Show the mtree file (if any) for each package.
.It Fl L
Show the files within each package.
This is different from just
viewing the packing list, since full pathnames for everything
are generated.
.It Fl s
Show the total size occupied by files installed within each package.
.It Fl o
Show the
.Dq origin
path recorded on package generation.
This path
intended to give an idea as to where the underlying port, from which
package was generated, is located in the
.Fx
.Em "Ports Collection" .
.It Fl G
Do not try to expand shell glob patterns in the
.Ar pkg-name
when selecting packages to be displayed (by default
.Nm
automatically expands shell glob patterns in the
.Ar pkg-name ) .
.It Fl W
For the specified
.Ar 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
.Ev PATH
is searched using
.Xr which 1 .
.It Fl O
For the specified
.Ar origin
argument list all packages having this origin.
.It Fl x
Treat the
.Ar 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
.Nm
displays information about all packages that match at least one
regular expression from the list.
.It Fl X
Like
.Fl x ,
but treats the
.Ar pkg-name
as an extended regular expression.
.It Fl e Ar pkg-name
If the package identified by
.Ar pkg-name
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.
.It Fl 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.
.It Fl l Ar str
Prefix each information category header (see
.Fl q )
shown with
.Ar str .
This is primarily of use to front-end programs who 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.
.It Fl t Ar template
Use
.Ar template
as the input to
.Xr mktemp 3
when creating a
.Dq staging area .
By default, this is the string
.Pa /tmp/instmp.XXXXXX ,
but it may be necessary to override it in the situation where
space in your
.Pa /tmp
directory is limited.
Be sure to leave some number of `X' characters
for
.Xr mktemp 3
to fill in with a unique ID.
.Bd -ragged -offset indent -compact
Note: This should really not be necessary with
.Nm ,
since very little information is extracted from each package
and one would have to have a very small
.Pa /tmp
indeed to overflow it.
.Ed
.It Fl V
Show revision number of the packing list format.
.It Fl P
Show revision number of package tools.
.El
.Sh TECHNICAL DETAILS
Package info is either extracted from package files named on the
command line, or from already installed package information
in
.Pa /var/db/pkg/ Ns Aq Ar pkg-name .
.Sh ENVIRONMENT
.Bl -tag -width PKG_TMPDIR
.It Ev BLOCKSIZE
If the environment variable
.Ev BLOCKSIZE
is set the block counts will be displayed in units of that
size block.
.It Ev PKG_TMPDIR
Points to the directory where
.Nm
creates its temporary files.
If this variable is not set,
.Ev TMPDIR
is used.
If both are unset, the builtin defaults are used.
.It Ev PKG_DBDIR
Specifies an alternative location for the installed package database.
.El
.Sh FILES
.Bl -tag -width /var/db/pkg -compact
.It Pa /var/tmp
Used if the environment variables
.Ev PKG_TMPDIR
and
.Ev TMPDIR
are not set, or if the directories named have insufficient space.
.It Pa /tmp
The next choice if
.Pa /var/tmp
does not exist or has insufficient space.
.It Pa /usr/tmp
The last choice if
.Pa /tmp
is unsuitable.
.It Pa /var/db/pkg
Default location of the installed package database.
.El
.Sh SEE ALSO
.Xr pkg_add 1 ,
.Xr pkg_create 1 ,
.Xr pkg_delete 1 ,
.Xr pkg_version 1 ,
.Xr mktemp 3 ,
.Xr mtree 8
.Sh AUTHORS
.An Jordan Hubbard
.Sh CONTRIBUTORS
.An John Kohl Aq jtk@rational.com ,
.An Oliver Eikemeier Aq eik@FreeBSD.org
.Sh BUGS
Sure to be some.