This was discussed some time ago I think but it would be nice to have a better error message than: milffis portage # emerge -uDNpvt k3b These are the packages that would be merged, in reverse order: Calculating dependencies \ emerge: there are no ebuilds to satisfy "media-video/nvidia-glx". (dependency required by "x11-libs/qt-3.3.6-r4" [ebuild]) milffis portage # emerge -C nvidia-glx In this case nvidia-glx used to provide virtual/opengl but it is now handled by a new style virtual.
Created attachment 101349 [details, diff] prevent old-style virtuals from making new-style virtuals invisible Thanks for reporting. It's fixed in trunk r4955 and r4957.
Created attachment 101354 [details, diff] prevent old-style virtuals from making new-style virtuals invisible This is a simplified version of the same patch. It implcitly bridges new-style virtuals to the old-style for all virtuals instead of explicitly scanning for availability of new-style virtuals.
Thank you very much for writing a patch! Unfortunately it does not work for me, maybe it was prepared for an older version of portage py. /------------------------------------------------------------------\ szitakoto pym # patch portage.py portage_patch patching file portage.py Hunk #1 succeeded at 1426 (offset -165 lines). Hunk #2 FAILED at 1667. Hunk #3 succeeded at 4450 (offset -210 lines). 1 out of 3 hunks FAILED -- saving rejects to file portage.py.rej \------------------------------------------------------------------/ I am using portage version 2.1.1-r1. Could you tell me, what to do to (how to modify the patch) to avoid the problem? I am upgrading gcc according to the gcc upgrading howto, but `emerge --ask --verbose --emptytree world', which is the final step, fails.
I'll be releasing portage-2.1.2_rc1-r5 with this patch pretty soon. It's possible to work around the problem by editing or removing the interfering PROVIDES files. Those files can be found like this: find /var/db/pkg -name PROVIDES | xargs grep virtual/opengl
This has been released in 2.1.2_rc1-r5.
(In reply to comment #5) > This has been released in 2.1.2_rc1-r5. Thank you, Zac! After 1. `emerge --sync', 2. editing /etc/portage/packages.keywords to portage ~x86, and 3. `emerge portage' now it succeeded: `emerge --emptytree world', the last step of gcc 3.3.6 to 4.1.1 upgrade is running!
(In reply to comment #4) > I'll be releasing portage-2.1.2_rc1-r5 with this patch pretty soon. > > It's possible to work around the problem by editing or removing the interfering > PROVIDES files. Those files can be found like this: > > find /var/db/pkg -name PROVIDES | xargs grep virtual/opengl > Yeah, we have been doing that in java-check-environment for quite a while.