Schleuder/ documentation/ v2.1/


This documentation refers to an outdated version of schleuder! It is not updated and should only be used as reference for legacy installations. In case of any problems please consider reading the documentation for the current release and upgrading your installation!
Posted 2014-02-19 14:40:30 +0100

Installing schleuder is quite simple if "ruby", "gem" and "MTA" are no unknown words to you.

Note: if you are installing on Debian GNU/Linux 5.0, please refer to ?installationdebian, too.


schleuder is written in ruby, so it obviously needs a proper ruby-installation. Further we assume you have an MTA (a mail transport agent like qmail, postfix or the like) up and running. If not you should set those up first — without MTA schleuder is pretty much useless.

Besides that schleuder needs some additional software:

  • TMail


    • sudo gem install tmail

      • We do not recommend to run schleuder with the latest version See tmail incompatibility for further information.
  • gpgme-1.x


    • Your operating system should provide a way to install this

    • Note: Stick to gpgme-1.1.x until a ruby-gpgme-version higher than 1.0.8 is released, else you'll run into problems.

  • ruby-gpgme >= 1.0.2


    • sudo gem install ruby-gpgme -v 1.0.7

  • optional: highline (if you want to use the helper script for creating new lists in interactive mode)


    • sudo gem install highline

Installing and setting up

One day we'll pack a gem. Until then you'll have to go through a few steps manually:

  1. Download the source by cloning the git-repository (git clone git:// or fetching the latest tarball from download to some place you like.
  2. Create a lists-dir. That is the directory the lists will be stored in, including the private keys of the lists — we therefore strongly suggest to create this directory on an encrypted filesystem! By default schleuder assumes this directory to be /var/schleuderlists. If you choose a different directory you'll have to change the schleuder.conf (see below).
  3. Create the config directory /etc/schleuder and copy ext/schleuder.conf and ext/default-list.conf to it.
  4. Open both files in your preferred editor and possibly adapt them to your wishes. If you didn't choose a different lists directory in step 2 you don't actually have to change anything as the default settings are sane and usable. Else set the lists_dir-attribute in schleuder.conf accordingly.
  5. Make sure the user that runs your MTA can read the schleuder-dir and read and write the lists-dir.
  6. Create /var/log/schleuder and touch /var/log/schleuder/schleuder.log and chown both to the user that runs your MTA or with which schleuder will be executed. If you use a more advanced setup with different users for different lists (For example: ?configurationeximplus) you need to take care that every executed list can write to this file and directory every time. See the the different installation guides for examples.
  7. Verify that the schleuder binary is executable: chmod +x bin/schleuder otherwise mail delivery will fail.


schleuder expects a listname as first argument and the incoming email on stdin:

bin/schleuder listname < email-file

To enable it receiving emails you need to hook it into your MTA. As we require the listname as argument you'll have to set up one hook (which is an alias, basically) per list (unless you do some vodoo with your MTA). That is part of the list setup covered on the page creating lists.

That's it.

Please proceed to creating lists.