Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 8810 - `emerge -p` and virtual/ results in weird output
Summary: `emerge -p` and virtual/ results in weird output
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Portage team
Keywords: InVCS
: 21386 22661 30940 (view as bug list)
Depends on: 5121
Blocks: 9050 29499 30196
  Show dependency tree
Reported: 2002-10-06 10:38 UTC by Maurizio Disimino
Modified: 2004-07-15 14:07 UTC (History)
6 users (show)

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

Patch to fix the "|| ( )" issue (2.0.50-r6-empty-fakedb.patch,1.02 KB, patch)
2004-06-11 18:46 UTC, Jason Stubbs (RETIRED)
Details | Diff
Fix for || and virtuals for 2.0.51_pre10 (2.0.51_pre10-empty-fakedb.patch,1.43 KB, patch)
2004-06-11 19:16 UTC, Jason Stubbs (RETIRED)
Details | Diff
Fixes bug and slightly clearer logic (2.0.51_pre10) (2.0.51_pre10-empty-fakedb.patch,1.64 KB, patch)
2004-06-12 02:21 UTC, Jason Stubbs (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Maurizio Disimino 2002-10-06 10:38:11 UTC
well, I used postfix for a bit. I unmerged it to test vpopmail/qmail and
other stuff.
So, `emerge -C postfix` and then `emerge -p vpopmail`

The output:
Calculating dependencies ...done!
[ebuild  N   ] sys-apps/ucspi-tcp-0.88-r3
[ebuild  N   ] sys-apps/daemontools-0.76-r1
[ebuild  N   ] net-mail/dot-forward-0.71
[ebuild  N   ] net-mail/checkpassword-0.90
[ebuild  N   ] net-mail/qmail-1.03-r8
[ebuild  N   ] dev-libs/cyrus-sasl-2.1.7-r1
[ebuild  N   ] net-mail/postfix-
[ebuild  N   ] sys-apps/dcron-2.7-r9
[ebuild  N   ] net-mail/vpopmail-5.2.1-r3

Well, dcron has virtual/mta as a dependency so, I'd expect to see
net-mail/ssmtp according to/usr/portage/profiles/default-x86-1.4/virtuals.

Is that a know/normal behavior, am I missing something ?

And :

sexybit vpopmail # emerge inject net-mail/qmail-1.03-r8
>>> Injected net-mail/qmail-1.03-r8.
sexybit vpopmail # emerge -p dcron

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

Calculating dependencies ...done!
[ebuild  N   ] dev-libs/cyrus-sasl-2.1.7-r1
[ebuild  N   ] net-mail/postfix-
[ebuild  N   ] sys-apps/dcron-2.7-r9

Still a know behavior ? I.e. did Portage understand I did a fake 
qmail installation ?

Comment 1 SpanKY gentoo-dev 2002-10-06 16:06:54 UTC
the injected part is correct ... the first part about virtual/mta is a little 
shady ...
Comment 2 Martin Holzer (RETIRED) gentoo-dev 2003-05-21 13:45:56 UTC
*** Bug 21386 has been marked as a duplicate of this bug. ***
Comment 3 Marius Mauch (RETIRED) gentoo-dev 2003-09-19 20:35:57 UTC
is this still a problem ? There were some fixes regarding virtuals in 2.0.49.
Comment 4 SpanKY gentoo-dev 2003-10-11 18:42:23 UTC
*** Bug 30940 has been marked as a duplicate of this bug. ***
Comment 5 Marius Mauch (RETIRED) gentoo-dev 2003-11-24 22:59:20 UTC
no feedback :/
Comment 6 SpanKY gentoo-dev 2003-11-25 07:07:50 UTC
theres no feedback because it's easy to test yourself

unmerge all your mta's, remove all mta entries from your virtual file, and then do a pretend emerge and look at the output
Comment 7 Martin Holzer (RETIRED) gentoo-dev 2003-12-22 12:38:17 UTC
*** Bug 22661 has been marked as a duplicate of this bug. ***
Comment 8 Nicholas Jones (RETIRED) gentoo-dev 2004-03-20 14:10:26 UTC
This should be fixed in 2.0.50-r2
Comment 9 Jason Stubbs (RETIRED) gentoo-dev 2004-06-11 18:46:20 UTC
Created attachment 33110 [details, diff]
Patch to fix the "|| ( )" issue

Still happens with regard virtual/x11. Attempting to emerge xorg-x11 on a fresh
system will attempt to bring in xfree as well.

This is not possible to fix in .50 as there is no access to an ebuild's

However, there is another issue here as well, which involves "|| (
x11-base/xfree x11-base/xorg-x11 )" type dependencies. xfree may be brought in
on an --update or --emptytree.

This patch fixes that for .50.
Comment 10 Jason Stubbs (RETIRED) gentoo-dev 2004-06-11 19:16:24 UTC
Created attachment 33111 [details, diff]
Fix for || and virtuals for 2.0.51_pre10

Fixes the virtuals issue and the "|| ( )" issue for .51_pre10 but I think it
may prevent !virtual/foo blockers from working (which don't seem to be working
in _pre10 anyway). Will look at this further.
Comment 11 Jason Stubbs (RETIRED) gentoo-dev 2004-06-11 19:30:08 UTC
The patch doesn't affect detecting of blockers and 2.0.51_pre10 is working fine. I was testing against MTAs which no longer block each other.

Nick, can you take a look at the patch and bring up any issues. It'll override user virtuals but only for that session and only if a package explicitly depends on another package that provides the same virtual. Is that an issue?
Comment 12 Jason Stubbs (RETIRED) gentoo-dev 2004-06-11 19:33:06 UTC
Adding Donnie as he needs this fixed before he can unmask xorg-x11.
Comment 13 Jason Stubbs (RETIRED) gentoo-dev 2004-06-12 02:21:18 UTC
Created attachment 33129 [details, diff]
Fixes bug and slightly clearer logic (2.0.51_pre10)

Fixed a bug that caused it to die on the jdk/jre ebuilds that have a versioned

Quick Description: The patch builds up a fakedb of what is already installed
and adds to it as dependendencies are added. Virtuals are also adjusted
accordingly as dependencies are added.
Comment 14 Jason Stubbs (RETIRED) gentoo-dev 2004-06-21 02:54:06 UTC
In CVS. Will be included by 2.0.51.
Comment 15 Donnie Berkholz (RETIRED) gentoo-dev 2004-07-15 14:07:53 UTC
Thanks much, Jason. This will finally allow me to unmask the latest (and hopefully last) xfree to get a consistent setup between xfree and xorg-x11, once this portage hits stable.