My awesome email setup
November 20, 2008
I upgraded Firefox fairly recently. The only bad thing about this is that Evolution broke. So, rather than re-emerge evolution, I decided to play with a different client: mutt. Not knowing much about the inner workings of email, I thought mutt would just be a drop-in replacement for Evolution. This is not the case, and a number of different programs are required to create a working setup:
- fetchmail to grab mail off the Gmail server and pass it on to
- procmail which sorts and filters the mail into different mailbox files which are then read by
- mutt where I can read and process the emails, and pass emails which need to be sent on to
- nbsmtp which interfaces with my gmail account to send emails out.
At first this seems like an awkward, hard-to-manage mismash of programs. This is not the case. It is actually a surprisingly flexible and configurable system. For example, my mail is sorted long before it reaches my inbox. This is different from Evolution, where mail is sorted into folders every time I open the client. Also, mutt’s startup time is much, much faster than Evolution.
But there is something missing from the setup. I needed something to run fetchmail periodically and alert me when I had new mail. I could have run fetchmail in daemon mode, but that’s boring. I decided to use GKrellM. This is a very cool, configurable “geek eyecandy” system monitor. It displays graphs of CPU, disk, and network usage. It can also monitor mailbox files and run fetchmail every so often, and display a little animated penguin when it detects new mail.
So, I now had a sleek, efficient email system. But it was still fairly run-of-the-mill and needed a bit of “zing”. This came in the form of a nifty perl script:
if(`mpc` =~ m/playing/){$resume=1;}
system(“mpc pause”);
system(“play ~/mail.ogg”);
if($resume){system(“mpc play”);}
This pauses my music player, plays a sound file, and starts the music player again(if it was playing at the start). The sound file is a recording of me saying “Yoou’vee got maaail!”. The script is run every time GKrellM detects unread mail in my inbox.
This is the icing on the cake of an awesome email setup. It is just so cool to be listening to music, then suddenly hear it pause and my voice sing out that I have mail.
Email, perl, console mailreaders, music player daemons, scrolling graphs, animated penguins, and Google. If that isn’t a geekgasm, I don’t know what is.

