Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

``infrae.maildrophost`` is used to configure a maildrophost server and
`MaildropHost`_ product using the same configuration, and create a
management script for the maildrophost server.

In addition to those tasks, it used to download and install
`MaildropHost`_ when it was not distributed as an egg. If you are
looking for those features, please have a look at the version 1.x of
this recipe.

Example in buildout::

  parts =

  recipe = infrae.maildrophost
  smtp_host = localhost
  smtp_port = 25

  eggs +=
  zope-conf-additional +=
  <product-config maildrophost>
    config-path-application ${maildrophost:maildrophost.cfg}

This will create the configuration file ``maildrophost.cfg`` for the
daemon, and put a start/stop script in the ``bin`` directory of the
buildout tree.

Spool and PID files are put by default in the ``var/maildrop``
directory, so data is preserved when update (if there is any data).


You can customize some of settings of `MaildropHost`_:

  Directory to use as *home directory* for the deamon. By default it's
  ``${buildout:directory}/var/maildrop`` It will be created if it
  doesn't exists.

  Directory to use as a spool. By default it will be
  ``${mail_dir}/spool``. The directory will be created if it doesn't
  exist already.

  PID file to use for the daemon. By default it will be

  SMTP server to use. Default to localhost.

  Port to use. Default to default SMTP port, 25.

  If the SMTP server require authentication, login to use.

  If the SMTP server require authentication, password to use.

  If 1, `MaildropHost`_ will be speaking to a TLS enabled SMTP server.


  Add a message id to the sent mail.

  Must be an integer which define the interval in seconds between two
  check for new mail in the spool directory. Default is 120 seconds.

  Must be an interger or float which say how much time the daemon
  should wait between sending two mails to the mail server.

  If 1, the internal maildrop script will remain running in the
  foreground.  This is mostly useful when you start the main
  maildrophost script itself on the foreground with ``bin/maildrophost
  fg``.  See the `Configuration for supervisor`_ section.

  Specify an alternative path for storing the generated
  ``maildrophost.cfg`` file.  Note that this file gets rewritten each
  time you run buildout.  The default value is

Configuration for supervisor

Buildout generates a ``bin/maildrophost`` script (if you use
``maildrophost`` as the name of the buildout section).  When calling
``bin/maildrophost start`` this script does some checks and basically
calls ``python maildrophost.cfg`` and quits, without
waiting to for the ```` script to exit properly.  The
```` script creates a fork of itself and exits.

This is not helpful when you want to use maildrophost in combination
with `supervisor <>`_.  If you want to do that
you should enable the ``supervised_daemon`` option and let supervisor
start the maildrophost script on the foreground.  Sample config would
be this::

  recipe = infrae.maildrophost
  smtp_host = localhost
  smtp_port = 25
  supervised_daemon = 1

  recipe = collective.recipe.supervisor
  programs =
      40 maildrop ${buildout:directory}/bin/maildrophost [fg] true

Latest version

The latest version is available in a `Git repository

.. _MaildropHost:


Buildout recipe to install and setup maildrophost server






No packages published