Last night I burned a heap of time setting up Debian's packaged version of
Exim 4. I wanted to also use Mailman and Request Tracker, and this was where
I ended up spending a heap of the time. This was mainly due to me trying to
bolt up the learning curve, and running out of steam.
I was also a bit confused by the way the configuration files worked. I
figured that because I answered "no" to the "Split configuration into small
files?" question, the myriad of files in /etc/exim4/conf.d were the
alternative to splitting up into even more.
So after I dicked around with this myriad of config files, with no visible
change in behaviour, I realised that /etc/exim4/exim4.conf.template was my
actual config file (I was mentally filtering out anything without ".conf" on
the end of the filename). I decided that the "split-out" config option
wasn't actually all that bad, so I turned around and used it instead.
Next, I was more used to Debian's Sendmail package's makefile driven
configuration regeneration approach, so I wasn't sure if I had to do
anything special after altering config files. Turns out from inspecting the
init script, it regenerates everything on a reload, so that wasn't a big
deal. The script named "update-exim4.conf" (which to me sounds like a config
file in itself) will do it on demand.
So, at this stage, I had a basic Exim configuration happening. Next, I
wanted Mailman, so I chucked that on. Again, drawing on my Sendmail
experience, I foolishly thought it would be pretty much the same. Turns out,
that Mailman can, with a bit of encouragement, integrate right in with Exim
to the point where you don't need to explicitly add the half a dozen aliases
that you'd normally have to add with Sendmail after you've created a new
mailing list. This I liked. Fortunately, the
/usr/share/doc/mailman/README.EXIM.gz file has a fairly comprehensive set of
instructions on how to get things going.
At this point, I think Debian's Exim4 package should default to the
"split-out" configuration option, and the Debian package of Mailman should,
if Exim4 is the installed MTA, plop the relevant files into
/etc/exim4/conf.d
So that got me going with Mailman. Sweet. Onto Request Tracker.
Total bloody nightmare
Again, like Mailman, you can (almost) make the alias additions redundant for
Request Tracker queues, which is good, because out of the box, Debian's
Exim4 doesn't like piping stuff to programs via the aliases. I couldn't
figure out how to just enable that feature, and it sounded like a bad idea
anyway, so I struggled onwards, and did some Googling, until I happened upon
this kind soul who had some pretty good instructions, which I
just adapted for the Debian installation of Exim and Request Tracker.
So that concluded the MTA battles of last night. For extra credit, after
I've got Drupal working the way I'd like it to work, I'll revisit the Exim
config to ensure it's doing all the cool built in spam prevention stuff that
Exim is reportedly so good for.