upgrading all ports

RW list-freebsd-2004 at morbius.sent.com
Mon Jun 27 12:18:21 GMT 2005


On Saturday 25 June 2005 12:22, Dick Hoogendijk wrote:
> I want to do a portupgrade on all installed ports.
>
> What's the right way?
> 	"portupgrade -arR ?"
> 	or
> 	"portupgrade -a" ?

AFAIK there is no difference between the two; "-a" means upgrade all ports in 
the package database, "-Rr" means add in the dependencies and dependent ports 
based on what's in the database, but these are already covered by -a. New 
dependencies are built as a side-effect of building out-of-date ports - not 
through the -R option.   

There *is* a difference between -FRa and -Fa because -FR is translated into a 
"make checksum-recursive". Anyone who believes that portupgrade is slower 
than removing all port and reinstalling has probably been misled by watching 
portupgrade -FRa which runs "make checksum-recursive" for each installed port 
and so visits some ports many time.

Portmanager is a good way to bring your ports up-to-date, but it also rebuilds 
all ports that depend on out-of date ports. It's a very slow process if you 
have a slow machine and most of your ports were up-to-date already, but try 
it for yourself.

Portupgrade does a pretty good job if you follow UPDATING, and use the gnome 
script for major Gnome upgrades.

If you want to force the rebuilding of all your ports then see pkg_glob(1) and 
portupgrade (1) for instructions on how to rebuild ports built after a given 
timestamp, as this gives you a restartable method.


More information about the freebsd-questions mailing list