# Which is the faster update for Ports: deltas or fresh install?



## johnblue (Dec 14, 2009)

On a brand new install, one of the questions asks if you want to the install the ports collection.

I was wondering, over all, which is the faster process:

a. installing ports from install media and getting deltas; or
b. not installing ports and then running 'portsnap fetch extract' after install is completed

Personally, I've always done 'b', because it lets me comment the refuse file before downloading.


----------



## wonslung (Dec 14, 2009)

johnblue said:
			
		

> On a brand new install, one of the questions asks if you want to the install the ports collection.
> 
> I was wondering, over all, which is the faster process:
> 
> ...



portsnap seems to be really fast...i always used to use cvsup to update ports until i discovered portsnaps.  I'd guess portsnap would be the fastest way.

I might be wrong though


----------



## DutchDaemon (Dec 14, 2009)

That's right. If a reasonable amount of time (probably weeks, most certainly months) has passed between the 'original' installation of the ports tree and 'now', just run [cmd=]portsnap fetch extract[/cmd]. 

Waiting for thousands of patches to come in and get integrated into the existing ports tree can be frustrating. And for some reason it tends to fail several times before it finally completes. Get the tarball if you don't mind the 50 MB download.


----------



## jotawski (Dec 15, 2009)

as of my first experience  ,by DutchDaemon suggestion, portsnap is very quick.


----------



## hermit (Dec 19, 2009)

How to upgrade all ports installed under /usr/ports...

```
portsnap fetch update
pkgdb -F
portsdb -Uu
portupgrade -a
```

portupgrade can be done for specific package:

```
portupgrade package-name
```

To see list of all outdate ports

```
portversion -l '<'
```


----------



## mickey (Dec 19, 2009)

hermit said:
			
		

> To see list of all outdate ports
> 
> ```
> portversion -l '<'
> ```



If you add the _-v_ flag, the output will be more 'human readable', like:

```
portversion -vl '<'
```


----------

