Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PORTVERSION(1)		FreeBSD	General	Commands Manual		PORTVERSION(1)

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

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

DESCRIPTION
     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 ori-
     gin 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 de-
     tails.

     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 IN-
	     DEX 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/pack-
     age 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/pack-
		ages using the BUILD_DEPENDS and RUN_DEPENDS macros, respec-
		tively.
     dependent	Ports/packages that need this port/package.

OPTIONS
     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 exam-
			  ples.

			  If none is specified,	portversion checks all the in-
			  stalled packages.

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

     -h
     --help		  Show help and	exit.

     -c
     --command-output	  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.

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

     --ignore-moved	  Do not read MOVED file.

     -F
     --fullname		  Display a package full name.

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

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

     -O
     --omit-check	  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.

     -o
     --origin		  Display package origin instead of package name.

     -q
     --noconfig		  Do not read the configuration	file. ($PRE-
			  FIX/etc/pkgtools.conf)

     -Q
     --quiet		  Do not display status	chars.

     -r
     --recursive	  Check	all packages depending on the given packages
			  as well.

     -R
     --upward-recursive	  Check	all packages required by the given packages as
			  well.

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

     -v
     --verbose		  Turn on verbose output.

     -x	GLOB
     --exclude GLOB	  Exclude packages matching the	specified glob pat-
			  tern.	 Exclusion is performed	after recursing	depen-
			  dency	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

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

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

FILES
     /var/db/pkg		Default	location of the	installed package
				database.

     /usr/ports			Default	location of the	ports tree and the
				ports database files.

     $PREFIX/etc/pkgtools.conf	Default	location of the	pkgtools configuration
				file.

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

AUTHORS
     Akinori MUSHA <knu@iDaemons.org>

FreeBSD				 July 9, 2008			       FreeBSD

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | ENVIRONMENT | FILES | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=portversion&sektion=1&manpath=FreeBSD+13.2-RELEASE+and+Ports>

home | help