Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Jun 2013 17:34:45 -0700 (PDT)
From:      "Chris H" <bsd-lists@1command.com>
To:        matthias.andree@gmx.de
Cc:        freebsd-stable@freebsd.org
Subject:   re: portupgrade(1) | portmaster(8) -- which is more effective for  large upgrade?
Message-ID:  <67588ada736599c95cac241b3c3af730.authenticated@ultimatedns.net>

next in thread | raw e-mail | index | archive | help
> Am 26.06.2013 18:42, schrieb Chris H:
>> Greetings,
>>  I haven't upgraded my tree(s) for awhile. My last attempt to rebuild after an updating
>> src && ports, resulted in nearly installing the entire ports tree, which is why I've
>> waited so long. Try as I might, I've had great difficulty finding something that will
>> _only_ upgrade what I already have installed, _and_ respect the "options" used during the
>> original make && make install, or those options expressed in make.conf.
>> As portupgrade(1) && portmaster(8) appear to be the most used in this scenario,
>> I'm soliciting opinions on which of these works best, or if there is something else to
>> better manage this situation. Is there such a thing as a FreeBSD upgrade "easy button"?
>>
>> Thank you for all your consideration.

> Chris,
>
> this time around, you will again rebuild almost your entire ports tree
> because some basic ports, such as Perl.
>
> Also, you will rarely be able to only upgrade what you already have
> installed because sometimes ports grow new requisite other ports you do
> not already have.
>
> I haven't used portupgrade in a long time because there was a period
> where it had fallen to bit-rot, but both tools are being maintained now.
>
> portupgrade has the decided advantage of being able to continue building
> some ports if another port failed as long as the failed port is not
> itself a requisite port for one that is yet to be built; portmaster
> bails out at the first error.
>
> portmaster, on the other hand, has a "rebuild everything" approach in
> the manual page, and can be used to list only leaf ports -- but that
> approach will require you to deinstall all ports so that the machine
> becomes unusable while it builds.
>
> There are other approaches, like using portmaster just to list this
> ports tree, and then use Tinderbox or poudriere to build packages in a
> chroot, and then only deinstall and install if you have all packages
> built successfully - but I am not familiar with automating this, not
> familiar with poudriere, and it requires a bit of work to get your
> options transferred to these build systems.  Such a "build all packages
> first before you start deinstalling" would reduce the downtime, though.
>
> Hope that helps a little.
>
> Best regards
> Matthias Andree

Greetings, and thank you for your reply.
I understand that portupgrade _will_ pull in other dependencies _as needed_ -- I _do_ read
the man(1) pages. :)
But it installed (pulled in) far more than those dependencies actually required.
I believe, due to the fact that it doesn't appear to honor the original build
options recorded in /var/db/ports/<portname>/options. Nor, do I recall that it
honored /etc/make.conf -- make.conf(5). Maybe things have changed? I don't see it.
Oh, and should it not have been clear; I _do_ anticipate the "upgrade" to re-build
most everything, as that is why I'm trying to find a "mass upgrader" port, to do the
"dirty work". Also should it not have been clear in the beginning; I am _not_ doing
anything more than upgrading everything _within_ my current version; eg; no major point
upgrade, or anything.

Thank you again, for taking the time to respond.

--chris




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?67588ada736599c95cac241b3c3af730.authenticated>