Alpine Mail - last Rendez-vous

09.04.2022 | 15:55 | Richard | Richard

Skladba Last Rendez-vous je "majsterštykom" jedného z mojich obľúbených hudobníkov - Jean Michel Jarrea. Clivé tóny saxofónu boli nahrávané na palube raketoplánu Challengera zosnulým Ronom McNairom.

A ja si dávam jedno z posledných stretnutí s poštovým klientom Alpine.

Práve teraz sa dážď zmenil na jemný sneh (na pol hodiny, pravda). Do takéhoto počasia akosi pasuje sadnúť si na okenný parapet, napríklad s čajom či grogom, pozerať na občasne prechádzajúce auto či uzimených predklonených ľudí, počúvať melancholickú hudbu a spomínať na dlhoročný vzťah. S poštovým programom. Áno, aj taký vzťah existuje.

1 TUI je mnoho

Textových nástrojov na prácu s e-mailami je mnoho (vtipná spomienka na "Kandidátov je veľa, premiér iba jeden" ☺).

Núdzovo sa dajú pozrieť správy aj v telnete, napr. ich čítať prístupom na port 110:

[200124 1147 richard ~]$ telnet <doména> 110

Trying 217.67.30.194...
Connected to <doména>.
Escape character is '^]'.
+OK Dovecot ready.

user <užívateľské meno>
+OK

pass <užívateľské heslo>
+OK Logged in.

list
+OK 1 messages:
1 70075

retr 1

<samotný email>

Isteže, je to dosť obskurný spôsob na čítanie e-mailov - ale na druhej strane sa dá napríklad skriptom:

((echo "USER <užívateľské meno>"; sleep 3;  
echo "PASS <užívateľské heslo>"; sleep 3;  
echo "list"; sleep 3; 
echo "quit" ) | telnet <doména> 110) > vystup.txt 

získať nejaký výstup a z toho napr. sed-om získať počet správ.
Samozrejme, plain-text heslo v skripte má svoje bezpečnostné úskalia ☺.

Ďalšie známe nástroje pre prácu v textovom termináli sú mutt, alpine/re-alpine, elm, cone či GNUS, mu4e, wanderlust pod GNU Emacs-om.

Napriek tomu, že som aktívnym užívateľom Emacs-u, k jeho poštovým klientom (často spojenými s news čítačkou) som sa dostával len pomaly. Odradzovali ma najmä komplikované tutoriály. Toto sa mi však podarilo úspešne prekonať a výhľadovo o tom napíšem pár riadkov.

Hanba-nehanba, roky som bol spokojným užívateľom Alpine. Nie toho krásneho športiaku A110 (či jeho atraktívneho nasledovníka), alebo rovnomenného tímu vo F1 či WEC. Ani si to, prosím, nemýliť s Alpine Linux-om.

Ale iste, okolo roku 2005 som skúsil i GUI. Mizerná koketéria s Claws Mail. Jasné, Claws robil čo mal, prijímal a odosielal maily, bol nenáročný a bol rýchly. Ale mal som na neho nároky, vyplyvajúce z pohodlia a možností Alpine. Proste som nevedel pracovať dostatočne rýchlo (…ale možno som to i priskoro vzdal).

Teraz Alpine opúšťam a cítim mix nostalgie, výčitiek a spomienok, ako keď človek opúšťa auto, ktoré mu dobre slúžilo.

Ale prečo vlastne?

Na "vine" je Emacs. Zvykol som si na neho do takej miery, že ho používam na všetko, okrem CAD-u a občasného prehliadaniu webov, na ktorých je veľa skriptov (napr. e-shop či slovensko.sk) a ktoré vstavaný eww prehliadač nezvláda. A hnevá ma, ak musím odísť z pohodlia zaužívaných skratiek, postupov a vôbec celej filozofie ovládania, rozhodovania a automatizácie. Vyhýbam sa nepríjemným ľuďom, politickým stranám, vajíčkam (okrem schovaných v koláčoch) a nenažratým programom a všetko sa mi takéto, mimo Emacsu, proste javí.

Ale možno za tými riadkami je i tá smutná hudba.

Ešte dlhujem odpoveď na nevypovedanú otázku: Prečo vlastne v dnešnej dobe používať poštového klienta s textovým rozhraním? Dôvodov je niekoľko, zrejme však ide o ovládanie výlučne klávesnicou, nenáročnosť na hardvérové zdroje a motivácia robiť čo najviac v termináli.

 

2 Alpine detailnejšie

Ako taký Alpine vyzerá? Nuž takto, podľa mňa pekne, retro, a samozrejme nastaviteľne:

Obr. č. 1: Úvodné menu Alpine

Obr. č. 2: Dole, po vzore GNU NANO, je nápoveda s použiteľnými skratkami

Celá konfigurácia prostredia, nastavenie kônt (samozrejme, Alpine vie pracovať s viacerými kontami naraz), rolí (čo sú predvolené správania podľa prijímateľa či odosielateľa, ktoré umožňujú aj filtrovať napr. podľa X-Spam-Level pattern zo SpamAssasin-a) sa môže vykonať z prostredia programu, alebo editovaním .pinerc (názov súboru napovedá, že predchodcom Alpine bol poštový program Pine).
.pinerc vyzerá nejako takto:

# List of programs to open Internet URLs (e.g. http or ftp references).
url-viewers="/usr/bin/palemoon"

# A list of folders that should be left open once opened (INBOX is implicit)
stay-open-folders=

