Sharing address books

Now that I’ve got my calendar stuff all figured out, it’d be nice to do the same with my address book and contacts. Right now, the “reference” version of my address book is stored in the Mac Address Book application. From there, I use Missing Sync to synchronize it with my Palm, and Apple’s iSync to send it to my bluetooth-enabled cell phone. This all works pretty nicely. The missing piece is making the email directory available to my mail client, Thunderbird. Now, this would be relatively easy if I only ran Thunderbird on my Mac. There are a number of tools out there that will take exported Mac Address Book data and import it into Thunderbird on the Mac. The problem is, I also run Thunderbird on various different Linux desktops at work and at home. It’d be great to have the same address book available on every mail client I use.

The other day I ran across this site which describes how to build a shared address book using a private LDAP server. This is a great idea that hadn’t occurred to me. Thunderbird has built-in Support for accessing remote address books via LDAP. If I use OpenLDAP (which is conveniently available as a Debian package), I can even run slurpd and keep replicated servers at home and work. This should be fun to try out.

Once the server is in place, the issue then becomes getting the Mac Address Book to synchronize with the LDAP server. That is probably going to be the biggest challenge of the project.

The drawback to this approach is that there’s no way to automatically update the LDAP database from Thunderbird. It essentially becomes a read-only data source. However, there are a few free web-based LDAP admin tools floating around, so I could probably adapt one of those to suit my needs. It’s not a perfect solution, but it might work.