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-1.1.11.20020917 [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-1.1.11.20020917 [ebuild N ] sys-apps/dcron-2.7-r9 Still a know behavior ? I.e. did Portage understand I did a fake qmail installation ? Maurizio
the injected part is correct ... the first part about virtual/mta is a little shady ...
*** Bug 21386 has been marked as a duplicate of this bug. ***
is this still a problem ? There were some fixes regarding virtuals in 2.0.49.
*** Bug 30940 has been marked as a duplicate of this bug. ***
no feedback :/
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
*** Bug 22661 has been marked as a duplicate of this bug. ***
This should be fixed in 2.0.50-r2
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 PROVIDE. 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.
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.
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?
Adding Donnie as he needs this fixed before he can unmask xorg-x11.
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 PROVIDE. 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.
In CVS. Will be included by 2.0.51.
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.