Nikos Chantziaras <rea...@arcor.de> posted h0f7dm$9c...@ger.gmane.org, excerpted below, on Sun, 07 Jun 2009 05:07:52 +0300:
> John P. Burkett wrote: >> Today on an amd64 machine I did >> emerge -D -uav world >> and got a response including the following lines: [...] I would be >> grateful for suggestions about how to resolve this blockage. > > The rule of thumb: "by unmerging all packages that have the blockers and > running 'emerge -Duav world' again." Yes. In particular, in this instance, the old KDE 3.5.9 stuff is depending on kde-base/kdelibs-3.5.9(-rWhatever), and KDE's now trying to upgrade to 3.5.10(-rWhatever), but finding blockers because kdelibs is one of the first upgrades, so you'd have the system in an inconsistent (according to dependencies) state temporarily, after kdelibs has been upgraded to 3.5.10 but before the other parts of KDE (kdebase, kdemultimedia, kdepim, etc) have likewise been upgraded to 3.5.10. Note that newer versions of portage have /automatic/ blocker resolution in many temporary cases, so depending on how old your portage is (of course I'm on ~amd64 and have had 3.5.10 for months now, and don't know if the feature is in stable portage yet), if at the --ask prompt, you tell it to go ahead, it may well take care of everything for you without you having to do anything else. =:^) But, regardless of whether you have to fix it manually or not, note that there may be a point during the merge where parts of KDE won't run correctly, because you still have 3.5.9 components built against kdelibs 3.5.9, trying to run against the new kdelibs 3.5.10. It's unlikely (but possible) KDE will crash if you are running it at the time, but until everything gets brought back into consistency, you may have trouble starting any new KDE apps. If nothing else, plan to restart KDE (or reboot entirely, tho that shouldn't be needed some people not particularly comfortable at the shell prompt find it easier) when the upgrade is done, so you get the benefit of all the new 3.5.10 goodness. =:^) IOW, postpone the upgrade if you are planning a vital presentation or something right away, that you just HAVE to have a working KDE for, and anytime when processing blockers, be prepared in case the system does get temporarily inconsistent enough that part of it crashes. The problem is of course somewhat worse with KDE than with a lot of things, because KDE's so big and emerging it takes quite some time on slower systems, thereby leaving a larger gap time during which the system isn't entirely self-consistent. BTW, if you don't do it regularly already, when you're done with a big upgrade like this is a great time to run revdep-rebuild, to catch any library inconsistencies, etc, then emerge --depclean, to clean out any dependencies the old stuff needed that the new stuff doesn't, then revdep- rebuild again, just to be sure cleaning out the dependencies didn't leave anything hanging. Of course, as usual, use --pretend or --ask first, as appropriate, just to be sure it's not going to be doing anything unexpected. With --depclean that's particularly important as it'll want to remove anything not in your @world or @system sets or dependencies of them. FWIW, I always use -NuD (newuse upgrade deep) when I update, and I always revdep-rebuild and depclean after I'm done, just to be sure the system always stays as consistent and clean of cruft as possible, and because that helps keep the size of the job small enough to deal with since I always deal with it right away, before I get a huge backlog. That's also why I like updating 2-3 times a week. Even waiting a full week, the number of packages to update, particularly when there's a KDE update thrown in, can become big enough it's difficult to cope with. If I update every couple days, then when the big KDE or xorg update comes down the line, it's almost all there is to worry about, where if I waited even a week, there's many more other packages to worry about too. Not to mention if I waited a month, three months, or more, like some people do. That'd be a nightmare for me! -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman