Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 1166 - 'emerge --world update' strangeness
Summary: 'emerge --world update' strangeness
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Daniel Robbins (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-03-15 16:03 UTC by Defresne Sylvain (keiichi)
Modified: 2011-10-30 22:21 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Defresne Sylvain (keiichi) 2002-03-15 16:03:21 UTC
Hello

  There seems to be a bug in how portage (version 1.8.8) determine which 
package to update when 'virtuals' package are involved.

FIRST PROBLEM

  When a package depends on a 'virtual' package, portage first look in 
'/etc/make.profile/virtuals' to see which regular package provide this 
'virtual' package, and don't look in database of installed package to see if 
one of them provide this functionnality.

  It should first look in the database of installed packages 
('/var/db/pkg/virtual/...'), and only if no package is found uses 
'/etc/make.profile/virtuals' as a fallback.

  With this new scheme, '/etc/make.profile/virtuals' can be used as a list of 
default 'virtual' package providers that can be overriden by installed 
packages.

  It would solve problem like portage trying to install 
'dev-java/blackdown-jdk' when a package depends on 'virtual/jdk' even though 
'dev-java/sun-jdk' is installed (see 
http://lists.gentoo.org/pipermail/gentoo-dev/2002-March/010295.html and 
followups).

SECOND PROBLEM

  The second problem comes from the first. When doing an 'emerge --world 
update', portage look in '/var/db/pkg/...' to determines which package are 
installed and possibly need updating.

  If one of this package is a virtual package, portage try to update the 
'virtual' package using the previous method instead of trying to update the 
providing package.

  For exemple, on my system 'sys-apps/console-tools' is not installed but is 
provided by 'sys-apps/kbd' and no package depend on 'sys-apps/console-tools'. 
But when doing an update, I get :

These are the packages that I would merge, in order.

Calculating system dependencies.............. <snip> .... done!
[ebuild   U] sys-apps/console-tools-0.2.3-r4 to /
[ebuild   U] x11-base/xfree-4.2.0-r8 to /

  It want to update 'sys-apps/console-tools' even though this package is not 
installed ! It should instead update 'sys-apps/kbd' ...

-- 
Keiichi
Comment 1 Daniel Robbins (RETIRED) gentoo-dev 2002-03-16 09:15:26 UTC
This is a known issue and --world updates have been removed from our _pre portage.
A fix is on the way.