How I do mail (Part 2)

Posted on 2023-02-01 in misc • 2 min read

Almost a year ago, I had posted that I had been happily using mutt and davmail for all my mail. I was mostly happy with it, but doing calendar appointments with people, getting HTML emails, and too many people sending me screenshots, I ended up going back to Thunderbird.

Another thing that forced me is that my company email started enforcing "modern auth". Davmail supports it, but it got annoying about pop-ups that would show up overnight, and then pop up a new one each time mail was checked (so every 5 minutes in my case). I didn't want to run a desktop/tray-based thing to do the work, so I tried to set up the headless daemon, and it just became a pain to manage. That's mostly on my setup, and not Davmail though...I still highly recommend Davmail, it is freaking awesome!

Thunderbird is a great mail client, but it's not the best for customization. I tried to use Claws mail. It had the customization, but is single-threaded and can only do one thing at a time. Annoyingly so. Like your client just stops while you are trying to send an email, and you have to wait for it to be sent. To be fair, Mutt kind of does the same thing, but for some reason it doesn't feel weird in the console. It feels weird in a GUI.


One of the driving factors for me doing Mutt in the first place was the scriptability of pushing mail into a task easily. Claws has "actions", which is perfect for this kind of thing. I can find NOTHING in thunderbird that works like that. One of the key components is getting some ID for the mail that I want to link back to. For that, I am using cbthunderlink.

To make this work better for my purposes, I created a custom "configurable link" in cbthunderlink with the content "$subject$" cbthunderlink://$cblink$. Then I created a little tb2task function that splits that link and creates a task with the subject as the task description, and the link as an annotation to that task. So in operation, it's a 2 step process where in thunderbird I hit "ctrl-alt-3" to get the custom link...then I just go to a terminal and type tb2task <shift-ctrl-v> (where shift-ctrl-v pastes the stuff that the ctrl-alt-3 put in the clipboard).

It's not as nice as hitting "T" on a message in my inbox like I had with mutt, but it's "ok".