Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 154223 - Old style virtuals cause confusing error messages if the old PROVIDE file is left
Summary: Old style virtuals cause confusing error messages if the old PROVIDE file is ...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Dependencies (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 147007
  Show dependency tree
 
Reported: 2006-11-06 02:43 UTC by Petteri Räty (RETIRED)
Modified: 2006-11-09 07:43 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
prevent old-style virtuals from making new-style virtuals invisible (new_virtuals.patch,3.14 KB, patch)
2006-11-06 11:27 UTC, Zac Medico
Details | Diff
prevent old-style virtuals from making new-style virtuals invisible (new_virtuals.patch,1.25 KB, patch)
2006-11-06 13:01 UTC, Zac Medico
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Petteri Räty (RETIRED) gentoo-dev 2006-11-06 02:43:43 UTC
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.
Comment 1 Zac Medico gentoo-dev 2006-11-06 11:27:01 UTC
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.
Comment 2 Zac Medico gentoo-dev 2006-11-06 13:01:14 UTC
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.
Comment 3 BORGULYA Gábor 2006-11-07 10:44:05 UTC
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.
Comment 4 Zac Medico gentoo-dev 2006-11-07 14:19:00 UTC
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
Comment 5 Zac Medico gentoo-dev 2006-11-07 15:32:48 UTC
This has been released in 2.1.2_rc1-r5.
Comment 6 BORGULYA Gábor 2006-11-09 02:19:32 UTC
(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!
Comment 7 Petteri Räty (RETIRED) gentoo-dev 2006-11-09 07:43:30 UTC
(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.