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>