Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 127956 - emerge --emptytree looks at the vdb for "||" dependencies
Summary: emerge --emptytree looks at the vdb for "||" dependencies
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Dependencies (show other bugs)
Hardware: All Linux
: High normal with 1 vote (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 144480
  Show dependency tree
 
Reported: 2006-03-29 01:59 UTC by Marien Zwart (RETIRED)
Modified: 2022-10-20 02:42 UTC (History)
3 users (show)

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 Marien Zwart (RETIRED) gentoo-dev 2006-03-29 01:59:40 UTC
If you have a package called "foo" with a dependency like "|| ( bar baz )", have baz installed, and run "emerge -evpt world" or "emerge -evpt foo", emerge will merge baz to fulfill the dependency, not bar. This is rather confusing at best and probably a bug. Place the vdb entry is picked up is dep_zapdeps, but I have no idea how to fix it.
Comment 1 Marius Mauch (RETIRED) gentoo-dev 2006-03-29 03:58:27 UTC
Not a bug necessarily, more a documentation mismatch. Generally I think both behaviors are wanted, and most people prefer the current behavior I think (for rebuilding their systems).
Therefore it should probably be an emerge option (--emptytree and --emptytree-ignore-vdb or something like that).
Comment 2 Carsten Lohrke (RETIRED) gentoo-dev 2006-03-29 06:39:06 UTC
Not a bug. Of course Portage should not overrule installed dependencies. There is no preference in || unless none of the possible dependencies is installed and Portage has to chose one. And changing this would e.g. have the side effect that someone who prefers the monolithic KDE doing emerge -e would face a lot of blockers, because Portage would try to install the split ebuilds, which have to block their monolithic counterparts.
Comment 3 Zac Medico gentoo-dev 2006-08-19 17:57:38 UTC
I think --emptytree (and any variations on the concept) actually belong in the domain of package sets.
Comment 4 Marius Mauch (RETIRED) gentoo-dev 2008-03-02 15:55:08 UTC
(In reply to comment #3)
> I think --emptytree (and any variations on the concept) actually belong in the
> domain of package sets.

Depends on your intention. If you want to rebuild your system then sure, `emerge --depclean; emerge --oneshot @everything` is a useful replacement for `emerge -e world`. But including --emtpytree in general in packagesets, while possible, doesn't strike me as a good idea, as it would effectively duplicate the dep resolver.
This is simply a preference issue if vdb should be ignored completely or not (though implementation is likely more complex than adding a new option)