Gray Duck Mail

Easy to use email discussion lists

Bring Your Flock Together

No one flies alone.

Important Security Information
Your Gray Duck

Discussion lists are easy to manage in Gray Duck Mail. The following sections will help you understand what Gray Duck Mail does and how it operates. You'll learn about contacts, discussion lists, and how to use it.


Contacts represent individual users that can send and recieve messages to a discussion list. New contacts can be added through the web interface or are added automatically when a previously unknown email address sends a message to request email alias for a discussion list.

Discussion Lists

Discussion lists represent a group of contacts that can relay messages to other users via a single designated email address. Limited automated moderation can be performed by sending messages to specific email aliases.


Gray Duck Mail requires an external email account and a few defined aliases in order to function. A discussion list functions by monitoring a given POP3 email account and processing each email by either relaying it to the discussion list members, or by analyzing a message's MIME headers and performing a moderation task.

Base Email Account

The base email account is the actual email account provided to you by an external email provider, such as your web host.


In order to process operational emails, Gray Duck Mail expects certain email aliases to be configured. This configuration may be refered to by your email provider as "forwards". All email aliases except for the owner alias should forward to the base email address. These aliases should be structured so that the command name precedes the base email address with a hyphen separating them.

For example:

The following email aliases are expected to exist for automatic moderation:

The request alias is used to process requests to join a discussion list by new users.
The subscription alias is used by known users who have been invited to participate in a discussion list to confirm their willingness to participate.
The unsubscription alias is used by known users who have been invited to participate in a discussion list to revoke their consent to recieve emails associated with a given discussion list.
The bounce alias is inserted into the return-path MIME header for all system delievered messages. Some email servers rely on this return-path value to notify senders of non-deliverable messages or invalid mail boxes.
The owner alias should forward to a non-discussion-list address, such as the administrators personal email account. The system sends alert messages to this address when external moderation is necessary, such as when a previously unknown user requests access to a discussion list.
Using the Discussion List

Gray Duck Mail's primary function is to relay email from one discussion list member to all the others. Email messages recieved at the base email address are forwarded to all eligable group members. Replies are similarly routed to the entire group. An archive of the message is added to the arhive and available for viewing in the web interface.

Administrative Email

There are a few special email addresses that group members and send messages to that perform special administrative functions. For example, you can send a message to and the system will automatically mark that member as unsubscribed and they will no longer recieve messages from that discussion list.

The content of messages sent to these special addresses is ignored. The system will only take into consideration the discussion list being referenced and which contact initiated the message.

Sending blank messages works just fine!


Gray Duck Mail provides a web administration interface for basic system interaction. The web interface allows an administrator to create and remove distribution lists, create and remove list contacts, browse message archives, and access basic adminstration actions like importing and exporting copies of the local database.


The web adminstration settings control the presentation of data in the web interface, so are stored as cookies in the user's browser. These settings have no influence on the system's discussion list email processing functionality.

Items Per Page

This setting controls the number of top level items displayed on a page, such as contacts or archived messages.

Searching through contacts and message archives will by default perform exact searches. Results will contain the search term exactly as presented. If enabled, this option will allow the search engine to engage fuzzy searching, using the Levenshtein distance to find results that closely match a given search term. This can result in better search results, but is computationally heavy as all items being searched must be loaded into memory from the database. When searching large message archives or large contact lists, this could result in time-out errors from the web server.


Allows a user to manually select either the Light theme for the web interface or the Dark theme. Pico.css will attempt to automatically choose the theme that matches the device theme.

Database Import

This action allows you to import an existing SQLite3 database file. When importing a database, the web server must restart. You can simply reload the web interface to see the new changes.

Database Export

This action allows you to export a copy of the SQLite3 database file. This file can be imported into another instance of Gray Duck Mail or viewed in an external application such as DB Browser for SQLite.