mu-init - Man Page

initialize the mu message database


mu init [options]


mu init is the subcommand for setting up the mu message database. After mu init has completed, you can run mu index


Note, some of the general options are described in the mu(1) man-page and not here, as they apply to multiple mu commands.


use an alternative directory to store and read the database, write the logs, etc. By default, mu uses XDG Base Directory Specification (e.g. on Linux this defaults to ~/.cache/mu, ~/.config/mu).

Earlier versions of mu defaulted to ~/.mu, which now requires --muhome=~/.mu.

Alternatively, use can use the MUHOME environment variable (the command-line takes precedence).

-m, ā€‰--maildir=<maildir>

starts searching at <maildir>. By default, mu uses whatever the MAILDIR environment variable is set to; if it is not set, it tries ~/Maildir if it already exists.


specifies that some e-mail addresses are 'my-address' (--my-address can be used multiple times). This is used by mu cfind -- any e-mail address found in the address fields of a message which also has <my-email-address> in one of its address fields is considered a personal e-mail address. This allows you, for example, to filter out (mu cfind --personal) addresses which were merely seen in mailing list messages.

<my-email-address> can be either a plain e-mail address (such as, or a regular-expression (of the 'Basic POSIX' flavor), wrapped in / (such as /foo-.*@example\.com/). Depending on your shell program, the argument may need to b quoted.


mu init uses MAILDIR to find the user's Maildir if it has not been specified explicitly with --maildir=<maildir>. If MAILDIR is not set, mu init uses ~/Maildir.

MUHOME can be used as an alternative to --muhome.

Return Value

mu init returns 0 upon successful completion, or a non-zero exit code if there was some error.


Please report bugs if you find them:


Dirk-Jan C. Binnema <>

See Also

maildir(5), mu(1), mu-index(1)

Referenced By

mu(1), mu-easy(1), mu-index(1).

May 2022 User Manuals