Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Oct 2010 10:05:33 -0500
From:      Doug Poland <doug@polands.org>
To:        Brandon Gooch <jamesbrandongooch@gmail.com>
Cc:        Thomas Mueller <mueller6727@bellsouth.net>, "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>
Subject:   Re: Massive portupgrade without being interrupted by configuration screens?
Message-ID:  <90CBD45F-CB00-4656-A5BB-836FE6401B8A@polands.org>
In-Reply-To: <AANLkTikrHxMdJnMnXCHn7ON8FSC6BMAvjLvke6-tYPKj@mail.gmail.com>
References:  <4ca708f4.svuMWmkOCHSjxBDf%mueller6727@bellsouth.net> <AANLkTikrHxMdJnMnXCHn7ON8FSC6BMAvjLvke6-tYPKj@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Oct 2, 2010, at 9:49, Brandon Gooch <jamesbrandongooch@gmail.com> wrote:

> On Sat, Oct 2, 2010 at 5:27 AM, Thomas Mueller
> <mueller6727@bellsouth.net> wrote:
>> How can one do a massive portupgrade, as with -r or -R, without being int=
errupted by options configuration screens for many individual ports?  Idea i=
s to let it run unattended such as when I might run it starting just before b=
edtime.  Doing "make config" ahead of time also gives the chance to recover f=
rom a typo at the configuration screen (high risk).
>>=20
>> Best thing I can think of is, using multimedia/ffmpeg as an example, is d=
oing a dry run
>>=20
>> portupgrade -Rn multimedia/ffmpeg |& tee -a wouldbe.log
>>=20
>> This would show what other packages would need to be portupgraded and avo=
id reconfiguring up-to-date dependencies.  Then I would go to each of those d=
irectories in the ports tree and run "make config".
>>=20
>> Running "make config-recursive" in /usr/ports/multimedia/ffmpeg would pro=
duce configuration screens for all dependencies, including those that are up=
-to-date.
>>=20
>> I tried
>>=20
>> portupgrade -RCn multimedia/ffmpeg |& tee -a wouldbe.log
>>=20
>> but then I got all dependency configuration screens, including those that=
 were up-to-date, and also the interface didn't work right: I got garbage wh=
en trying to respond; it didn't write to the configuration screen but produc=
ed non-color garbage to the background.
>>=20
>> Running "make config-recursive" in /usr/ports/multimedia/ffmpeg would con=
figure all dependencies, including those that are up-to-date and therefore n=
ot in need of portupgrading, though "make config-recursive" seems appropriat=
e for a first build/install of a port.
>>=20
>> But I think there is no perfect way to be sure of doing all "make config"=
s in advance, since selectable options could require additional dependencies=
.
>>=20
>> If you try to portupgrade perl to 5.12 and everything that depends on it,=
 as advised in UPDATING file, date 20100715, you will likely get a lot of co=
nfiguration dialog screens: I speak from experience, would surely like a way=
 to do all these "make config"s at the beginning.
>>=20
>> Tom
>=20
> Well, I'm not using portupgrade, but instead ports-mgmt/portmaster:
>=20
> # portmaster --force-config --no-confirm [...] lang/perl5.12
>=20
> Gets all of the config menus out of the way (--force-config), and
> doesn't sit waiting for confirmation to proceed with install
> (--no-confirm). I do this only the first time I build a port, or if I
> need to change a config option and reinstall.
>=20
> Works for me!
>=20
> -Brandon

If I understand the OPs question correctly, I believe setting the environmen=
t variable BATCH=3Dyes will give desired results with portupgrade.  This wil=
l cause port compile defaults to be used in lieu of an existing /var/db/port=
s/*/options file.=20=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?90CBD45F-CB00-4656-A5BB-836FE6401B8A>