Terminal Email

Alpine vs Gnus

Alpine: Menu-driven terminal email client descended from Pine, with built-in help, setup screens and native Windows builds.
Gnus: Mail and news reader built into GNU Emacs, with back ends for IMAP, POP3, local mail folders and NNTP.

Differences

Side by side

AlpineGnus
InterfaceFull-screen terminal interfaceRuns inside Emacs
LanguageCEmacs Lisp
LicenseApache 2.0GPL 3.0 or later
Latest version2.265.13 (bundled with Emacs 31.1)
LinuxNativeNative
macOSNativeNative
WindowsNativeNative
BSDNativeNative
AndroidThrough TermuxThrough Termux
IMAPYesYes
POP3YesYes
SMTPYesYes
JMAPNoNo
MaildirNoYes
mboxYesYes
notmuchNoThrough a separate tool
OpenPGPvia pluginYes
S/MIMEYesYes
OAuth2 sign-inYesvia plugin
ThreadsYesYes
Searchbuilt-in search and message selection; server-side for IMAPgnus-search: IMAP SEARCH, or notmuch, mu, mairix and other local indexers
HTML mailbuilt-in HTML-to-text renderingbuilt-in, rendered with the Emacs shr library
MouseYesYes
Multiple accountsYesYes
Offline useNovia the Gnus agent or local Maildir back ends
CalendarYesreplies to invitations with gnus-icalendar
Contactsbuilt-in address book; LDAP lookupvia BBDB or EUDC
Vim-style keysNoNo
Configurationbuilt-in setup screens, stored in .pinercEmacs Lisp in init.el or ~/.gnus.el

Which to choose

Choose Alpine for

  • Command list on every screen and built-in help for each option
  • Official native Windows builds alongside Unix packages
  • Built-in XOAUTH2 for Gmail, Outlook and Yahoo, and built-in S/MIME

Watch out for

  • PGP needs external display and sending filters
  • No Maildir, notmuch or JMAP support
  • Last stable release is 2.26; newer work is in alpha builds

Install Alpine

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.

Install Gnus

Questions

What is the difference between Alpine and Gnus?

Alpine is a full-screen terminal client; Gnus is a mail client that runs inside Emacs. Only Gnus has built-in Maildir. Alpine is written in C; Gnus in Emacs Lisp.

Which runs on Windows, Alpine or Gnus?

On Windows, Alpine runs natively. On Windows, Gnus runs natively.

See also: Alpine alternatives, Gnus alternatives.