Notmuch is a mail indexer. Essentially, is a very thin front end on top of xapian. Much like Sup, it focuses on one thing: indexing your email messages. Notmuch can be used as an email reader, or simply as an indexer and search tool for other MUAs, like mutt.
Notmuch is written in C and an order of magnitude faster than sup-mail. Notmuch can be terminated during the indexing process, on the next run it will continue where it left off. Also like sup-mail, it does not provide a way to permanently delete unwanted email messages. It doesn't fetch or send mails, nor does it store your email addresses, you'll need to use programs like offlineimap, msmtp and abook for those tasks.
First time Usage
After installation, you enter an interactive setup by running:
The program prompts you for the location of your maildir and your primary and secondary email addresses. You can also edit the config file directly which is created by default at
Subsequent re-indexing of the mail directories is done with:
There are a range of ways to use notmuch, including cli, or with one of the Unix $EDITORS:
The default frontend for notmuch is Emacs. It is developed by the same people that develop notmuch.
There's a vim interface available and included in notmuch. To start it, type:
vim -c NotMuch
alot is a standalone CLI interface for notmuch, written in python. It is available from AUR as AUR or AUR.
Alot uses mailcap for handling different kinds of files. This currently includes html mails, which means that you need to configure a
~/.mailcap file in order to view html mails. As minimum, put this line into your
text/html; w3m -dump %s; nametemplate=%s.html; copiousoutput
More file handlers can be configured of course.
ner - notmuch email reader - is yet another CLI interface, apparently written in C++.
AUR.AUR is avaiable from the
Integrating with mutt
If you use mutt as your MUA, then notmuch is an excellent complementary tool to index and search your mail. The package provides a script to integrate notmuch with mutt.
Refer to the blogpost steps through how to setup notmuch with mutt, but the information is a little outdated.man page for configuration information. This