NeoMutt vs Sup
NeoMutt: Full-screen terminal mail reader forked from Mutt, with notmuch, NNTP, Lua scripting and a sidebar built in.
Sup: Curses email client in Ruby built around threads, labels and fast full-text search over local mail.
Differences
- Only NeoMutt has built-in IMAP, POP3, SMTP and notmuch.
- On BSD, NeoMutt runs natively and Sup builds from source.
- On Android, NeoMutt runs through Termux and Sup is not available.
- NeoMutt has S/MIME; Sup does not.
- NeoMutt has OAuth2 sign-in; Sup does not.
- NeoMutt is written in C; Sup in Ruby.
- Configuration: NeoMutt uses neomuttrc text file, and Sup uses ~/.sup/config.yaml and ~/.sup/sources.yaml, plus Ruby hooks.
Side by side
| NeoMutt | Sup | |
|---|---|---|
| Interface | Full-screen terminal interface | Full-screen terminal interface |
| Language | C | Ruby |
| License | GPL 2.0 or later | GPL 2.0 or later |
| Latest version | 20260616 | 1.4 |
| Linux | Native | Native |
| macOS | Native | Native |
| Windows | Through WSL | Through WSL |
| BSD | Native | Build from source |
| Android | Through Termux | No |
| IMAP | Yes | No |
| POP3 | Yes | No |
| SMTP | Yes | Through a separate tool |
| JMAP | No | No |
| Maildir | Yes | Yes |
| mbox | Yes | Yes |
| notmuch | Yes | No |
| OpenPGP | Yes | Yes |
| S/MIME | Yes | No |
| OAuth2 sign-in | via script | No |
| Threads | Yes | Yes |
| Search | built-in patterns; notmuch for full-text | Xapian full-text index with a query language |
| HTML mail | via mailcap and an external viewer such as w3m or lynx | via the mime-decode hook and an external viewer such as w3m |
| Mouse | No | No |
| Multiple accounts | Yes | Yes |
| Offline use | with isync or OfflineIMAP; IMAP header and body cache | reads local Maildir or mbox; sync with isync or OfflineIMAP |
| Calendar | No | No |
| Contacts | via query_command with abook or khard | tracks recent contacts automatically |
| Vim-style keys | Yes | Yes |
| Configuration | neomuttrc text file | ~/.sup/config.yaml and ~/.sup/sources.yaml, plus Ruby hooks |
Which to choose
Choose NeoMutt for
- Built-in notmuch support for tag-based virtual mailboxes and full-text search
- Reads Usenet over NNTP and supports Lua scripting
- Reads most existing muttrc files with few or no changes
Watch out for
- Configuration is a text file with hundreds of options and no setup wizard
- HTML mail needs an external viewer set up in mailcap
- OAuth2 needs an external token script such as mutt_oauth2.py
Choose Sup for
- Fast full-text search over large archives
- Gmail-style labels, archiving and muting of threads
- Ruby hooks for custom behavior
Watch out for
- No built-in IMAP or SMTP; needs isync (or similar) and msmtp
- Changes sync back to Maildir only with the optional sync-back setting
- Packaged by Debian and Ubuntu (and the AUR); elsewhere installed as a Ruby gem with native Xapian bindings
Questions
What is the difference between NeoMutt and Sup?
Only NeoMutt has built-in IMAP, POP3, SMTP and notmuch. On BSD, NeoMutt runs natively and Sup builds from source. On Android, NeoMutt runs through Termux and Sup is not available.
Which runs on Windows, NeoMutt or Sup?
On Windows, NeoMutt runs through WSL. On Windows, Sup runs through WSL.
See also: NeoMutt alternatives, Sup alternatives.