[Mailman-Users] exim says 'unrouteable' on new list [SOLVED]

Mark Sapiro mark at msapiro.net
Mon Aug 8 08:44:15 CEST 2011

Rich wrote:
>After about 4 hours fiddling I'd managed to find a fix. I think the main 
>thing I was missing was that you have to run genaliases in order to 
>update the lookup file.

The reason you needed to run genaliases is that you created the list
before adding its domain to POSTFIX_STYLE_VIRTUAL_DOMAINS. Had you
added the domain to POSTFIX_STYLE_VIRTUAL_DOMAINS before creating the
list, you wouldn't have needed to run genaliases.

>I had read http://www.exim.org/howto/mailman21.html but not found it 
>particularly enlightening, esp. the exim section.

If your exim router were configured as this howto suggests, you could
have MTA = None in mm_cfg.py, and you wouldn't need virtual-mailman
(or POSTFIX_STYLE_VIRTUAL_DOMAINS), and new lists would just work.

>I had read a lot more, 
>too. Just search this list for "virutal domain" and you'll see how many 
>others have problems too, and I read through lots of those!
>In the end I found /usr/share/doc/mailman/README.Exim4.Debian.gz which 
>was most helpful.
>For the benefit of anyone reading this, I have learnt:
>1. in mm_config, it says postfix but it means exim too. Unfortunate 
>lexical obfuscation ;-)

Only because you are apparently doing things the Debian way instead of
the recommended way.

>2. virtual domains look like quite a hassle with postfix, but with exim 
>they're easy as long as your lists all have unique names, regardless of 
>their domain (or you have to run 2 installs of mm)

And you are configuring Exim so that you need to do all the Postfix
hassle which is unnecessary if you do it the recommended way.

>3. running genaliases is needed to update existing lists.

If you are relying on MTA = 'Postfix' and POSTFIX_STYLE_VIRTUAL_DOMAINS
and you create the list before updating POSTFIX_STYLE_VIRTUAL_DOMAINS,
this is correct.

>4. beyond the instructions in README.Exim4.Debian I added a line
>     add_virtualhost('my.virt.host.com','my.virt.host.com')
>     for each virtualhost. I'm not sure this is needed once it's listed 
>     but I'm not going to try to break it now I've finally got it working!

add_virtualhost directives have nothing directly to do with
virtual-mailman. They provide a Python dictionary mapping from 'web
host' to 'email host'. This is used to determine the email domain for
a created list when creating it from the web or via newlist without
specifying an email host. Also see the FAQ at

Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

More information about the Mailman-Users mailing list