LDAP Should Be Beaten, Shot Twice, then Beaten Again

Jul 13, 2004

I'm trying to set up an address book that's accessible from arbitrary
clients. The logical way to do that is set up an LDAP server (in
my case, OpenLDAP), then populate
it with contact information. That's all fine and good. I can add
entries with Directory
Assistant and GQ. I can even
query the LDAP server with Thunderbird (and
presumably Evolution as well,
although I haven't tried). Here's the snag: I'd like to be able to
store modern attributes, such as IRC nicknames, AIM and ICQ
screen names, web sites, etc. Thunderbird
allows you to enter in those attributes, and you can export entries in
LDIF
format, but when I try and import them into OpenLDAP, it complains about missing
attributes (obviously). Well, this page
talks about the exact same problem. The author references the mozillaOrgPerson
schema and mozilla_op20.schema,
but when I include those in my slapd.conf, I get the
following error:

Huh? The schema is supposed to be defining attributes, not
referencing them. I guess I'll keep plugging away. One other problem:
Thunderbird
can only queryLDAP servers, not add entries to them. That means
I'll have to create entries locally, export them as LDIF files, tweak
them slightly for my DN, then import them by hand. Ugh. I'd like
something as simple as Directory
Assistant that supports the extra attributes (an extra bonus would
be a console interface; I do believe I might be writing another console
application ;-)).

This seems like a simple problem. I'm sure lots of other
people have tried to do what I'm doing right now. So where's the simple
solution? I just want to set up a modern address book that's accessible
via LDAP, and I'd prefer not to have to reinvent the wheel, electricity,
indoor plumbing, and nuclear fusion in the process. Suggestions?