Take the 2-minute tour ×

I'd like to achieve the following:

  1. Be able to aggregate my email accounts such that I can receive an email sent to one of my email accounts and reply to it from any other email account of mine, without having to switch email clients, and without breaking conversation threading.
  2. Be able to send signed and/or encrypted emails using either PGP/GPG or S/MIME from any email client I use.
  3. Be able to access my emails securely on my computer (e.g. via a Web-based email client using HTTPS, or via an email client program installed in an encrypted partition on my computer).
  4. Be able to access my emails securely on other people's computers (e.g. via a Web-based email client using HTTPS, or via an email client program carried on an encrypted USB key).
  5. Be able to access my emails securely on an Android mobile phone, using an email client that allows me to read and write messages when not connected to the internet.
  6. Be able to search on the subject, message, sender, to, cc and bcc fields of my emails from any email client I use.
  7. Be able to a graphical email client in all cases.

Currently, Gmail partially provides 1 (only via the Gmail interface on the Web: not via mobile or via local clients, AFAIK), and fully provides 3, 4, 5, 6 and 7. It may also be able to partially provide 2 (again, only via the Gmail interface on the Web, and only when using Firefox to access it) with the addition of the Gmail S/MIME Firefox add-on, but it's possible this would impact on 6.

Is there a solution that fully provides all seven? It needn't be based on Gmail. If so, what is it?

By a "solution", I mean some combination of:

  • email host,
  • email client to use on my my computer,
  • email client to use when the only internet-connected device available is someone else's laptop/desktop,
  • email client to use on Android,
  • and any configuration details that might be necessary.
share|improve this question

migrated from stackoverflow.com Apr 21 '11 at 22:23

This question came from our site for professional and enthusiast programmers.

Please keep it civil. Calling names and insulting users will get you nowhere. –  Sathya Apr 22 '11 at 14:38
@Sathya: I figured linking to, and quoting from, a GNU Project page would be acceptable. Apparently not; apologies. –  sampablokuper Apr 22 '11 at 14:42

4 Answers 4

I don't like to use graphical mail clients, and the best I've come up with is to ssh to my own server where I run mutt locally. I pull mail from all my accounts to this server with fetchmail.

This does not satisfy your Android condition.

The only problem I have with this set-up is that there's a single point of failure. I would like to have my e-mail database distributed somehow.

share|improve this answer
+1 for alerting me to the fact I hadn't specified my preference for GUI email clients! –  sampablokuper Apr 24 '11 at 14:53

The closest thing to an answer I've been able to come up with so far is the following:

  • Firefox + Gmail S/MIME on my computer
  • Firefox + Gmail S/MIME on an encrypted USB key for use on others' computers
  • Fennec + Gmail S/MIME, if it can be adapted for Fennec, on Android.

Can anyone do better, or provide any tips on the easiest way to implement this suggestion?

share|improve this answer

Thunderbird + IMAP + (S/MIME | (GnuPG + Enigmail)).

On Android, K-9 + IMAP + APG.

Gmail supports secure IMAP and SMTP (and you can send mail from any address linked to your account).

share|improve this answer
If I use Thunderbird to send an email from an account other than a Gmail account, it won't show up in "Sent" items as viewed from the Gmail web interface, though, which would break threading in some cases. Or are you suggesting I never use the Gmail web interface, but just take Thunderbird with me on a USB key/etc when I'm away from my computer? –  sampablokuper Apr 22 '11 at 14:45
Perhaps there's a fix for the "Sent" threading problem, but if so, I'm not aware of it; feel free to elucidate if you know of one! –  sampablokuper Apr 22 '11 at 14:52
@sampablokuper: 1) Just tell Thunderbird to store sent messages to the proper folder. The latest version even does it automatically. 2) Yes. –  grawity Apr 22 '11 at 14:57
@sampablokuper, if the other account is known to Gmail (like grawity assumes), then Send mail from another address without "on behalf of" should work? You can then use the Gmail SMTP server, which automatically copies sent messages and labels them as "Sent". –  Arjan Apr 22 '11 at 14:59
(Oh, might actually be unrelated!) –  Arjan Apr 22 '11 at 15:01

My take on your goals:

  1. Aggregate mail accounts: Multiple clients provide multi-account access. This is something to look into for a given client.

  2. Send/receive signed/encrypted PGP / S/MIME mail: again, configure on a per-client basis.

  3. Access emails securely on your own host: IMAPS will give you the option to use a secured, authenticated channel to access a central server (or servers).

  4. Access emails securely on an arbitrary third-party host: trickier. I generally don't trust other people's systems to be secure on a software basis, and occasionally HW. A bootable USB key with a preconfigured IMAP client would cover the first case. My preference would be to have my own system (phone, tablet, laptop) with me.

  5. Secure Android mobile access: K9 mail offers IMAPS, multiple account access, and PGP / S/MIME. Threading is weak on any mobile client I've seen, but will be maintained in other clients. Search has been limited, but will hopefully improve.

  6. Search on multiple fields: again, a client-specific implementation issue.

  7. Have access to a graphical client: if that's "in addition to a non-graphical client", do I have a deal for you!

Basic solution:

  1. Host your accounts on a service/services offering IMAPS (SSL/TLS secured IMAP) access. You can then access your account(s) from multiple clients.

  2. "offlineimap" is an IMAP synching utility which can keep local and remote stores of your IMAP account(s) synchronized. Including between multiple client hosts (each is synchronizing itself to the appropriate IMAP server for the account(s) in question).

  3. A bootable Linux distro on USB would cover the mobile use case. KMail/Kontact, Thunderbird, Evolution, and other full-GUI clients should work, several of those are also multi-platform and will run on MS Windows and Mac systems as well. My preference is the console-mode "mutt" mail client. It's particularly powerful at threading, search, and filtering. Though you've specified GUI, I'd recommend you at least look over mutt's features. Recent forks include support for GMail-like tagging.

Depending on your specific use case, you might want to use a locally synchronized IMAP tool (such as offlineimap), or a client which connects directly to and operates on the remote IMAP server. Mutt, again, can operate in either mode. It can also be accessed locally, or as Tom Ellis noted, remotely via SSH.

Proper message threading requires appropriate header support -- creating, observing, and interpreting the "References" or "In-Reply-To" headers. See: http://www.jwz.org/doc/threading.html

Once again, mutt does this correctly.

share|improve this answer

Your Answer


