Mutt
Long-running text-mode email client with IMAP, POP3 and SMTP support, configured through a muttrc file.
Mutt is a full-screen terminal mail user agent that reads local Maildir, mbox and MH folders and remote IMAP and POP3 mailboxes, and can send through its built-in SMTP client or a local sendmail. It supports PGP/MIME, S/MIME, Autocrypt, threading and a sidebar. It suits users who want a stable, conservative client; it has no notmuch, NNTP or Lua support, which NeoMutt adds.
- Type
- Email client
- Interface
- Full-screen terminal interface
- Systems
- Runs on Linux, macOS and BSD, on Windows through WSL, on Android through Termux.
- Language
- C
- License
- GPL 2.0 or later
- Latest version
2.4.2- Maintained
- Yes
- Website
- mutt.org
- Source
- gitlab.com/muttmua/mutt
- Documentation
- mutt.org
Install
| System | Support | Install |
|---|---|---|
| Linux | Native | apt sudo apt install muttdnf sudo dnf install muttpacman sudo pacman -S mutt |
| macOS | Native | Homebrew brew install mutt |
| Windows | Through WSL | WSL sudo apt install muttMSYS2 pacman -S muttNo native Windows build; runs in WSL, and Cygwin and MSYS2 also package it. |
| BSD | Native | FreeBSD pkg pkg install muttOpenBSD pkg_add mutt |
| Android | Through Termux | Termux pkg install mutt |
Protocols and features
| Protocol | Mutt |
|---|---|
| IMAP | Yes |
| POP3 | Yes |
| SMTP | Yes |
| JMAP | No |
| Maildir | Yes |
| mbox | Yes |
| notmuch | No |
| Feature | Mutt |
|---|---|
| OpenPGP | Yes |
| S/MIME | Yes |
| OAuth2 sign-in | via script |
| Threads | Yes |
| Search | built-in patterns; server-side IMAP search |
| HTML mail | via mailcap and an external viewer such as w3m or lynx |
| Mouse | No |
| Multiple accounts | Yes |
| Offline use | with isync or OfflineIMAP; IMAP header and body cache |
| Calendar | No |
| Contacts | via query_command with abook or khard |
| Vim-style keys | Yes |
| Configuration | muttrc text file |
Pros and cons
Pros
- Packaged by major Linux distributions, Homebrew, FreeBSD, OpenBSD and Termux
- Conservative releases that rarely break existing muttrc files
- Built-in PGP/MIME, S/MIME and Autocrypt
Cons
- No notmuch, NNTP or scripting support (NeoMutt has these)
- Configuration is a text file with hundreds of options and no setup wizard
- HTML mail needs an external viewer set up in mailcap
Use Mutt with Forward Email
A working setup for a Forward Email mailbox. Replace you@example.com with your alias and the password command with your own. The same settings work with any provider once the server names change.
# Forward Email: IMAP over SSL/TLS (993), SMTP over SSL/TLS (465)
set realname = "Your Name"
set from = "you@example.com"
set imap_user = "you@example.com"
set imap_pass = "`pass show email/forwardemail`"
set folder = "imaps://imap.forwardemail.net:993/"
set spoolfile = "+INBOX"
set record = "+Sent Mail"
set postponed = "+Drafts"
set trash = "+Trash"
# The @ in the username is URL-encoded as %40
set smtp_url = "smtps://you%40example.com@smtp.forwardemail.net:465/"
set smtp_pass = "`pass show email/forwardemail`"
set ssl_force_tls = yes| Protocol | Server | Port | Security |
|---|---|---|---|
| IMAP | imap.forwardemail.net | 993 | SSL/TLS |
| POP3 | pop3.forwardemail.net | 995 | SSL/TLS |
| SMTP | smtp.forwardemail.net | 465 | SSL/TLS |
| SMTP | smtp.forwardemail.net | 587 | STARTTLS |
Username: your full alias address, such as you@example.com. Password: the one shown by Generate Password next to the alias in your Forward Email account. Folders: INBOX, Drafts, Sent Mail, Trash, Spam and Archive.
Prefer no config at all? Forward Email's terminal app signs in with your account and has mail, calendar and contacts in one program.
Compare Mutt
Questions
Does Mutt work on Windows?
Not natively. It runs in Windows Subsystem for Linux (WSL). No native Windows build; runs in WSL, and Cygwin and MSYS2 also package it.
Does Mutt support IMAP?
Yes, Mutt connects to IMAP servers directly.
Is Mutt open source?
Yes, under the GPL 2.0 or later.
How do I use Mutt with Forward Email?
Use the config in the Forward Email section on this page, saved as ~/.muttrc, and replace the address and password with your own.
Sources
- mutt.org/
- mutt.org/doc/manual/
- gitlab.com/muttmua/mutt
- gitlab.com/muttmua/mutt/-/blob/master/COPYRIGHT
- gitlab.com/muttmua/mutt/-/blob/master/UPDATING
- formulae.brew.sh/formula/mutt
- sources.debian.org/src/mutt/
- packages.fedoraproject.org/pkgs/mutt/mutt/
- archlinux.org/packages/extra/x86_64/mutt/
- freshports.org/mail/mutt/
- github.com/openbsd/ports/tree/master/mail/mutt
- github.com/termux/termux-packages/tree/master/packages/mutt
- cygwin.com/packages/summary/mutt.html
- packages.msys2.org/packages/mutt
- github.com/forwardemail/forwardemail.net/blob/master/helpers/ensure-default-mailboxes.js