Mastodon

My geeky email setup explained to humans

February 16, 2025
Tags:

Being an ancient mariner in the virtual ocean of the Big Network, I started using emails at the very beginning of the Internet era (at least here in Italy) on a SunOS pizza box, which I used at the time as my primary workstation. That was a giant step ahead for me because my first serious use of email in 1991 was on a Digital VT220 terminal under VMS OS and its MAIL client (who remembers the old times of DCL?). At that time, I started using Elm as my Mail User Agent, a software that stopped being developed in the first few years of this millennium.

In 1995, a new attractive MUA started to be developed, and it fascinated my geek inclination: as any smart enough reader can well imagine, it was Mutt, and as anyone knows, it still sucks less as a MUA, and it is nonetheless being developed after almost thirty years. Nowadays, colleagues and friends are always perplexed when they see me still reading and answering emails on a terminal in text mode, but I never found serious motivation to change my email workflow and prefer a graphical MUA instead. I occasionally use a smartphone with K-Mail (now Thunderbird), but I like reading and writing emails on one of my GNU/Linux PCs.

First of all, my mailboxes are read by or received in a single box (let's call it the Collector, with appropriate local backup), permanently connected to the network. It also provides SMTP/IMAP services and a last-resort spam filtering capability, thanks to Spamassassin+Razor and Procmail rules. Mailboxes are provided by third-party services, including (but not exclusively) a series of GMail and MS accounts, and that box is able to communicate with each of them to regularly read new messages, thanks to Fetchmail. Any of my PCs can then connect with the Collector to read remotely archived emails via IMAP and send answers and new messages through any of the legitimate SMTP servers associated with each email account I use: that is because of the SPF/DKIM specs used for all email boxes nowadays.

The Collector archives and rotates multiple mailboxes monthly and yearly, including the main one, where all urgencies are automatically routed when they arrive. I use multiple email accounts for mailing list subscriptions, so many messages are automatically routed off the main track on purpose. For ages, many bad MUAs out there only send HTML emails, so I occasionally use some graphical helper to browse some of them. The result is a long period archive of emails over the last 30 years that I occasionally purge of the mailing list messages to reduce the storage load. Eventually, I use Notmuch to dive into tons of Maildir mailboxes accumulated on the Collector, and that is more than enough because an ancient message is rarely required in my experience.

Thirty years of using Fetchmail, Procmail, Dovecot, Exim, and Mutt seem more than enough to explore new ways of managing emails, but my laziness prevents me from keeping an eye on my second choice, which would be Emacs with mu4e and offlineimap or sync to read emails in disconnected mode when required. Note that Mutt has caching capability, so the initial load of the mailboxes is a fast enough experience.

Finally, I found it helpful in my setup to use other interesting tools, such as lbdb, to collect senders' addresses automatically and have them at my fingertips. Recently, the Collector and all clients started using Simon Robinson's nice email-oauth2-proxy as an intermediate service to access 2FA-enabled email accounts, a reasonable complication of the original setup.

That said, any sane geek should rigorously use a personal domain and email account to avoid being locked in the use of a third-party domain and storage limitations: there is nothing worse than having to change tons of personal contact emails registered in dozens of services because of the dropping of someone else domain (or even worse, being exposed to their changes in policies, features, and limitations). That has been my way in the last 30 years or so. For the same reason, using any webmail system to manage emails is neither practical nor scalable.

Yes, I know, I'm a damn old fashioned geek, but this is the Way.