[Dovecot] v1.3 plugin locations

Timo Sirainen tss at iki.fi
Tue Apr 7 20:25:10 EEST 2009


It's getting more and more annoying to have separate plugin directories
for lda, pop3 and imap. Currently all the plugins are installed into
$lib/dovecot/ and then symlinked to the lda, pop3, imap directories. The
original reason was that v0.99 just loaded everything in those
directories since there was no mail_plugins setting.

But then there are things like expire-tool and convert-tool (and the
upcoming doveadm) that don't load plugins at all, even though they
probably should. Adding just more directories to them seems to be
pointless.

Also SQL plugins are shared by dovecot-auth and dict and those would
need symlinking.. And in future you might want to load SQL plugins to
e.g. imap process.

So, I was planning on just putting everything into $lib/dovecot/.
expire-tool etc. would use mail_plugins setting that wasn't inside
protocol {}. So for example:

mail_plugins = quota
protocol lda {
  mail_plugins = quota sieve
}
protocol imap {
  mail_plugins = quota imap_quota
}
protocol pop3 {
  # defaults to mail_plugins=quota above, no need to set it explicitly
}

That leaves auth and dict.. I was considering adding new auth_plugins
and dict_plugins settings, but that might make it more difficult to
start using distro-compiled Dovecot where sql, ldap, etc. are in
plugins. So perhaps the auth/ and dict/ directories can stay and contain
symlinks. But the $lib/dovecot/sql/ directory could go away and the sql
plugins be stored just in $lib/dovecot/ among everything else.

Any thoughts?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : http://dovecot.org/pipermail/dovecot/attachments/20090407/638b5552/attachment.bin 


More information about the dovecot mailing list