Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  PORTVERSION (1)


portversion - a tool to compare the versions of installed packages with the ones in the ports tree


See Also


portversion [-hFOoQqRrv] [-l limit_chars] [-L inv_limit_chars] [-x pkgname_glob] [pkgname_glob] portversion [-v] -t ver0 ver1 [ver2 ...]


portversion is used to produce a report of installed ports/packages.

Each package’s version number is checked against the corresponding entry in the ports database to see if a newer version is available for upgrade. If a package is not found in the database, portversion inspects the origin port to get the version.

portversion is very similar to pkg_version(1), but is optimized for portupgrade(1) and runs much faster than pkg_version(1) thanks to the ports database generated from the INDEX file. See portsdb(1) for details.

Each package name is printed, along with a one-character status flag:
= The installed version of the package is current.
< The installed version of the package is older than the current version.
> The installed version of the package is newer than the current version. This situation can arise with using an out-of-date INDEX file, or when testing new ports.
? The installed package does not appear in the database nor does the port directory exist. This could be because the port has been removed from the official ports tree, or because the package was installed from an unofficial (or not yet committed) port, or because the INDEX file has not been synchronized (updated) with the ports tree yet.
! The installed package does not appear in the database, the port directory actually exists, the port’s Makefile is broken and the latest version number cannot be obtained.
# The installed package does not have an origin recorded. This could be because the package was installed before the concept of 'origin' was introduced. You can run "pkgdb -F" to complete missing origins.

You can resolve most out-of-date situations by updating the ports tree and running "portsdb-U ". (See portsdb(1) for details)

Before reading these instructions, you must understand that a port/package can have the following two types of related ports/packages:
required Ports/packages that a port/package needs for it to be built and/or run. Port Makefiles refer to this type of ports/packages using the BUILD_DEPENDS and RUN_DEPENDS macros, respectively.
  Ports/packages that need this port/package.


The following command line arguments are supported:

pkgname_glob Specify one of these: a full pkgname, a pkgname without version, a shell glob pattern in which you can use wildcards '*', '?', and '[..]', an extended regular expression preceded by a colon ':', or a date range specification preceded by either '<' or '>'. See pkg_glob(1) for details and concrete examples.

If none is specified, portversion checks all the installed packages.

In any case, the results will be listed in alphabetical order, not in dependency order as with other tools.

  Show help and exit.

  Enable command output. Command output includes a command of portupgrade(1) you should run to upgrade your installed packages to the latest versions in the ports system. This feature does not constitute an automated packages upgrading system. Edit the list of packages to upgrade and the options for portupgrade(1) and run it to perform the upgrade.

--command-args ARGS
  Specify options to pass to portupgrade(1) to be used in the command output.

--ignore-moved Do not read MOVED file.

  Display a package full name.

--limit CHARS
  Only include the packages with the specified status flags.

--inv-limit CHARS
  Exclude the packages with the specified status flags.

  Omit sanity checks for dependencies. By default, portversion checks whether all packages it is to check have consistent dependencies, though it takes extra time to calculate dependencies. If you are sure you have run "pkgdb -F" in advance, you can specify this option to omit the sanity checks.

  Display package origin instead of package name.

  Do not read the configuration file. ($PREFIX/etc/pkgtools.conf)

  Do not display status chars.

  Check all packages depending on the given packages as well.

  Check all packages required by the given packages as well.

  Compare the version with the following one(s), and print the result(s).

  Turn on verbose output.

--exclude GLOB
  Exclude packages matching the specified glob pattern. Exclusion is performed after recursing dependency in response to -r and/or -R , which means, for example, the following command will check for all the packages depending on XFree86 but not for XFree86:

portupgrade -rx XFree86 XFree86


PKG_DBDIR Alternative location for the installed package database. The default is "/var/db/pkg".

PORTSDIR Alternative location for the ports tree and the ports database files. The default is "/usr/ports".

  Configuration file for the pkgtools suite. The default is "$PREFIX/etc/pkgtools.conf".


/var/db/pkg Default location of the installed package database.
/usr/ports Default location of the ports tree and the ports database files.

  Default location of the pkgtools configuration file.


pkg_glob(1), pkg_info(1), pkg_sort(1), pkg_version(1), pkgdb(1), portsdb(1), portupgrade(1), pkgtools.conf(5), ports(7)


.An Akinori MUSHA Aq
Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.