Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jul 2009 01:07:18 +0000
From:      "b. f." <bf1783@googlemail.com>
To:        freebsd-questions@FreeBSD.org
Subject:   Re: Portupgrade not handling dependencies
Message-ID:  <d873d5be0907071807i6baee27cu2bc7bcc91db8b0af@mail.gmail.com>
In-Reply-To: <d873d5be0907071805k2a1be57aq9c763bbca48431a3@mail.gmail.com>
References:  <d873d5be0907071731u270588adj4e89b36eacafa41@mail.gmail.com> <4A53EA20.5090500@shadowlair.com> <d873d5be0907071805k2a1be57aq9c763bbca48431a3@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 7/8/09, Eric Sheesley <esheesle@shadowlair.com> wrote:
> Well, it has been happening with just about every port(no specific ones)
> that have a dependency which is also being built.  An example from today:
>
> ===>   Registering installation for libtheora-1.0_1
> ===>  Cleaning for libtheora-1.0_1
> --->  Cleaning out obsolete shared libraries
> [Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 456 packages
> found (-0 +1) . done]
> --->  Skipping 'multimedia/ffmpeg' (ffmpeg-2008.07.27_10) because a
> requisite package 'libtheora-1.0' () failed (specify -k to force)
> ** Listing the failed packages (-:ignored / *:skipped / !:failed)
>         -  (bsdpan-Acme-Damn-0.04)
>         * multimedia/ffmpeg (ffmpeg-2008.07.27_10)
> %portupgrade -a
> --->  Skipping 'bsdpan-Acme-Damn-0.04' because it is held by user
> (specify -f to force)
> --->  Upgrading 'ffmpeg-2008.07.27_10' to 'ffmpeg-2008.07.27_11'
> (multimedia/ffmpeg)
> --->  Building '/usr/ports/multimedia/ffmpeg'
>

I see.  In the default /usr/local/etc/pkgtools.conf, there is a sample
line (not commented out) that places any port that matches the glob
bsdpan-* in HOLD_PKGS, meaning that portupgrade will refuse to handle
it.  Presumably this is so users can manage their own local tree of
Perl ports that aren't in the regular ports tree.  I don't do this, so
I'm not familiar with how the two interact.  But portupgrade seems to
have done the right thing here: in the snippet you gave us, it ignored
bsdpan-Acme-Damn and proceeded to begin building ffmpeg after updating
libtheora -- the only problem seems to be that in the intermediate
summary it lists ffmpeg, erroneously, as having been skipped -- but
that seems to just be a cosmetic problem, because it then proceeds to
start updating it.  If later on it refuses to update it, then you've
got a problem.  In that case, you should try running

pkgdb -L
pkgdb -F

to make sure that your pkgdb is in good shape, and then try your
updates again.  You might also try instead something like:

portupgrade -ax bsdpan-*

If that doesn't work, then you may either have to rip out your
bsdpan-* ports, or just use a another tool for updating -- portmaster,
for example.  Or you can roll your own.


b.



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