net-mail/vpopmail requires mail-mta/qmail & a crondaemon, defaulting to vixie-cron. vixie-cron needs a MTA, which defaults to mail-mta/ssmtp.
ssmtp blocks qmail, resulting in this failure of emerge vpopmail:
These are the packages that I would merge, in order:
Calculating dependencies ...done!
[blocks B ] mail-mta/ssmtp (is blocking mail-mta/qmail-1.03-r16)
[ebuild N ] sys-process/vixie-cron-4.1-r8 -debug -pam (-selinux) 57 kB
[ebuild N ] sys-apps/ucspi-tcp-0.88-r10 -doc -ipv6 (-selinux) +ssl 56 kB
[ebuild N ] net-mail/dot-forward-0.71-r2 25 kB
[ebuild N ] net-mail/queue-fix-1.4-r2 21 kB
[ebuild N ] net-mail/cmd5checkpw-0.30 25 kB
[ebuild N ] net-mail/checkpassword-0.90-r2 -static 15 kB
[ebuild N ] mail-mta/qmail-1.03-r16 -gencertdaily -logmail -mailwrapper -noauthcram -notlsbeforeauth (-selinux) +ssl 459 kB
[ebuild N ] net-mail/vpopmail-5.4.6-r1 -clearpasswd -ipalias +mysql 415 kB
I'm unsure if this is a missing feature in the vpopmail ebuild or in portage, but it would be nice if portage would be smart enough to realize that while it's trying to fullfil the virtual/mta requirement of vixie-cron, an ebuild that fullfills virtual/mta (qmail) is already scheduled for emerging. Right now it just thinks: "hey there is no virtual/mta yet, I'll take my default one, and emerge that". the default one is ssmtp, which in turn is blocking qmail.
I hope I've explained this well enough, I've repro'd it on two x86 machines.
System uname: 2.6.14-gentoo-r5 i686 Unknown CPU Typ
Gentoo Base System version 1.4.16
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [disabled]
sys-devel/autoconf: 2.13, 2.59-r6
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
FEATURES="autoconfig distlocks nostrip sandbox sfperms strict"
USE="x86 3dnow 3dnowex X alsa apache2 apm audiofile avi berkdb bitmap-fonts bzip2 crypt cups curl divx4linux dvd eds emboss encode expat ffmpeg flac foomaticdb fortran gd gdbm gif gpm gstreamer gtk2 imagemagick imlib jpeg lcms libg++ libwww lirc mad mhash mikmod mmx mmx2 mng motif mp3 mpeg mysql mythtv ncurses nls ogg oggvorbis opengl oss pam pdflib perl php png qt quicktime readline sdl spell sse ssl svga tcpd theora tiff truetype truetype-fonts type1-fonts udev usb v4l v4l2 vorbis xine xml2 xmms xv xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
You need USE="mailwrapper" set to have multiple MTAs installed. Not a portage issue.
Not a bug either.
Thanks for looking into this. I'm not sure if I've explained the problem correctly. I do not want two MTA's. I want vpopmail, and don't care what portage does in order to give it to me. The problem is portage is trying to emerge vpopmail by emerging both qmail and ssmtp. in my newbie opinion, it should pick 1, and since vpopmail really requires qmail, it should pick qmail, and not try to emerge ssmtp to make vixie-cron happy, as qmail will already make vixie-cron happy.
That "is blocking" message in the emerge output is not from an installed ssmtp! ssmtp is not installed on this machine (see emerge --info) , that ssmtp message comes from vixie-cron trying to install it.
not sure if I should reopen this bug or not, and how the etiquettes are related to this. Staying on the safe side, I'm not re-opening this bug untill a dev confirms my view is a bug / missing feature.
thinking again, I think re-opening is the correct action here, apologies if this is considered rude. Please see comment #4.
(In reply to comment #4)
> That "is blocking" message in the emerge output is not from an installed ssmtp!
> ssmtp is not installed on this machine (see emerge --info) , that ssmtp message
> comes from vixie-cron trying to install it.
ssmtp is the default virtual/mta. We need a simple MTA, most people won't really be happy with qmail for this purpose. You can safely install qmail first, then vixie-cron won't require ssmtp any more. As for changing the default virtual, this is a no-go really.
> The problem is portage is trying to
> emerge vpopmail by emerging both qmail and ssmtp. in my newbie opinion, it
> should pick 1, and since vpopmail really requires qmail, it should pick qmail,
> and not try to emerge ssmtp to make vixie-cron happy, as qmail will already
> make vixie-cron happy.
Dupe of Bug 1343.
*** This bug has been marked as a duplicate of 1343 ***