# Best way to keep current



## artvolk (Jun 4, 2009)

Good day!

I'd like to as for advice on keep my FreeBSD box current. It runs 7.1-RELEASE-p2 (with locally rebuilded kernel) now and a bunch of software installed from ports and packages.

I'd like to upgrade the base system to 7.2 and upgrade all installed software to the latest versions in ports. The main challenge is that machine is quite old and recompiling things like apache or php will take days.

It seems I can update base system and kernel sources using freebsd-update and then recompile kernel using my config. That's ok. But what to do with software, is there any way to update them using binary packages with automatically resolving dependencies? Is there any way to upgrade ports with many options (for example, php5-extensions)?

Thanks in advance!


----------



## vivek (Jun 4, 2009)

FreeBSD supports full binary upgrade too. No need to recompile all apps / ports as you are just upgrading from 7.1 to 7.2. However, kernel and base need to be upgraded using either freebsd-update or buildworld.

What kind of gear you got there? I can compile everything under 40-60 mintues on core2dual + 2GB ram. Also, specific package / port can be upgrade as follows:

```
portmanager shells/bash -l -u -f
portmanager lang/php5-extensions -l -u -f
```
See portmanager for more info.


----------



## artvolk (Jun 4, 2009)

Thanks for the reply!



			
				vivek said:
			
		

> FreeBSD supports full binary upgrade too. No need to recompile all apps / ports as you are just upgrading from 7.1 to 7.2. However, kernel and base need to be upgraded using either freebsd-update or buildworld.


Yes, I know that upgrading from 7.1 to 7.2 do not require updating of all software, but I'd like to be as current as possible 



			
				vivek said:
			
		

> What kind of gear you got there? I can compile everything under 40-60 mintues on core2dual + 2GB ram. Also, specific package / port can be upgrade as follows:
> 
> ```
> portmanager shells/bash -l -u -f
> ...


I have Celeron 700 with 256Mb ram, not a good machine . I'd take a look over portmanager to see if it is capable to update installed software using packages. By the way, should I change PACKAGE_SOURCE variable to install latest packages?


----------



## DrJ (Jun 4, 2009)

artvolk said:
			
		

> I have Celeron 700 with 256Mb ram, not a good machine .


I feel your pain.  A while ago I used a 300MHz SPARC box as a server; updating anything large seemingly took forever.  Even now, my dual Athlons (the old sort) still about two full days to update everything from source.  That does include Gnome and O, though.


> By the way, should I change PACKAGE_SOURCE variable to install latest packages?


Yes; otherwise, you will get the packages for 7.2-R.  Those will be more current than what you have, but the -STABLE ports will be up-to-date.


----------



## vivek (Jun 4, 2009)

portupgrade command offers a binary-only upgrade option via the -PP  command argument. For e.g. Do a massive network binary upgrade:

```
portupgrade -aPPR
```
See man page for more info. Also, update pkgtools.conf to point exact location.


----------



## artvolk (Jun 4, 2009)

Thank you, I really appriciate you help!


----------



## SirDice (Jun 4, 2009)

If you have a more powerful Windows box you could install VMWare on that, run FreeBSD as a guest and build all the ports (and even the base OS) on that. For the Base OS you just need to use NFS to export /usr/src/ and /usr/obj. Mount them on your 'old' machine and run the make install(kernel|world) there. Ports are easier to handle if you build your own packages.


----------

