Infotrope Polymer
Until I get around to writing a good description, you might want to look here. Oh, you can write this too, if you want.
The short version is that Polymer is a relatively lightweight IMAP client, which is exceedingly conservative about bandwidth usage, yet still functions pretty fast. Even if you don't let it use a disk cache. On top of that, it's fully roaming, via ACAP, so it's configure once, run anywhere. And it supports a considerable array of extensions, so it can get the most out of a small line, or a powerful server. It's scalable too, in as much as if you happen to have several thousand messages, it'll cope fine for the most part.
Finally, it runs on Windows, Linux, other UNIXes, and in principle at least on Mac OS X.
Quick Start
On Windows, download the installer, and run it. This is usually a little outdated compared to the subversion repository, so people with Python and Subversion installed on Windows might want to install via that route instead.
On Debian-like Linuxes, including Ubuntu, apt-get install python-pysqlite2 python-wxgtk2.6 python-ctypes Then svn http://svn.dave.cridland.net/svn/projects/infotrope/polymer
Next, run polymer. For Windows folk using the installer, it'll put stuff into your Start menu. For Python folk, run polymer.py
This will ask you about an ACAP server - you have one - unless you really don't want to. It'll default to "public-acap.dave.cridland.net", which is mine, and suggest a likely username. Polymer will create you an account in a magical way on that server. You can leave "Authentication" as "Any", which will do the right thing. Click OK.
Next, it'll prompt you for a password. Pick one, and be sure to remember it. It'll be stored on my server, so don't pick a valuable one.
Next, it'll moan that it has encryption, but it's being forced into using plaintext - this is because the ACAP server is transitioning you in order to get your password. Click Yes, to allow it to send the password in the clear.
It'll then moan some more, this time asking you if it's okay to store your password in the clear on the client machine. This is up to you, but you may as well say no, partly because of bug #21, and partly because it'll never use plaintext authentication again.
Next, it'll download your configuration, and find you don't have any, and warn you about it. Hit OK, and ready your details. (Be glad, this is the last time you'll need to type these in, even if you install Polymer on a different machine.)
And now a brief interlude while it crashes in an unrecoverable way, due to bug #21
Restart it, and it'll again moan about missing configuration, but this time it'll present a dialog box to enter it all in. Enter the following, leave the rest blank.
Name for this server: A human name for it, like "Home". IMAP Server: A hostname. If you do need a port number, do something like "imap.example.com:1430". Don't enter "localhost" here, that's really not what you want. IMAP Username: Your username on the IMAP server.
You should now have an item in "Mail Servers" that you can expand, and find your folders. Note that Polymer will make every IMAP server have the same, fixed, layout, so your folders might have "moved" compared to other clients.
Next, send a message (File->New, or Message->New Message).
Again, you'll get a warning that Polymer doesn't know enough configuration. After this, you'll get another dialog box to enter it into. Same deal, leave the remainer blank:
Name for this identity: A human name for it. Again, "Home" or something. Full Name: Your name, as you want it to appear in emails. Email Address: Your email address. XMPP Id: Don't enter anything here, unless you want to test a very simplistic XMPP client that will use a considerable amount of bandwidth. Outgoing SMTP Server: A hostname - note that Polymer will try port 587 first, and then port 25, unless you specify something specific. Your provider should be running on port 587, but port 25 is often good enough. SMTP Username: A username, if you have one. If you don't, you probably won't be able to roam. Drafts & Sent Mail Mailbox: You can drag a mailbox from the tree to these, if you want to keep copies or specify a drafts folder. Even if you don't want drafts, on a full Lemonade system, specifying a drafts folder can cause you to use less bandwidth in some circumstances. Unfortunately, you can't drag when it's forcing you to enter configuration like this, you'll need to go back and edit them.
Bug #22 now bites you, and will warn you it still doesn't have configuration, and present you with the same dialog box. Cancel it.
You'll now get a composer window, and can send a message. Polymer auto-captures addressbook data on read, and so you can type in real names of people whose email you've read and hit Expand, and it'll (usually) find them. If it finds more than one match, you can set an alias on one to help you next time.
Dog Food
I use Polymer as my sole email client, day in, day out. I do not use other email clients, with the (vanishingly rare) exception of when I need to print a message.
I use it on the train at least once a month (sometimes a lot more) over my own, personal mobile phone. In case you wonder, I pay the bill, and always have.
Maemo Port
This page describes the wx port, which is reasonably stable, approaching complete, and in constant use. The Maemo port (for Nokia 770), is described on Telomer, and is in constant use, but is a lot less stable, and much less complete.
Views
Polymer's summary display is, by default, entirely uncoloured. To make it pretty, you need to define Views. Views do two things, they colour the display, and allow you to display only matching messages. There's a View editor in Tools->Views..., but it's extremely basic right now, and relies on knowing how IMAP searches work. Moreover, Polymer can only colour messages when it has the data, and it won't download extra data in order to colour. So only certain search keys work.
I'll point to a ViewHints? page, for somebody - possibly me when I've a moment - to write some general help, like which search keys work, and how to use them.
I'll also point to a ViewRecipes page, for people to share particularly useful IMAP searches.
Prerequisites and dependencies
If you're not installing the Windows installer, then you'll need:
- Python: I use 2.4. In theory, it works with 2.3 as well, but if you have the choice, go for 2.4. It will not work with 2.2, unlike the IPL.
- wxPython: The 2.6 releases are fine.
- IPL: Polymer uses the IPL to provide obsessive scalability and bandwidth conservation, and the IPL has its own prerequisites.
