Re: pkgng/pkg upgrade
Don't mix installs from the ports tree with installs via binary packages. Bad things will happen (as you've noticed), unless you really understand how the ports tree and packages work. Either install everything via the ports tree using a nice tool like
ports-mgmt/portmaster,
or use binary packages via
pkg(1).
So, if you want to always use the ports tree, the following will (generally) always work:
Code:
# rm -rf /usr/ports/* <-- to make sure we're starting fresh, only do this the first time
# portsnap fetch extract <-- to make sure we're starting fresh, only do this the first time
Then, on a weekly, semi-weekly, monthly, whatever schedule:
Code:
# portsnap fetch update
# more /usr/ports/UPDATING <-- read everything carefully to see if any of it applies to you
# portmaster -a <-- upgrade everything, all in one batch
Simple as that. Don't change too many
OPTIONS, and do research on the
OPTIONS you do change to see how things change through the dependency change. Try to make global changes in
/etc/make.conf instead of trying to remember the
OPTIONS you've changed in each port.
Or, if you don't want to worry about compilation issues, or waiting for compiles to finish, or don't want to think too much about things, then just stick to binary packages, and ignore the ports tree completely. Then, updates become even simpler:
Code:
# pkg update
# pkg upgrade
That's it. Do that every 2-4 weeks to stay up-to-date. Done. No muss, no fuss.
Just don't mix and match the two systems unless you really understand how the ports tree works. Or, look into
ports-mgmt/poudriere for a proper method to mix the two (custom compile your own binary packages).