mirror of
https://github.com/pimalaya/himalaya.git
synced 2026-06-17 13:17:55 +08:00
585fa77af5
* update main screenshot readme * add contributing file * update changelog * doc: remove roadmap from reame * improve main comments * improve arg and handler logs * fix multiple recipients issue (#288) * add notify-query config option (#289) * set up end-to-end encryption (#287) * init basic pgp encrypt/decrypt * add small rpgp poc for (#286) * improve decrypt parts logs * add pgp-decrypt-cmd to config * add pgp-encrypt-cmd to config * init pgp signature * improve decrypt part readability * improve encrypt multipart, remove sign * remove unused md5 lib * add encrypt arg to reply and forward commands * fix typos * prepare v0.5.5
87 lines
3.4 KiB
Markdown
87 lines
3.4 KiB
Markdown
# 📫 Himalaya
|
|
|
|
Command-line interface for email management
|
|
|
|
*The project is under active development. Do not use in production before the `v1.0.0`.*
|
|
|
|

|
|
|
|
## Motivation
|
|
|
|
Bringing emails to the terminal is a *pain*. First, because they are sensitive data. Secondly, the existing TUIs ([Mutt](http://www.mutt.org/), [NeoMutt](https://neomutt.org/), [Alpine](https://alpine.x10host.com/), [aerc](https://aerc-mail.org/)…) 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
|
|
|
|
[](https://formulae.brew.sh/formula/himalaya)
|
|
[](https://crates.io/crates/himalaya)
|
|
|
|
```sh
|
|
curl -sSL https://raw.githubusercontent.com/soywod/himalaya/master/install.sh | PREFIX=~/.local sh
|
|
```
|
|
|
|
*See the [wiki](https://github.com/soywod/himalaya/wiki/Installation:from-binary) for other installation methods.*
|
|
|
|
## Configuration
|
|
|
|
```toml
|
|
# ~/.config/himalaya/config.toml
|
|
|
|
name = "Your full name"
|
|
downloads-dir = "/abs/path/to/downloads"
|
|
signature = """
|
|
Cordialement,
|
|
Regards,
|
|
"""
|
|
|
|
[gmail]
|
|
default = true
|
|
email = "your.email@gmail.com"
|
|
|
|
imap-host = "imap.gmail.com"
|
|
imap-port = 993
|
|
imap-login = "your.email@gmail.com"
|
|
imap-passwd-cmd = "pass show gmail"
|
|
|
|
smtp-host = "smtp.gmail.com"
|
|
smtp-port = 465
|
|
smtp-login = "your.email@gmail.com"
|
|
smtp-passwd-cmd = "security find-internet-password -gs gmail -w"
|
|
```
|
|
|
|
*See the [wiki](https://github.com/soywod/himalaya/wiki/Configuration:config-file) for all the options.*
|
|
|
|
## Features
|
|
|
|
- Mailbox listing
|
|
- Email listing and filtering
|
|
- Email composition based on `$EDITOR`
|
|
- Email manipulation (copy/move/delete)
|
|
- Multi-accounting
|
|
- IDLE mode for real-time notifications
|
|
- Vim plugin
|
|
- Completions for bash/zsh/fish
|
|
- JSON output
|
|
- …
|
|
|
|
*See the [wiki](https://github.com/soywod/himalaya/wiki/Usage:msg:list) for all the features.*
|
|
|
|
## Sponsoring
|
|
|
|
[](https://github.com/sponsors/soywod)
|
|
[](https://www.paypal.com/paypalme/soywod)
|
|
[](https://ko-fi.com/soywod)
|
|
[](https://www.buymeacoffee.com/soywod)
|
|
[](https://liberapay.com/soywod)
|
|
|
|
## Credits
|
|
|
|
- [IMAP RFC3501](https://tools.ietf.org/html/rfc3501)
|
|
- [Iris](https://github.com/soywod/iris.vim), the himalaya predecessor
|
|
- [isync](https://isync.sourceforge.io/), an email synchronizer for offline usage
|
|
- [NeoMutt](https://neomutt.org/), an email terminal user interface
|
|
- [Alpine](http://alpine.x10host.com/alpine/alpine-info/), an other email terminal user interface
|
|
- [mutt-wizard](https://github.com/LukeSmithxyz/mutt-wizard), a tool over NeoMutt and isync
|
|
- [rust-imap](https://github.com/jonhoo/rust-imap), a rust IMAP lib
|