[Dovecot] Using Dovecot code in a non-LGPL package

Asheesh Laroia asheesh at asheesh.org
Tue Sep 8 19:19:20 EEST 2009


Hi Timo (and all!),

Venaktesh is a friend of mine working on a patch to the venerable Alpine 
mail reader so it can read Maildir format mailboxes on disk.

Venkatesh wanted to know if he could use some code from Dovecot's 
lib-storage (safely opening/reading Maildirs, including accounting for NFS 
and ESTALE) and the UID->message mapping code.

This way, Dovecot and Alpine would agree on how to handle UIDs for a given 
Maildir-format mailbox. Plus Alpine could benefit from the thought you've 
put into the safety of Maildirs on IMAP (which is *not* trivial!).

But there are some possible licensing issues.

Alpine (formerly known as PINE) is now licensed under the Apache License 
2.0. As far as I can tell, if he wants to contribute a patch back to 
Alpine upstream, he should use use the Apache License 2.0. But Dovecot is 
licensed under LGPL 2.1; if he takes Dovecot code, modifies it, and mixes 
it with Alpine, that would not be allowed by the licenses together (as I 
understand it).

The Apache License 2.0 is a permissive, non-copyleft license like the MIT 
License, but it adds a patent retaliation clause. See 
http://www.apache.org/licenses/LICENSE-2.0.html for its text and 
http://www.gnu.org/philosophy/license-list.html for a short statement of 
its compatibility with GPLv3; 
http://en.wikipedia.org/wiki/Apache_License#GPL_compatibility has a little 
more.

License-wise, there are two choices, if you're willing Timo: the modified 
Dovecot code could be released under GPLv3, which *is* compatible with the 
Alpine license - it would just mean Alpine+Maildir would be GPLv3 when put 
together. Or you could grant a special permission to Venkatesh to 
distribute the modified Dovecot code under the Apache License 2.0.

Timo (and others), what do you think? The past of least resistance is to 
say that a derivative work of Dovecot can be made using GPLv3; the most 
convenient would be to say that particular portions can be used under the 
Apache License 2.0.

-- Asheesh.

-- 
Why do we have two eyes?  To watch 3-D movies with.


More information about the dovecot mailing list