Terminal Email

Notmuch Emacs interface vs S-nail

Notmuch Emacs interface: Emacs front end for notmuch that reads, searches, tags and composes mail from a local Maildir.
S-nail: Command-line mail program that implements POSIX mailx, with MIME, IMAP, POP3, SMTP, Maildir and S/MIME support.

Differences

Side by side

Notmuch Emacs interfaceS-nail
InterfaceRuns inside EmacsCommand-line tools and prompts
LanguageEmacs LispC
LicenseGPL 3.0 or laterISC and BSD 2-Clause and BSD 3-Clause and BSD 4-Clause
Latest version0.4014.9.25
LinuxNativeNative
macOSNativeNative
WindowsThrough WSLThrough WSL
BSDNativeNative
AndroidThrough TermuxNo
IMAPThrough a separate toolYes
POP3Through a separate toolYes
SMTPYesYes
JMAPNoNo
MaildirYesYes
mboxNoYes
notmuchYesNo
OpenPGPYesNo
S/MIMEYesYes
OAuth2 sign-invia scriptvia script
ThreadsYesYes
Searchnotmuch Xapian full-text search with tagsbuilt-in message specifications and the search command; IMAP SEARCH on IMAP folders
HTML mailbuilt-in, rendered with the Emacs shr librarybuilt-in tag-soup filter or external viewer via mailcap
MouseYesNo
Multiple accountsYesYes
Offline usefull; reads a local Maildir synced by mbsync or OfflineIMAPIMAP cache with disconnected mode
Calendarshows text/calendar parts; no invitation repliesNo
Contactsaddress completion from the notmuch indexaliases via the alias command
Vim-style keysNoNo
ConfigurationEmacs Lisp in init.el plus the notmuch config file~/.mailrc command file

Which to choose

Choose Notmuch Emacs interface for

  • Tag-based organization with fast full-text search over all local mail.
  • Shows a whole thread in a single buffer.
  • Handles PGP/MIME and S/MIME signatures and decryption through notmuch.

Watch out for

  • No built-in IMAP; needs mbsync or a similar sync tool.
  • Custom tags stay in the local index; only standard flags such as unread and replied reach the IMAP server.
  • Requires Emacs and some Emacs Lisp to configure.

Install Notmuch Emacs interface

Choose S-nail for

  • Drop-in POSIX mailx, so it works in existing shell scripts and cron jobs.
  • Built-in SMTP, POP3 and IMAP with TLS; no separate sync or send tool needed.
  • S/MIME signing and encryption are built in.

Watch out for

  • Line-oriented prompt instead of a full-screen interface.
  • No built-in OpenPGP; upstream documents a gpg pipe workaround only.
  • IMAP support is kept at an older code level and upstream advises care.

Install S-nail

Questions

What is the difference between Notmuch Emacs interface and S-nail?

Notmuch Emacs interface is a mail client that runs inside Emacs; S-nail is a command-line program. Only Notmuch Emacs interface has built-in notmuch. Only S-nail has built-in IMAP, POP3 and mbox.

Which runs on Windows, Notmuch Emacs interface or S-nail?

On Windows, Notmuch Emacs interface runs through WSL. On Windows, S-nail runs through WSL.

See also: Notmuch Emacs interface alternatives, S-nail alternatives.