Himalaya: Textový E-mailový Klient pro Linux

Himalaya: Textový E-mailový Klient pro Linux

V dnešní době, kdy elektronická komunikace hraje klíčovou roli v našich každodenních aktivitách, se minimalistické a efektivní nástroje stávají nepostradatelnými. Himalaya, textový e-mailový klient napsaný v jazyce Rust, je perfektní volbou pro uživatele, kteří preferují příkazovou řádku a chtějí maximalizovat produktivitu. Tento klient je navžen s důrazem na jednoduchost, flexibilitu a bezpečnost. Nabízí plně funkční správu e-mailů, od jejich příjmu a odesílání, až po podporu pokročilých funkcí, jako jsou PGP šifrování a OAuth 2.0.


Hlavní vlastnosti Himalaya

Himalaya přináší minimalistický přístup ke správě e-mailů, aniž by obětovala pokročilé funkce, které vyžadují moderní e-mailové protokoly. Mezi nejdůležitější vlastnosti patří:

  • Podpora více účtů: Uživatelé mohou spravovat několik e-mailových účtů pomocí jednoho konfiguračního souboru.
  • Kompozice zpráv: Psaní a editace e-mailů pomocí obľíbeného textového editoru (např. Vim, Nano nebo Emacs).
  • Podpora IMAP, Maildir a Notmuch: Možnost pracovat s e-maily uloženými na serveru, v lokálním adresáři nebo ve vyhledávacím systému Notmuch.
  • Odesílání e-mailů: Pomocí protokolu SMTP nebo lokálního Sendmail.
  • PGP šifrování: Zajištěná komunikace pro soukromé a citlivé informace.
  • OAuth 2.0: Moderní autentizace s podporou služeb jako Gmail nebo Outlook.
  • Vysoce konfigurovatelné: Možnost přizpůsobit klient svým potřebám pomocí snadno upravitelných konfiguračních souborů.

Navíc Himalaya podporuje rozšíření pomocí hooků, což umožňuje spouštění vlastních skriptů v různých fázích zpracování e-mailů.


Proč používat Himalaya?

Minimalismus a rychlost

Na rozdíl od grafických klientů, jako je Thunderbird nebo Evolution, Himalaya spotřebovává minimum zdrojů a může běžet i na velmi starých systémech. Uživatelé, kteří ocení jednoduchý textový rozhraní, budou z Himalaya nadšeni.

Bezpečnost

Díky podpoře PGP šifrování a OAuth 2.0 je Himalaya vhodný nejen pro běžné uživatele, ale i pro ty, kteří pracují s citlivými daty.

Flexibilita

S možností konfigurovat klient podle vlastních potřeb a používat vlastní hooky je Himalaya ideální volbou pro pokročilé uživatele a administrátory.


Instalace Himalaya

Himalaya lze nainstalovat na různé platformy a distribuce Linuxu. Zde je oficiální projekt na Githubu. Detailní postup instalace a konfigurace:

1. Instalace pomocí předkompilovaných binárních souborů

Tato metoda je jednoduchá a vhodná pro většinu uživatelů.

Instalace s právy root:

curl -sSL https://raw.githubusercontent.com/pimalaya/himalaya/master/install.sh | sudo sh

Instalace jako běžný uživatel:

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

2. Instalace pomocí Cargo (Rust)

Cargo je balíčkovací systém pro Rust. Pokud máte Rust nainstalovaný, můžete Himalaya nainstalovat přímo:

Standardní instalace:

cargo install himalaya

Instalace pouze s podporou IMAP:

cargo install himalaya --no-default-features --features imap

Instalace pomocí Cargo je skvělá volba, pokud chcete mít nejnovější verzi Himalaya.

3. Instalace na Arch Linuxu

Na Arch Linuxu je Himalaya dostupná v komunitním repozitáři a AUR:

Z komunitního repozitáře:

pacman -S himalaya

Z AUR:

yay -S himalaya-git

4. Instalace na Fedoře/CentOS/RHEL

Pro distribuce založené na RPM lze využít repozitář Copr:

dnf copr enable atim/himalaya
dnf install himalaya

5. Instalace na macOS a Windows

Pro macOS:

brew install himalaya

Pro Windows:

scoop install himalaya

Konfigurace Himalaya

Před prvním spuštěním Himalaya je potřeba nastavit konfigurační soubor, který obsahuje informace o vašich e-mailových účtech a dalších preferencích. Tento soubor se ukládá do adresáře ~/.config/himalaya/config.toml a je napsán v jazyce TOML.

