MU(1)

✨ MU(1) β€” General Commands Manual ✨

okay bestie, welcome to the mu manpage, section 1 of the General Commands Manual πŸ’…

πŸ’– NAME πŸ’–

mu β€” a set of tools to deal with Maildirs and message files, in particular to index and search e-mail messages.

🌸 SYNOPSIS 🌸

mu [COMMON-OPTIONS] [[COMMAND] [COMMAND-OPTIONS]]

For information about the common options, see COMMON OPTIONS, bestie 🫢

πŸ¦‹ DESCRIPTION πŸ¦‹

mu is the general command that shows help about the specific commands:

  • add: add specific messages to the database.
  • cfind: find contacts
  • extract: extract attachments and other MIME-parts
  • find: find messages in the database
  • help: get help for some command
  • index: (re)index the messages in a Maildir
  • info: show information about the mu database
  • init: initialize the mu database
  • mkdir: create a new Maildir
  • remove: remove specific messages from the database
  • server: start a server process (for mu4e-internal use)
  • view: view a specific message

Each of the commands has its own manpage: mu-<command> ✨

mu is a set of tools for dealing with Maildirs and the e-mail messages in them πŸ’Œ

mu's main purpose is to enable searching of e-mail messages. It does so by periodically scanning a Maildir directory tree and analyzing the e-mail messages found (this is called indexing). The results of this analysis are stored in a database, which can then be queried. No cap πŸ“š

In addition to indexing and searching, mu also offers functionality for viewing messages, extracting attachments and creating maildirs, and searching and exporting contact information πŸ‘‘

mu can be used from the command line or can be integrated with various e-mail clients 😌

This manpage gives a general overview of the available commands (index, find, etc.); each mu command has its own man-page as well 🌈


πŸŽ€ COLORS πŸŽ€

Some mu commands support colorized output, and they do so by default when writing to a TTY (roughly, to a screen, iykyk). When it's not writing to a TTY β€” like when you're redirecting the output to a file or piping it somewhere β€” the default is to not show output.

If you don't want colors, you can use --nocolor.

If you want colors even when it's not the default, use --nocolor=false πŸ’…


🧚 ENCODING 🧚

mu's output is in the current locale, with the exceptions of the output specifically meant for output to UTF8-encoded files. In practice, this means that the output of the commands index, view, extract is always encoded according to the current locale.

Same energy for find and cfind, with some exceptions, where the output is always UTF-8, regardless of the locale:

  • For cfind the exception is --format=bbdb. This is hard-coded to UTF-8, and as such specified in the output-file, so emacs/bbdb can handle it correctly without guessing 😭
  • For find the output is encoded according to the locale for --format=plain (the default), and UTF-8 for all other formats ✨

πŸ“ DATABASE AND FILE πŸ“

The index, find, and cfind commands work with the database, while the other ones work on individual mail files. So running view, mkdir and extract does not require the mu database πŸ‘‘


πŸ’œ LOGGING πŸ’œ

mu logs to the standard logging location, which is either the systemd journal, syslog or a log file (by default, ~/.cache/mu/mu.log), depending on your system's setup; the first one that appears to be working is used.

When using a log file, it can safely be deleted when mu is not running. When running with the --debug option, the log file can grow rather quickly. See the note on logging below πŸ™ˆ


⭐ COMMON OPTIONS ⭐

πŸ’… -d, --debug

Makes mu generate extra debug information, useful for debugging the program itself. Debug information goes to the standard logging location; see mu(1) 🫢

🀫 -q, --quiet

Causes mu not to output informational messages and progress information to standard output, but only to the log file. Error messages will still be sent to standard error. Note that mu index is much faster with --quiet, so it is recommended you use this option when using mu from scripts etc. periodt ⚑

πŸ“œ --log-stderr

Causes mu to not output log messages to standard error, in addition to sending them to the standard logging location.

🌈 --nocolor

Do not use ANSI colors. The environment variable NO_COLOR can be used as an alternative to --nocolor.

πŸ‘‘ -V, --version

Prints mu version and copyright information.

πŸ’– -h, --help

Lists the various command line options.


🚦 EXIT CODE 🚦

This command returns 0 upon successful completion, or a non-zero exit code otherwise.

  1. success
  2. no matches found. Try a different query
  3. database schema mismatch. You need to re-initialize mu, see mu-init(1)
  4. failed to acquire lock. Some other program has exclusive access to the mu database
  5. caught an exception
ngl bestie, those numbers are the actual exit codes: 0, 2, 11, 19 and 99 πŸ’€ don't get it twisted.

πŸ› REPORTING BUGS πŸ›

Please report bugs at https://github.com/djcb/mu/issues.


πŸ§‘β€πŸ’» AUTHOR πŸ§‘

Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>


This manpage is part of mu 1.14.2.

Copyright © 2008-2026 Dirk-Jan C. Binnema. License GPLv3+: GNU GPL version 3 or later https://gnu.org/licenses/gpl.html. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. 🫑


πŸ‘€ SEE ALSO πŸ‘€

mu-add(1), mu-cfind(1), mu-extract(1), mu-find(1), mu-help(1), mu-index(1), mu-info(1), mu-init(1), mu-mkdir(1), mu-remove(1), mu-server(1), mu-view(1), mu-query(7), mu-easy(1)


and that's the whole thing, bestie πŸŽ€ this was mu(1) from the General Commands Manual, part of mu 1.14.2 β€” go forth and index those Maildirs, you absolute icon πŸ‘‘πŸ’…βœ¨

πŸ“¦ where this page comes from