So as part of my plans for the new year is consolidating my tools. The first thing that I’ve done is start to use Emacs and Mu4e to handle all my email.
The first thing I set up is Offlineimap. This pulls mail down from all three of my accounts ( personal, domain, and work ) into maildirs that Mu can index.
Here’s what the config looks like for a single account:
There’s just a few things here to point out. The pythonfile setting lets you provide a Python file to define methods to use in the configuration. This Python file in particular is one I found online somewhere, and I’ve put up in a Gist so you can use it too. Anyways, this one grabs the username and password from my Gnome Keyring – which is nice, because then it doesn’t live in plain-text in a config somewhere.
To store the password, I use a separate script that I also found online ( and also put in a Gist ) to store usernames and passwords in the keyring.
To send email, I’ve got a Postfix configuration that lets me specify “localhost” as the SMTP server, and then Postfix handles actually sending them. I like this setup for a few reasons. The first is that Emacs doesn’t hang while trying to connect and send the email. The second is that if I’m on my laptop and not connected to the internet Postfix will handle queuing up the email to send later when it’s connected to the internet again.
Lastly, there’s my Mu4e configuration. Below is the compressed version ( and the Gist is up here ):
There’s still a few things I’ve got to figure out.
I’d like to figure out a better way to view HTML email. Right now, I’m using the built-in Emacs HTML renderer ( part of eww ). If the email doesn’t come out well, the following bit of code adds another action:
What that does is let me open the HTML version of the email in a browser by pressing ‘a’, then ‘i’ when viewing an email.
I’ve also got to figure out an easy way to search through Mu’s email addresses so I can have some sort of address book, although the auto-complete seems to work pretty well so far.
There will probably be a few other things that come up over the next few months, but I’ll handle them when they come up.