Vytvoření konfiguračního souboru

Pro začátek můžete použít ukázkový konfigurační soubor:

mkdir -p ~/.config/himalaya
nano ~/.config/himalaya/config.toml

Struktura konfiguračního souboru

Základní konfigurační soubor může vypadat následovně:

# Obecné nastavení
default = "work"

# Účty

[accounts.work]

email = „vasemail@domena.cz“ name = „Vaše jméno“ imap-host = „imap.domena.cz“ imap-port = 993 imap-login = „vaslogin“ imap-passwd-cmd = „pass show email/work“ smtp-host = „smtp.domena.cz“ smtp-port = 465 smtp-login = „vaslogin“ smtp-passwd-cmd = „pass show email/work“ # Notmuch (volitelné) notmuch-db = „~/.mail“

Vysvětlení klíčových parametrů:

  • default: Výchozí e-mailový účet (vhodné při použití více účtů).
  • email a name: Vaše e-mailová adresa a jméno, které bude zobrazováno příjemcům.
  • imap-host a smtp-host: Adresy IMAP a SMTP serverů.
  • imap-passwd-cmd a smtp-passwd-cmd: Příkaz pro načtení hesla (např. z nástroje pass nebo environmentální proměnné).

Podpora OAuth 2.0

Pokud váš e-mailový poskytovatel (např. Gmail nebo Outlook) vyžaduje OAuth 2.0, použijte nástroje jako gmx oauth pro získání přístupového tokenu a jeho integraci do konfiguračního souboru.

Příklad pro Gmail:

[accounts.gmail]
email = "vasemail@gmail.com"
name = "Vaše jméno"

imap-host = "imap.gmail.com"
imap-port = 993
imap-login = "vasemail@gmail.com"
imap-passwd-cmd = "gmx oauth imap"

smtp-host = "smtp.gmail.com"
smtp-port = 465
smtp-login = "vasemail@gmail.com"
smtp-passwd-cmd = "gmx oauth smtp"

Používání Himalaya

Po nastavení konfigurace je klient připraven k použití. Himalaya nabízí jednoduché příkazy pro příjem, odesílání a správu e-mailů.

Kontrola doručených zpráv

Chcete-li zobrazit své doručené zprávy:

himalaya inbox

Pro zobrazení konkrétní zprávy:

himalaya read <ID_zprávy>

Odesílání e-mailů

K odeslání nové zprávy použijte příkaz:

himalaya send

Tento příkaz otevře váš oblíbený editor, kde můžete napsat text e-mailu. Příklad konfigurace editoru (v souboru ~/.config/himalaya/config.toml):

editor = "vim"

Filtrování zpráv

Pomocí příkazu list můžete filtrovat e-maily podle různých parametrů:

himalaya list --unread

Přílohy

Pro připojení příloh k e-mailu:

himalaya send --attach /cesta/k/souboru

Automatizace pomocí hooků

Himalaya umožňuje spouštění vlastních skriptů před nebo po konkrétních akcích. Například, chcete-li automaticky zálohovat všechny příchozí e-maily, vytvořte hook:

  1. Vytvořte adresář pro hooky:
mkdir -p ~/.config/himalaya/hooks
  1. Napište skript pro hook (např. backup.sh):
#!/bin/bash
cp -r ~/.mail/backup $(date +%F)_backup
  1. Upravte konfiguraci, aby spouštěla hook:
[hooks]
post-fetch = "~/.config/himalaya/hooks/backup.sh"

Příklady pokročilého použití

Integrace s cron

Chcete-li automaticky kontrolovat nové e-maily každých 15 minut, přidejte následující úlohu do crontabu:

*/15 * * * * himalaya fetch

Notifikace přes dunst

Pro notifikace o nových e-mailech použijte kombinaci Himalaya a nástroje dunst:

himalaya list --unread | xargs -I {} notify-send "Nový e-mail: {}"

Závěr

Himalaya je perfektní nástroj pro uživatele, kteří hledají rychlý, bezpečný a minimalistický e-mailový klient. Díky širokým možnostem konfigurace, podpoře moderních funkcí a snadné integraci s dalšími nástroji nabízí tento klient ideální řešení pro správu e-mailů přímo z příkazové řádky. Bez ohledu na to, zda jste administrátor, vývojář nebo prostě milovník příkazové řádky, Himalaya vám poskytne vše potřebné.