I emerged courier and courier-imap, when I wanted to start courier (/etc/init.d/courier start) it complained about a missing "/var/lib/courier/authdaemon/lock" because the "authdaemon" dir was created in "courier-imap" instead of "courier". Either courier-imap doesn't use its own /var/lib/ dir OR courier itself has its authdaemon dir set to courier-imap [which is more or less not logical] I haven't looked into courier in detail, but I think haveing two /etc dirs is not the best, as I see there are several double files (pop config in courier and courier-imap) which might be confusing to config. Reproducible: Always Steps to Reproduce: 1. emerge courier courier-imap 2. /etc/init.d/courier start 3. Actual Results: courier fails to start because /var/lib/courier/authdaemon/lock file can't be created (dir does not exist) Expected Results: courier started perhaps merge /etc/courier and /etc/courier-imap and /var/lib/courier and /var/lib/courier-imap Portage 2.0.48-r5 (default-x86-1.4, gcc-3.2.2, glibc-2.3.1-r4) ================================================================= System uname: 2.4.20-ck6 i586 AMD-K6(tm) 3D processor GENTOO_MIRRORS="http://gentoo.inode.at http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="/usr/local/portage" USE="x86 oss apm avi encode foomaticdb gnome libg++ mad mikmod mpeg pdflib quicktime spell xmms xv gdbm tcltk guile esd motif mozilla 3dnow acl alsa apache2 arts berkdb canna cjk crypt cups curl dga directfb fbcon freewnn gd gif gpm gtk gtk2 imap imlib innodb ipv6 java jpeg kde kerberos libwww maildir mcal mmx mysql ncurses nls odbc oggvorbis opengl pam perl png postgres python qt readline ruby samba sasl sdl slang snmp ssl svga tcpd tetex tiff truetype usb wmf X xml xml2 zlib" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=k6 -O2 -pipe" CXXFLAGS="-march=k6 -O2 -pipe" ACCEPT_KEYWORDS="x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox ccache userpriv usersandbox"
courier and courier-imap should not be installed at the same time. courier contains courier-imap already.
then, for gods sake, Block each other package. it should be possible to either block courier-imap from installing when courier is installed, or vica versa. if this is not possible, then this is either A) a very important feature for portage, or B) (more logical) imap functionallty has to be turned of in courier so courier and courier-imap are two seperate packages that complement each other.
If you read the courier webpage you will notice that courier can be installed in separate parts. There are reasons for this. Sometimes courier-imap is used with other mta's. Maildrop (part of courier) can be installed to take the place of procmail. Or you can get the whole shebang with courier. Some people might want to install courier-imap and courier at the same time (i.e. for converting from courier-imap/ some-other-mta -> courier with only one box). While I do think we should attempt to make some things difficult to do, so inexperienced sys-admins don't shoot off their own toes, this is not one of them.
if I download the source from the courier webpage and do it myself I can shoot myself int he foot. but if a linux distribution gives me two packages called courier and courier-imap, I first think (and I am sure I am not the only one), that courier is pop/smtp without imap and courier-imap is the imap adon. it is not so, good, then why don't you block each other package? shoudln't be too complicated.
i vote having courier installed should block the standalone courier-imap/maildrop/etc and vice-versa. Maybe instead of blocking via DEPEND, through a function in pkg_setup which dies if it detects a conflicting Mr. Sam package already installed and informing the user of the problem and valid choices for a solution? Just a thought. What do you think iggy?
I still think it's a bad idea to just block something like that. I've personally had to move from qmail/courier-imap -> courier back in my Slackware days, and if I had been unable to install both on the same system, I would have been SOL. I can do a conditional warning that says something along the lines of "you already have courier-imap installed, courier includes this functionality, so you should remove it unless you need it". Would that satisfy everybody? Maybe we could talk robbat2 into doing something similar.
Iggy: doing that would break non-interactive emerges. Eg user does emerge -p ... and it all shows fine, then leave emerge ... running and comes back in the morning to find the second item, courier, stopped his entire list to emerges. I'm strongly with Nick on this one. A precedent for doing this already exists with MTAs anyway. try: emerge -p qmail sendmail
Fine, done. added !virtual/imapd to RDEPEND
the problem here isn't that courier-imap and courier get installed concurrently, but courier-imap's initscript not working if ONLY the courier-imapd is installed it just erroneously looks into /usr/lib/courier which simply doesn't exist (unless you install the courier package)
moved the version that fixes this to x86