I like to keep my ports up-to-date and to that end I have
portversion generate a nice list of outdated packages on my
systems, the idea being that when I am satisfied, I do a portupgrade
and upgrade them all en masse.

This is not without problems occasionally though.  In the past I've
been bitten by postfix upgrades where the various new postfix
binaries on disk are incompatible with the old running copies and
mail is corrupted.

I also have to remember every time that upgrading the mysql40-server
port will actually stop mysqld at the end, without starting it
again.  Kind of annoying when I have apps connected to the database
long term that will cry loudly when it goes away.

At first, I was thinking the answer would be to use the parts of
pkgtools.conf for executing various commands pre- and
post-installation to make sure things are done properly.

But then it came to me that this won't always work for something
like postfix: multiple programs being called by daemons and having a
short life, at some point an old daemon is going to call a new peer
program and their protocols won't agree, boom, corrupted mail again.

Maybe the solution is to just always be careful about what is going
to be upgraded and do the tricky ones manually at the best time.

On the other hand, is there maybe a simple way to tell portupgrade
*never* to upgrade specific ports unless they are forced or
specified singly?

What I mean is, say I did "portversion -vL =" and it shows me that I
have 20 packages that could be upgraded, one of them being
mail/postfix.  I'm itching to do this:

sudo portupgrade -aRv

which would upgrade the lot, but I can't because I know that
upgrading databases/mysql40-server will shut down my perfectly
running mysqld.  So my choices become:

- come up with a portupgrade command that excludes mysql

- put off all upgrades until I have had chance to do mysql by itself

I would like to be able to tell portupgrade *never* to upgrade ports
like databases/mysql40-server and mail/postfix when I do
"portupgrade -aRv" and instead wait for me to specifically do:

sudo portupgrade -f databases/mysql40-server

Is this possible?

What do other people do about this?

Yes I realise that being over-zealous with upgrades can be
time-consuming, pointless, and detrimental to reliability.  This is
for personal play stuff, honest. :)

http://freebsdwiki.org/ - Encrypted mail welcome - keyid 0xBF15490B

"SCSI is usually fixed by remembering that it needs three terminations: One at
 each end of the chain. And the goat."
 -- Andrew McDonald, HantsLUG

Attachment: pgpEjGA3bKbB9.pgp
Description: PGP signature

Reply via email to