# Sets the time in seconds that Alpine will attempt to open a network
# connection when checking for new unseen messages in an incoming folder.
#  The default is 5.
incoming-check-timeout=

# Sets the approximate number of seconds between checks for unseen messages
# in incoming folders. The default is 180.
incoming-check-interval=600

# Sets the approximate number of seconds between checks for unseen messages
# for other than local or IMAP folders. The default is 180.
incoming-check-interval-secondary=

# List of incoming folders to check for unseen messages. The default if left
# blank is to check all incoming folders.
incoming-check-list=

# Specifies the number of dead letter files to keep when canceling.
dead-letter-files=5

Obr. č. 3: Nastavenia pohodlne pomocou prepínačov či dialógových polí

 

3 Čo mi vyhovovalo

Na Alpine (v porovnaní napr. s poštovými programami pre GNU Emacs či Mutt) sa mi páči, že konfigurácia je pomerne jednoduchá. Na webe je niekoľko návodov, ale na drvivú väčšinu nastavení návod netreba. Program na príjem a odosielanie správ (POP3, IMAP4, SMTP…) nepotrebuje externý program ako sendmail či postfix. Ide to proste out-of-box.

Páči sa mi, že je aktívne vyvíjaný a existujú aj nezávisle patch-e (viď http://alpine.x10host.com/alpine/), ktoré pridávajú do programu dodatočnú funkcionalitu.

Ako externý kontrolór pravopisu slúži aspell (takže jeden slovník doplnený v Alpine sa použije aj inde).

Na editovanie tela správy sa používa Pico, čo je vlastne predchodca GNU Nano, a Nano pozná každý (lebo i tam, kde nie je iný editor, Nano je vždy poruke), ale je možná voľba i editora iného.
Prepnutie sa do iného editora môže byť po stlačení C-_ alebo automaticky, ak sa kurzor nachádza v oblasti tela textu.

Podpora aj 256-farebných terminálov.

Obr. č. 4: Definovanie farieb

Pomerne dôkladná prispôsobiteľnosť.

Farebné odlíšenie úrovní odpovedí.

Je to bežný program (asi) v každej distribúcii.

Má niečo cez 6,4 MB! To si zaslúžili viac výkričníkov. Tu sú: !!!!!!!!. To taký Thunderbird má cez 210 MB. Asi toho dokáže viac, ale o koľko viac?

HTML správy dokáže obstojne renderovať, čo sa týka rezov písma. Inak sa môže použiť externý program.

Pri ukladaní správy do iného priečinka je možné niektoré časti správy zmazať. Takže kdejaké grafické podpisy (logá v pätičke), alebo zanorené správy je možné označiť na odstránenie a pri ukladaní sa (prekvapivo) odstránia.

Obr. č. 5: Tvorenie emailovej správy

 

4 Čo by sa mohlo zlepšiť

Čítanie HTML správ je v pohode, ale ich tvorba nie je možná. Nevravím, že to je nevyhnutné, zatiaľ som si vždy poradil s plain-textom. Skôr by ma potešila takáto funkcionalita: napísal by som správu v markdown-e, ktorú by napr. pandoc prekonvertoval ako html, a toto html by som síce poslal ako prílohu, ale GUI klient prijímateľa by html prílohu chytro zobrazil, bez potreby sťahovať onú prílohu.
Myslím, že to nejde, hoci nemám GUI klienta - ale minimálne webmailové rozhrania to takto nedokážu.

Používaným e-mailovým formátom programu je mailbox. To znamená, že jeden adresár (priečinok, alebo ťažko povedať, ako nazvať zoskupené emaily) vystupuje ako jeden súbor. Funguje to dobre, a aj tisíce mailov sa otvárajú a filtrujú okamžite, a napriek tomu, že som nikdy s tým nemal najmenší problém, mám určite obavy, že ak dôjde k jeho čiastočnému poškodeniu (z ľubovoľného dôvodu), tak či bude možná nejaká náprava.

(Pozn.: Teraz som sa dočítal, že je na to patch. Ešteže píšem tento blogový príspevok ☺).

 

5 Záver

Čo viac dodať k poštovému programu? V duchu unixovej filozofie robí to a len to, čo má. Nie je to plánovač úloh ani nástroj na tvorbu myšlienkových máp alebo komunikátor v reálnom čase.

Ale o mojich cca 11 GB mailových sa staral dokonale. Až tak, že som ho spúšťal v ansi termináli pod Emacsom (keďže nešiel v e-shelli), čo mi sprvu bolo proti srsti, najmä kvôli kolidovaniu klávesových skratiek (čo sa vyriešilo prefixami C-c a C-x). Dokonca som uvažoval, že by som Alpine patchol a dal mu Emacsove skratky na všetko.

Ale potom som sa rozhodol potrebnú energiu venovať natívnemu mailovému systému Emacsu. Ten však preverí až čas. A Alpine bol dobre preverený cca 20 rokmi.

A aký je Váš obľúbený poštový program? Ustrnuli ste v čase, zvyku, alebo pohodlia klikacích programov? Či ste to všetko zavrhli a ostali pri nejakom obskurnom webmaili?

    • RE: Alpine Mail - last Rendez-vous 11.04.2022 | 15:47
      Avatar vxmery Mint 21.3 Cinnamon  Používateľ

      Na úvod zas pekná pesnička a potom skok do minulosti. U mňa to s klientami nevyzerá nijak exoticky. V práci Outlook, doma Thunderbird. A slovo "kônt" som tuším počul prvý krát :)