Checking the PGP signature is always a good idea, especially nowadays when so many software packages have been trojaned. All releases since 0.5.5 are signed with public key ED409DA1 (full signature: 2BE7 4AAB 3EE7 54DF B9C8 0D33 18A3 48AE ED40 9DA1), which can be found at wwwkeys.pgp.net.
All releases before 0.5.5 are signed with public key 3DFBB4F4 (full signature: 42F3 CD50 D4F2 5A41 833B EE37 04D6 2B1E 3DFB B4F4), which can be found at wwwkeys.pgp.net.
Up until Dovecot v1.2, Pigeonhole was distributed in separate packages for Sieve and ManageSieve and a patch to modify Dovecot to recognize the external ManageSieve service. The Pigeonhole Sieve implementation is only available for Dovecot v1.2 and higher, so older Dovecot installations must use the old CMUSieve plugin.
You can get the latest development code from the Git repository. Note that since it's constantly in development, it may be more or less broken.
The following repositories are available:
# v2.3 code tree: git clone https://github.com/dovecot/pigeonhole.git
Refer to the README and INSTALL files for installation instructions.
The old Mercurial repository website still hosts many of the repositories for older releases and plugins.
The following repositories are available:
# v2.1 code tree: hg clone http://hg.rename-it.nl/dovecot-2.1-pigeonhole/ # v2.0 code tree: hg clone http://hg.rename-it.nl/dovecot-2.0-pigeonhole/
See instructions in the Dovecot Wiki for how to compile the Sieve plugin from Mercurial.
# v1.2 code tree: hg clone http://hg.rename-it.nl/dovecot-1.2-sieve/
See instructions in the Dovecot Wiki for how to compile the Sieve plugin from Mercurial.
# v1.2 code tree: hg clone http://hg.rename-it.nl/dovecot-1.2-managesieve/ # v1.1 code tree: hg clone http://hg.rename-it.nl/dovecot-1.1-managesieve/
See instructions in the Dovecot Wiki for how to compile ManageSieve from Mercurial.
# v1.2 patch tree: hg clone http://hg.rename-it.nl/dovecot-1.2-managesieve-patch/ # v1.1 patch tree: hg clone http://hg.rename-it.nl/dovecot-1.1-managesieve-patch/ # v1.0 patch tree: hg clone http://hg.rename-it.nl/dovecot-1.0-managesieve-patch/
See instructions in the Dovecot Wiki for how to apply the ManageSieve patch from Mercurial.
hg pull hg update
The latest Mercurial revisions of the Sieve interpreter include plugin support. Currently, the following plugins are under development and provided separately:
This plugin adds the new xmpp notification method (RFC 5437) for the enotify extension (RFC 5435). Using this plugin, users can make the Sieve interpreter send XMPP (Jabber) notifications. It is not finished and only published for those that are curious to test it. Development continues only for Dovecot v2.3. Refer to the README and INSTALL files for installation instructions.
This plugin adds support for accessing string data from a Dovecot dict lookup. This plugin is experimental and defines a vendor-specific extension to the Sieve language. This plugin is under active development and may change significantly in the near future. It is published mainly for evaluation. Refer to the INSTALL and README files for installation and usage instructions. The extension provided by this plugin (vnd.dovecot.extdata) is documented here.
This plugin provides an extension to the Sieve filtering language adding a new action command for piping messages to a pre-defined set of external programs. To mitigate the security concerns, the external programs cannot be chosen arbitrarily; the available programs are restricted through administrator configuration. This plugin is experimental and defines a vendor-specific extension to the Sieve language. For newer versions of Pigeonhole this plugin is superseded by the Sieve Extprograms plugin (see below). Refer to the INSTALL and README files for installation and usage instructions. The extension provided by this plugin (vnd.dovecot.pipe) is documented here.
This plugin adds support for the Dovecot-specific vnd.dovecot.pipe, vnd.dovecot.filter and vnd.dovecot.execute extensions. These extensions add new action commands for invoking a predefined set of external programs (typically shell scripts). Messages can be piped to or filtered through those programs and string data can be input to and retrieved from those programs. To mitigate the security concerns, the external programs cannot be chosen arbitrarily; the available programs are restricted through administrator configuration. This plugin is experimental and defines a vendor-specific extension to the Sieve language. For Pigeonhole v0.3, refer to the INSTALL and README files for installation and usage instructions. The extensions provided by this plugin are documented here.