> What's the difference between them?

The main difference that is relevant to me personally is that portmanager 
makes no attempt to be too smart about avoiding compilation, and it is fully 
restartable without affecting the results.

It rebuilds ports in such a way that the result is, in theory, supposed to be 
equivalent to what you would have gotten had you installed them all from 
scratch with your current ports tree.

In particular, given a re-build (e.g. upgraded) port X, all ports depending on 
X will also be re-built regardless of whether that is required according to 
the dependency relation. This is handled in such a way that it is not 
dependent on the entire procedure completing in one session, as you are with 
portupgrade (meaning it's restartable, as mentioned above).

In practice, I find this is the most useful upgrading method. I have never 
been able to use portupgrade for more than a week or two on a real machine 
without running into issues (stale dependencies, failed builds due to weak 
dependency information, etc).

That said, it's not perfect. The implementation is buggy in some ways, and 
there are fundamental problems with that upgrading approach (e.g., files 
moving between packages can cause problems).

In the end I tend to either build binary packages from scratch and use 
portupgrade -afPP to upgrade, or do in-place upgrading with portmanager.

-- 
/ Peter Schuller

PGP userID: 0xE9758B7D or 'Peter Schuller <[EMAIL PROTECTED]>'
Key retrieval: Send an E-Mail to [EMAIL PROTECTED]
E-Mail: [EMAIL PROTECTED] Web: http://www.scode.org

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to