sg3000 writes
"A friend asked me a question about setting up shared address books with Mac OS X, but I have no idea how to solve this. He wants to set up an address book that can be accessed by different user accounts on the same Mac or by different Macs in the same household. This would be useful for having a single place to put contact info for family and friends. His first thought was to move the Entourage user folder to the Shared folder in Mac OS X and just move aliases of that folder to each of the users' folders. This way when they open Entourage they would see the same address book and both can make changes to it. The downside? Well, you're stuck with Entourage, it will work only on a single machine, everything is shared between the users (all contacts not just a subset, calendar, email, to-do list, etc) and it won't work with other mail clients. I know with the new Mac OS X 10.2, you can share calendars between people using iCal. Is there some way to do this with the new address book for Jaguar too? Since 10.2 is basically shipping now, you can throw NDAs and caution to the winds!"
"My solution was to set up a FileMaker Pro database and put the file in the Shared folder. The downside is you couldn't do a simple lookup from the email compose window like you can with the integrated address book.
So finally I thought, what if you set up an LDAP server running on one Mac in the house, and then just set up your email clients to access those. Easy, except other than what I just described I know nothing about LDAP.
LDAP looks like it's a lot more than the shared email list that you see in a mail client. And I couldn't find an LDAP server for Mac OS X. It looks like OS X Server has something but that's overkill; we're talking about sharing addresses among five people, tops. Mac OS X has something called Directory Setup that looked kind of right, but Google returned no info on how to do this."
Re:LDAP (Score:1, Informative)
>Linux PPC would do nicely, I'd imagine.
Wow, that is such utter BS. Anything you can run on LinuxPPC you could compile for OS X, maybe something like OpenLDAP [openldap.org], and buying a $500 server OS to get a simple app is exactly the definition of overkill.
Re:LDAP (Score:1)
Re:LDAP (Score:3, Informative)
YES! OS X Server would be SERIOUS overkill!
The standard release of OS X is MORE than enough to run a basic LDAP server, Apache (um, which ships with it), Named (also ships), MySQL and Postgresql.... ALL at the same time. Hell, I can probably run a ton of other stuff and not notice.
The higher end servers are needed for performance and ease of maintenance. And they're needed because their server processes would theoretically be under a high load. And even the XServes aren't really meant for the REAL high end server market.
Anyway... just couldn't let such an innacurate statement go by without comment, considering this person was referring to "home use".
Cheers,
-Alex
Re:LDAP (Score:1)
Especially considering that the only real difference between MacOS X and MacOS X Server is that the server package includes more administrative tools.
Re:LDAP (Score:2)
I guess it's just another piece of info that was inaccurate.
-Alex
Re:LDAP (Score:2, Informative)
LDAP for OS X (Score:1)
http://www.entropy.ch/software/macosx/openldap/
Cheers,
-Alex
Re:LDAP for OS X (Score:2, Informative)
-Alex
A few options... (Score:2, Interesting)
Another option is to load up something like a PHP groupware solution... moregroupware [moregroupware.org] is a really nice option, although German is the developers' first language
What I'd do personally is just set up a quick mySQL database and PHP or Perl front-end that gives you clickable mailto: links for people's records. There's a million packages like this on Zend [zend.com]. I wrote one similar to record incoming callerID info and join to a vcard-like mysql table. Took an hour or two.
On the other hand, if you want to use Apple's address book, you could try to find where on the disk the data files are saved and do a root cron job to copy those files either between accounts or machines.
With Apple pushing Rendzevous and iCal as much as they are, I'm sure an Apple solution will pop up pretty quickly.
Best of luck.
Re:FileMaker (Score:2, Informative)
A Solution that Works... Mostly (Score:2, Informative)
Re:A Solution that Works... Mostly (Score:2, Informative)
That's what a database is for.
IF (and ONLY IF) you are going to limit your address book updates to a single user, then replication of aliases/links can work. Otherwise, you eventually run into the problem where two users are going to update it at the same time (or within a small enough window that both read the same data but write different data), and one clobbers the other's update, or worse, clobbers some critical data structure and nukes the address book. The LDAP solution is the best way to handle this.
Using Address Book (Score:2, Informative)
10.2 Address Book, .Mac and others. (Score:1)
So in any case check out 10.2 and look for it, as it's probably there.
Openldap is in OS 10.2 (Score:1)
(just take a look at
But you'll need a schema that work with Entourage or other address book.
And you'll have to start properly the slapd deamon (not easy, the standard config of apple for openldap seem to be really buggy)
But if somebody successfully succed I have a schema and a small php program [freshmeat.net] to manage a shared address book on top of ldap.
Use OpenLDAP (Score:3, Informative)
This is what LDAP was meant for, among other things.
After a couple of minutes searching the openldap-software list I saw people trying to do 3 things with OpenLDAP on OSX.
1) run it. Used to have problems with replication (slurpd) and multithreading.But that was a few months ago.
2) Use it for user management like NIS. Essentially using nsswitch_ldap on OSX. Some success it looks like.
3) Use it for shared address book stuff. Working fine.
LDAP is awesome, think about a relational database where the table layout for common data is already specified for you. i.e. storing a user in a database where the table schema is the same, no matter which database you use.
This is why all the major mail clients support any LDAP server as an address book. The schema for an entry in the address book is specified, but can be expanded. Essentially you have entries in the server that are of the inetPerson object type, an entry can have multiple object types and object types can inherit from other object types. Think of an object type as a table definition in a database. You can search by object types or by attribute values (Objects are made up of defined attributes: inetPerson is an object type, email is an attribute of inetPerson).
Essentially if you write an app that knows how to deal with data stored in an inetPerson structure, it will be able to integrate with any other app that can do the same.
LDAP will not replace a generic relational database, nor is it meant to. It's optimized for reads and has a hierchical layout. You can have a SQL backend if you want, but I wouldn't do this unless I needed a gateway to a legacy database.
People should be moving data out of the database and into LDAP servers where appropriate. LDAP is the basis for Directory Services like Active Directory and Novell's Directory Services (LDAP is a gateway for Novell actually, complicated relationship).
So, essentially, use LDAP, it's a good idea. The OpenLDAP tools aren't the best and it can be a bit of a pain to set up, check out Directory Administrator and GQ (both GTK apps) to manage OpenLDAP.
Have fun....
iSync (Score:1)
LDAP & Jaguar (Score:3, Informative)
I mean yeah, you can use Marc Liyanage's site [entropy.ch] to download OpenLDAP package [entropy.ch], or [my preference] you can just install Fink [sourceforge.net] and let it do the work for you with a simple (if slow) fink install openldap-ssl, but really -- if it's built into the system then why go to all that trouble? Development of the Fink package more or less stalled once it was announced that LDAP would be built into the client version of Jaguar, and that's not unreasonable. Why reinvent the wheel, ya know? Just upgrade your OS....
LDAP in Directory Access? (Score:1)
Now Up To Date and Contact (Score:1)
-- k
Directory Access app (Score:2, Informative)
The Directory Setup app (called Directory Access in 10.2) in the Utilities folder is not the server, it's the configuration app for Open Directory access (NetInfo, LDAP, BSD config files, etc.). In other words, it's how you tell OS X about directories for services, authentication, and contacts. 10.2 docs for all this stuff are here [apple.com]
I agree with a lot of the other posts: the best way to do this is to set up OpenLDAP on one of the machines, point Directory Access to it, and you're golden. It'll work in 10.1, but it rocks in 10.2.
Address Pad (Score:1)
Internet Message Support Protocol (Score:1)