Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 69630

Summary: mail-mta/courier: courier init script needs famd running.
Product: Gentoo Linux Reporter: Magnus Boden <magnus>
Component: [OLD] ServerAssignee: Net-Mail Packages <net-mail+disabled>
Status: RESOLVED FIXED    
Severity: minor    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Magnus Boden 2004-10-31 08:41:47 UTC
Courier-imap need famd running for correct operation but the courier init script doesn't depend on famd so famd isn't started when courier is started.


Reproducible: Always
Steps to Reproduce:
1. Install courier
2. /etc/init.d/courier start
3. Check that famd hasn't been started.

Actual Results:  
famd wasn't running

Expected Results:  
famd should be running otherwise you get error messages in syslog.

Oct 31 13:56:30 bengt imapd: Failed to create cache file: maildirwatch (magnus)
Oct 31 13:56:30 bengt imapd: Error: Input/output error
Oct 31 13:56:30 bengt imapd: Check for proper operation and configuration
Oct 31 13:56:30 bengt imapd: of the File Access Monitor daemon (famd).
Comment 1 Magnus Boden 2004-10-31 08:43:01 UTC
--- courier.orig        2004-10-31 17:42:20.293010112 +0100
+++ courier     2004-10-31 17:42:27.941847312 +0100
@@ -20,6 +20,7 @@

 depend() {
        need net
+       need famd
 }

 checkconfig() {
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2004-10-31 09:40:58 UTC
I have been using courier-imap for approximately one year and famd has never touched my system, so I guess INVALID. 
Comment 3 Tuan Van (RETIRED) gentoo-dev 2004-10-31 10:04:20 UTC
there isn't /etc/init.d/courier.
$ ls /etc/init.d/courier-*
/etc/init.d/courier-imapd      /etc/init.d/courier-pop3d
/etc/init.d/courier-imapd-ssl  /etc/init.d/courier-pop3d-ssl

and they all have `use famd`.

grep famd /etc/init.d/courier-*
/etc/init.d/courier-imapd:      use famd
/etc/init.d/courier-imapd-ssl:  use famd
/etc/init.d/courier-pop3d:      use famd
/etc/init.d/courier-pop3d-ssl:  use famd
Comment 4 Magnus Boden 2004-10-31 10:24:46 UTC
I have the mail-mta/courier package installed and it installs a /etc/init.d/courier init script that isn't dependent on famd.

And my courier-imap which is also part of the courier package complains when famd isn't running so I guess VALID.
Comment 5 Tuan Van (RETIRED) gentoo-dev 2004-10-31 10:39:17 UTC
change the summary to the correct package.
Comment 6 Martin Allchin 2004-12-18 06:26:35 UTC
Confirmed Courier (using IMAP) or courier-imap requires famd; This bit me on the bum recently too.
Comment 7 Stephen Tallowitz 2005-01-16 17:33:27 UTC
I've noticed the same thing (fresh install of courier-0.47-r1). It will not let me call my mail via IMAP if the fam daemon isn't started, and the fam daemon gave me a hell of a bad time.
My solution was:
emerge unmerge fam && emerge -O courier.
If the fam daemon isn't on the system, then the build process of courier will notice and won't compile in support for fam. The ebuild of courier should honour the fam useflag however (just as the net-mail/courier-imap ebuild does).
Don't know how to prevent it compiling in fam support if the build process of courier does notice that fam is present on the system ... so no, this is not an easy one for the ebuild maintainer.
Also watch out for the "capabilities" provided in /etc/courier/imapd. Those should not include "idle" if famd is not built into courier.
Comment 8 Scott Taylor (RETIRED) gentoo-dev 2005-01-31 20:43:56 UTC
the /etc/init.d/courier script will add a "need famd" if it was built with fam
support and the imap server is to be activated. (note: the init-script
dependancies are only updated when depscan.sh is run, so rerun that script if
you change the value of IMAPDSTART in /etc/courier/imapd). The same init
script is used across all versions, so it'll get installed the next time
you install courier.

And, you want it, you got it: courier-0.48.2.20050130.ebuild will remove the
fam support if USE="-fam", I'd appreciate a response here if that does work
as expected for you, or open a new bug for it if USE="-fam" breaks things.