Exim support

5 posts / 0 new
Last post
#1 Thu, 09/07/2006 - 07:58
ChaseJames

Exim support

How do I get Virtualmin to work with Exim? If it isn't supported, why not? And, also, how difficult would it be to develop support for exim?

Thanks for your help.

Thu, 09/07/2006 - 11:56
Joe
Joe's picture

Hey Chase,

Exim isn't supported, because Webmin doesn't have a module for it.

Why not? Because we hate Exim and are part of the super-secret Ex-out-Exim cabal. ;-)

Actually, Exim looks like a very nice MTA, but we're focusing on other aspects of the system right now--like OS support for Debian/Ubuntu, FreeBSD, and Solaris, and adding new imports from other virtual host administration tools. No one has ever wanted a Webmin module for Exim enough to develop it or pay for someone to develop it, so none exists. And, one could point out that we support more mail servers than any of our competitors (Postfix, Sendmail and qmail).

I wouldn't rule out the possibility of future support for Exim, since it is the only proper MTA that runs on Windows, and we have several (more than asked for Mandriva, Slackware, or OpenBSD) users wishing for a Windows Server version of Virtualmin (whether that ever actually happens depends on whether we have the funds to hire a Windows developer and support person, since I try not to touch Windows if I can avoid it). But it's definitely not in the near-term plans.

In short, it's just a matter of limited resources. We can only do so much (and we're doing a lot right now).

Is there something you need that Exim does that Postfix or Sendmail cannot?

--

Check out the forum guidelines!

Thu, 09/07/2006 - 12:09 (Reply to #2)
ChaseJames

Its just that Exim is already in use here, its working, its been tweaked (I've spent days customizing our setup), and it seems like a difficult task to replace it with a different MTA.

I am thinking about going with IMAP, though, so I might be willing to switch for IMAP support.

Thu, 09/07/2006 - 12:26 (Reply to #3)
Joe
Joe's picture

<i>Its just that Exim is already in use here, its working, its been tweaked (I've spent days customizing our setup), and it seems like a difficult task to replace it with a different MTA.</i>

Switching MTAs is actually pretty easy, as such things go. The only core issues are: How is mail delivered (procmail in our case) and for what addresses (the virtual domains table). Everything else is just configuration for the sake of configuration. ;-)

I'm not saying you have to switch, but if you want Virtualmin to manage your mail users, you'll have to use a supported mail server.

<i>I am thinking about going with IMAP, though, so I might be willing to switch for IMAP support.</i>

IMAP is wholly orthogonal to the MTA (Exim is an MTA). POP3 and IMAP services are provided by the POP3/IMAP server (Dovecot in our case, others are Courier, UW-IMAP, Cyrus). The MTA and the POP3/IMAP server don't even need to know about each other.

Delivery format can possibly be determined by the MTA, but it doesn't have to be, as procmail supports Maildir and traditional mbox formats...so if you deliver to procmail, you'll be able to switch spool format, even if the MTA doesn't support one or the other. Maildir is pretty much the accepted winner in this regard.

--

Check out the forum guidelines!

Thu, 09/07/2006 - 12:19
Joe
Joe's picture

Oh, yeah, to answer your question:

<i>how difficult would it be to develop support for exim?</i>

It would be as difficult as developing support for any of the other mail servers. You'd start with a Webmin module (look in the postfix and sendmail modules for an idea of the lines of code this requires--it's a couple of weeks of work for a perl and exim guru and a couple of months or more for a newbie to perl and Webmin development), and then add lib support in Virtualmin (this part is actually pretty easy because the MTA support has already been very abstracted out to nicely support three mail servers). In fact, the latter part is so easy that I'd volunteer to handle the Virtualmin integration if you bring us a full-featured and clean Exim Webmin module.

People other than Jamie are capable of developing full-featured Webmin modules, as the Postfix module was originally developed by folks working for Mandrake Linux several years ago. So, if you're feeling ambitious, dig in! We'll try to be helpful if you run into problems. ;-)

A cursory glance at the Sendmail and Postfix modules indicates about 4000 lines of code for each. With more modern techniques (both are quite old, though they get updates to match library changes) this could certainly be shortened. Jamie crams an awful lot of functionality into very little code these days, because the libraries in Webmin have gotten so powerful.

Oh, yeah, googling turns up an old, seemingly never completed and unmaintained, Exim Webmin module that looks pretty minimal, but might provide a reasonable starting point...but if it's to be integrated into Webmin proper (and get maintenance, translations, improvements, from us like the Postfix module has) and get Virtualmin support, the module has to be BSD-licensed. I don't see the license for it on this page:

http://mtlx.free.fr/webmin/exim/

I've just installed it, and see that it's really only a status monitor for Exim. Probably not even worth starting from, as it doesn't even use the web-lib.pl. It's starting from scratch on just about everything, and it has an awful lot of code for doing so little (700-800 lines, mostly in the stats gathering code). Though it does look like pretty clean perl.

--

Check out the forum guidelines!

Topic locked