# Cleaning up the system



## anigma (May 28, 2015)

Howdy. I'm trying to clean up this outdated FreeBSD 10 system. According to `pkg version -v` pretty much every package needs an upgrade. I was thinking about upgrading packages one by one to stay up-to-date with the newest packages available. My goal is to, as an example, first upgrade the AMP stack without breaking Postfix and Dovecot for instance. I guess my first question is, is it even possible to upgrade separate packages and their dependencies? Also, how does pkg(8) handle upgrades for packages installed via ports that have certain options configured?


----------



## junovitch@ (May 29, 2015)

Updating packages individually isn't supported yet.  Sometimes it works but if everything is outdated then it will likely cause more issues to untangle by attempting it.  I think the safest thing would be to get as much of a clean slate as possible by re-installing everything at once.

Something along the lines of this:
Review /usr/ports/UPDATING for pertinent changes.
Get a list of everything explicitly installed with `pkg query -e '%a = 0' %o > ~/my_packages.txt`.
Get some downtime for the upgrades and testing.
Then delete them all and re-install with `pkg delete -a` followed by `for package in `cat ~/my_packages.txt`; do pkg install $package; done` (Bourne shell syntax).

EDIT: To answer for questions installed from ports, they will be installed from the repository with the default options.  If you need customized options you can use poudriere(8) to build them in advance or install them from the repository and fix them afterwards.


----------

