portmanager endlessly looping in x11
chuckr at telenix.org
Wed Sep 8 21:41:29 UTC 2010
On 08/26/10 01:17, jhell wrote:
> On 08/25/2010 21:27, Chuck Robey wrote:
>> I have an interesting thing here: I seem to have found an endless loop in
>> portmanager. It's *entirely* possible that I'm myself causing this, so I'll
>> explain, and if you can come up with any hints, I'll be happy to test them,
>> because I really do like using portmanager.
> CC:<The maintainer> of ports-mgmt/portmanager is a good start. Maybe
> He/She can give you some insight of the working of portmanager. I am not
> sure how portmanager keeps the package database up to date but sometimes
> dependencies can get messed up in the database that can cause a loop and
> if not handled correctly by the upgrade process can cause a lot of
> grief. In portmaster you could be using --check-depends and in
> portupgrade you could use -Ffu but you don't seem to be using any of the
> suggested ports-mgmt upgrade utilities so good luck. ``emphasis on
> portmaster'' -- written by dougb@, so you know it works!.
The problem I saw, I'm pretty sure is caused by a discrepancy (in portmanager)
between how deeply it looks for dependencies versus how deeply it looks it looks
to decide to actually rebuild those discovered dependencies. Merely noting the
need to rebuild seems not to be the same thing as actually doing it. It found
things maybe 3 levels deep, but if it's less than 2 levels down, it won't
rebuild it, it'll merely realize that it *should* do it. I switched to using
portmaster (this looks alike, I'm making no mistake tho, moved from portmanager
to portmaster) which doesn't seem to have this uneveness, so while it takes a
whole lot longer to work than portmanager (it uses slow but sure shell utils for
it's databases) it really does a far more reliable job of things. You could get
to rely on it.
It sure took me a good while to track down the reasons that portmanager was
fixing on, in deciding that something was out of date, and the frustration was
sufficient to cause me to forgive the way that portmaster is much more slow.
One really big irritation was how portmanager would rebuild something completely
successfully 3 times, but since it would fail its dependency scans, it never
would recognize that any of those looping apps had been rebuilt. Very puzzling,
until I realized about the dependency problems.
More information about the freebsd-ports