February 03, 2009

Mutt Mail Makes Marvelous Match for Google G1 Groupies

Greetings. A number of people have been asking me what I'm using as an e-mail client on the Google Android G1. My answer might surprise you (well, it might have if you hadn't already seen the title of this piece).

Since I run my own SSH/TLS-secured e-mail servers, I don't routinely need to use Gmail for the bulk of my correspondence, so the well-designed G1 Gmail application is only useful to me for a fraction of my total voluminous e-mail flow. The included G1 POP/IMAP mail application for non-Gmail is somewhat limited, and work on its "K9" development fork is in rather early stages. I've also found both of these e-mail clients to have some significant display limitations of importance to me, such as font-sizing restrictions and the like.

Fairly recently, I began using the text-based Mutt e-mail package as my primary Message User Agent (MUA) on my local Linux systems. I won't try to summarize its features here, other than to say that if you deal with lotsa mail, even in many different accounts on different systems, Mutt can make a tremendous difference in your productivity. I still use Thunderbird (or similar GUI-based apps) to view inline images and such in e-mail, but frankly most of the time I can move much more quickly with plain text and textual rendering of referenced page links.

Let me put it this way. In an unscientific test I ran of my typical e-mail handling under Thunderbird vs. Mutt -- including message indexes, sorting, searching, filing messages to appropriate folders (Mutt is fantastic at this), and so on, I found almost a fourfold speedup when using Mutt.

Part of the reason is that with Mutt I can do everything from the keyboard (without depending on third-party GUI plugins), and can plow through messages like a hot knife through butter. No need to keep switching between keyboard and mouse.

You probably know where I'm going with this by now. My next step was to find a way to run Mutt with the G1. To cut to the chase, I'm using a modified version of the excellent free Android ConnectBot SSH client. The version I've built plays sounds both for control-G and for loss of connection (I'll set up auto-reconnect soon myself if nobody else does it).

The rest is straightforward, though a bit of rather simple shell hacking is involved. With a single touch to the G1, a certificate-based SSH connection is established back to my servers, Mutt is started, and I have access to all of my mail in virtually exactly the same form that I access it on local machines. I've set the color scheme to be a little different, and adjusted some parameters to better deal with the smaller G1 display, but other than that, it's pretty much all the same.

The SSH client allows for easy resizing of fonts to any practical desired size -- and Mutt immediately adjusts its layout to compensate. I drop right into an Emacs-style editor for composing new messages -- font size changes are handled properly there too. No messages have to be downloaded to the phone per se -- they're all being read over the SSH connection (which my routines "ping" at intervals to avoid T-Mobile's five minute idle connection timeouts).

The client happily runs in the background behind other applications or when the phone is "sleeping" -- waking up as appropriate to notify of new mail. My next planned step is to define Mutt macros to allow for the most common mail handling functions to be performed using only the G1 trackball and one phone button, without opening the keyboard.

If I really need to see an image, I can use the other programs to access the messages of concern via secure IMAP, but I rarely need to do this from the G1.

I realize that this kind of setup won't be appropriate for everyone, especially since it requires a significant existing mail server and SSH infrastructure, and if your e-mail tends to be heavy on image attachments that could be an additional complication.

But if you're a Google Android G1 user, have the appropriate server facilities, and need to deal with very large volumes of e-mail in a secure manner, the Mutt/SSH solution may worth considering.

I'd be glad to answer any questions about this of course, and my modified version of the SSH client is available upon request.

The flexibility of the Android platform is proving itself every day.


Posted by Lauren at February 3, 2009 03:15 PM | Permalink
Twitter: @laurenweinstein
Google+: Lauren Weinstein