Terminal Email

Sup

TUIEmail client

Curses email client in Ruby built around threads, labels and fast full-text search over local mail.

Sup indexes Maildir and mbox sources with Xapian and shows mail as threads that can be labeled, archived and muted, in the style of Gmail. It suits people with large mail archives who search more than they file. It reads local mail only, so it is paired with a sync tool such as isync for IMAP and a sendmail-compatible program such as msmtp for sending. The maintainers focus on keeping the current feature set working rather than adding major features.

Type
Email client
Interface
Full-screen terminal interface
Systems
Runs on Linux and macOS, on Windows through WSL, builds from source on BSD. Not available for Android.
Language
Ruby
License
GPL 2.0 or later
Latest version
1.4
Maintained
Yes
Website
supmua.dev
Source
github.com/sup-heliotrope/sup
Documentation
github.com

Install

SystemSupportInstall
LinuxNative
aptsudo apt install sup-mail
RubyGemsgem install sup
macOSNative
RubyGemsgem install sup
WindowsThrough WSL
WSLsudo apt install sup-mail

Unix-only; use WSL.

BSDBuild from source
RubyGemsgem install sup

No ports package; install the Ruby gem.

AndroidNot supported-

Protocols and features

Protocols
ProtocolSup
IMAPNo
POP3No
SMTPThrough a separate tool
JMAPNo
MaildirYes
mboxYes
notmuchNo
Features
FeatureSup
OpenPGPYes
S/MIMENo
OAuth2 sign-inNo
ThreadsYes
SearchXapian full-text index with a query language
HTML mailvia the mime-decode hook and an external viewer such as w3m
MouseNo
Multiple accountsYes
Offline usereads local Maildir or mbox; sync with isync or OfflineIMAP
CalendarNo
Contactstracks recent contacts automatically
Vim-style keysYes
Configuration~/.sup/config.yaml and ~/.sup/sources.yaml, plus Ruby hooks

Pros and cons

Pros

  • Fast full-text search over large archives
  • Gmail-style labels, archiving and muting of threads
  • Ruby hooks for custom behavior

Cons

  • 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

Use Sup 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.

~/.sup/config.yaml
# Sup reads local mail. Sync it from imap.forwardemail.net with isync (see the isync entry) into ~/Mail/forwardemail,
# send with msmtp (see the msmtp entry), then add the source once:
#   sup-add maildir:$HOME/Mail/forwardemail/INBOX
---
:accounts:
  :default:
    :name: Your Name
    :email: you@example.com
    :alternates: []
    :sendmail: msmtp -a forwardemail --read-envelope-from -t
    :gpgkey: ""
ProtocolServerPortSecurity
IMAPimap.forwardemail.net993SSL/TLS
POP3pop3.forwardemail.net995SSL/TLS
SMTPsmtp.forwardemail.net465SSL/TLS
SMTPsmtp.forwardemail.net587STARTTLS

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 Sup

All Sup alternatives

Questions

Does Sup work on Windows?

Not natively. It runs in Windows Subsystem for Linux (WSL). Unix-only; use WSL.

Does Sup support IMAP?

No. Sup does not use IMAP.

Is Sup open source?

Yes, under the GPL 2.0 or later.

How do I use Sup with Forward Email?

Use the config in the Forward Email section on this page, saved as ~/.sup/config.yaml, and replace the address and password with your own.

Sources