Gnus vs nmail
Gnus: Mail and news reader built into GNU Emacs, with back ends for IMAP, POP3, local mail folders and NNTP.
nmail: Terminal email client for Linux and macOS with an Alpine-like interface and built-in IMAP and SMTP.
Differences
- Gnus is a mail client that runs inside Emacs; nmail is a full-screen terminal client.
- Only Gnus has built-in POP3, Maildir and mbox.
- On Windows, Gnus runs natively and nmail is not available.
- On BSD, Gnus runs natively and nmail is not available.
- On Android, Gnus runs through Termux and nmail is not available.
- Gnus has mouse support; nmail does not.
- Gnus has calendar support; nmail does not.
- Gnus has OpenPGP; nmail does not.
- Gnus has S/MIME; nmail does not.
- Gnus has multiple accounts; nmail does not.
- Gnus has threaded views; nmail does not.
- Gnus is written in Emacs Lisp; nmail in C++.
- Configuration: Gnus uses Emacs Lisp in init.el or ~/.gnus.el, and nmail uses ~/.config/nmail/main.conf key=value file.
Side by side
| Gnus | nmail | |
|---|---|---|
| Interface | Runs inside Emacs | Full-screen terminal interface |
| Language | Emacs Lisp | C++ |
| License | GPL 3.0 or later | MIT |
| Latest version | 5.13 (bundled with Emacs 31.1) | v5.16.4 |
| Linux | Native | Native |
| macOS | Native | Native |
| Windows | Native | No |
| BSD | Native | No |
| Android | Through Termux | No |
| IMAP | Yes | Yes |
| POP3 | Yes | No |
| SMTP | Yes | Yes |
| JMAP | No | No |
| Maildir | Yes | No |
| mbox | Yes | No |
| notmuch | Through a separate tool | No |
| OpenPGP | Yes | No |
| S/MIME | Yes | No |
| OAuth2 sign-in | via plugin | Yes |
| Threads | Yes | No |
| Search | gnus-search: IMAP SEARCH, or notmuch, mu, mairix and other local indexers | local cache index and server search |
| HTML mail | built-in, rendered with the Emacs shr library | converted to text, or opened in an external browser |
| Mouse | Yes | No |
| Multiple accounts | Yes | No |
| Offline use | via the Gnus agent or local Maildir back ends | local SQLite cache; offline mode and send queue |
| Calendar | replies to invitations with gnus-icalendar | No |
| Contacts | via BBDB or EUDC | address book built from messages |
| Vim-style keys | No | No |
| Configuration | Emacs Lisp in init.el or ~/.gnus.el | ~/.config/nmail/main.conf key=value file |
Which to choose
Choose Gnus for
- Included with every GNU Emacs install, including native Windows builds.
- Reads IMAP directly, plus local Maildir, MH and mbox stores and NNTP newsgroups.
- Scoring, splitting and the Gnus agent allow detailed filtering and offline reading.
Watch out for
- The group, summary and article model takes time to learn.
- IMAP access runs inside Emacs, so large mailboxes can make Emacs wait.
- Configuration is Emacs Lisp spread across many variables.
Choose nmail for
- Built-in IMAP and SMTP with setup wizards for Gmail, iCloud and Outlook
- Local cache, address book and outgoing queue can be encrypted
- Compose HTML mail using Markdown
Watch out for
- One account per running instance
- No threaded view and no PGP or S/MIME
- Linux and macOS only; no Debian or Fedora package
Questions
What is the difference between Gnus and nmail?
Gnus is a mail client that runs inside Emacs; nmail is a full-screen terminal client. Only Gnus has built-in POP3, Maildir and mbox. On Windows, Gnus runs natively and nmail is not available.
Which runs on Windows, Gnus or nmail?
On Windows, Gnus runs natively. On Windows, nmail is not available.
See also: Gnus alternatives, nmail alternatives.