himalaya icon indicating copy to clipboard operation
himalaya copied to clipboard

CLI to manage emails

Himalaya receives financial support from the NLnet foundation! 🀯✨🌈

See the discussion for more information.

πŸ“« Himalaya

Command-line interface for email management

The project is under active development. Do not use in production before the v1.0.0.

image

Motivation

Bringing emails to the terminal is a pain. First, because they are sensitive data. Secondly, the existing TUIs (Mutt, NeoMutt, Alpine, aerc…) are really hard to configure. They require time and patience.

The aim of Himalaya is to extract the email logic into a simple (yet solid) CLI API that can be used directly from the terminal, from scripts, from UIs… Possibilities are endless!

Installation

homebrew crates

curl -sSL https://raw.githubusercontent.com/soywod/himalaya/master/install.sh | PREFIX=~/.local sh

See the wiki for other installation methods.

Configuration

# ~/.config/himalaya/config.toml

name = "Your full name"
downloads-dir = "/abs/path/to/downloads"
signature = """
Cordialement,
Regards,
"""

[gmail]
default = true
email = "[email protected]"

imap-host = "imap.gmail.com"
imap-port = 993
imap-login = "[email protected]"
imap-passwd-cmd = "pass show gmail"

smtp-host = "smtp.gmail.com"
smtp-port = 465
smtp-login = "[email protected]"
smtp-passwd-cmd = "security find-internet-password -gs gmail -w"

See the wiki for all the options.

Features

  • Mailbox listing
  • Email listing and searching
  • Email composition based on $EDITOR
  • Email manipulation (copy/move/delete)
  • Multi-accounting
  • Account listing
  • IMAP, Maildir and Notmuch support
  • IMAP IDLE mode for real-time notifications
  • PGP end-to-end encryption
  • Vim and Emacs plugins
  • Completions for various shells
  • JSON output
  • …

See the wiki for all the features.

Sponsoring

github paypal ko-fi buy-me-a-coffee liberapay

Credits