4
5
Fork
You've already forked dovecot-replication
0
Replication support for Dovecot >= 2.4 as plugin https://people.mpi-klsb.mpg.de/~pcernko/dovecot-replication.shtml
  • C 91.2%
  • Shell 3.3%
  • Makefile 3.1%
  • M4 2.4%
Find a file
2025年09月29日 13:27:17 +02:00
build-aux new plugin build system inspired by pigeonhole 2025年07月15日 20:52:50 +02:00
patches testing if dovecot is patched with doveadm-dsync+exit_code-hooks patch and fail if not 2025年08月29日 09:37:04 +02:00
src reenabled building (and checking with) test-replicator-queue 2025年09月25日 09:15:54 +02:00
tests configure: --enable-dsync-replacement is now the default 2025年09月29日 13:25:03 +02:00
.editorconfig editorconfig: Use tabs with NEWS file 2025年02月12日 22:31:40 +02:00
.gitignore "build test" framework: 2025年09月18日 20:23:28 +02:00
.gitlab-ci.yml configure: --enable-dsync-replacement is now the default 2025年09月29日 13:25:03 +02:00
autogen.sh new plugin build system inspired by pigeonhole 2025年07月15日 20:52:50 +02:00
configure.ac configure: --enable-dsync-replacement is now the default 2025年09月29日 13:25:03 +02:00
COPYING dropped unneeded COPYING, COPYING.MIT, renamed COPYING.LGPL to simply COPYING 2025年09月29日 13:07:15 +02:00
Makefile.am dropped unneeded COPYING, COPYING.MIT, renamed COPYING.LGPL to simply COPYING 2025年09月29日 13:07:15 +02:00
README.md dropped unneeded COPYING, COPYING.MIT, renamed COPYING.LGPL to simply COPYING 2025年09月29日 13:07:15 +02:00
replication-config.h.in new approach for dsync modifcations: repl/repl-server command: 2025年09月07日 12:56:04 +02:00
stamp.h.in new plugin build system inspired by pigeonhole 2025年07月15日 20:52:50 +02:00
TODO.md updated: README and existing tests done 2025年09月29日 13:27:17 +02:00

Introduction

This is wormhole, a project to bring back Dovecot's replication feature for Dovecot 2.4 and later. It is mainly a fork of the Dovecot 2.3 replication code ported to Dovecot 2.4. The forked code was removed by the Dovecot maintainers from Dovecot starting with Version 2.4. This project aims to provide the feature as a plugin for Dovecot 2.4 and higher.

Installation

To install wormhole you first have to install Dovecot or at least the Dovecot development package from your distribution or the Dovecot community repositories. After that you compile and install the project with (assuming you have Dovecot installed in /usr):

./configure --prefix=/usr
make
make check # optional
make install

Patch for Dovecot

For best backward compatibility, you can find a patch for Dovecot in the patches directory. This patch will add a hook system do doveadm's sync and dsync-server commands. These hooks will be used by wormhole to extend sync and dsync-server with replication specific features. The availability of this hooks is autodetected by configure.

If you do not need backward compatibility with existing Dovecot-2.3 replication servers, you don't need this patch. It is even possible to run mixed 2.3/2.4 setups without this patch but you will have limited support for noreplicate setting.

Configuration

Setting up replication works the same way as before in Dovecot 2.3. Including the full documentation for replication in this project is on the roadmap.

Additional settings

To allow replication with Dovecot 2.3 servers without patching Dovecot 2.4, there is a config setting replication_dsync_command. This can be set to dsync-server to inform the replication service which doveadm command to us on the remote (2.3) server side when starting replication.

Authors and acknowledgements

First I want to thank Timo Sirainen and his team from Dovecot for providing the replication feature in Dovecot since 2012. Most of the code in this project is based on their work!

Maintainer of this project and author of the new code to bring replication back into Dovecot 2.4:

License

Wormhole is released under LGPLv2.1 (see COPYING) similar to the forked code of Dovecot's replication feature.

Questions and Contributing

If you have questions or want to report issues or contribute, you can do so on Codeberg:

The official website of this project is: https://people.mpi-klsb.mpg.de/~pcernko/dovecot-replication.shtml