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."
OS X Server is overkill? If you want to run a server, then you need a server OS. Linux PPC would do nicely, I'd imagine. Or you could just piece together a $200 PC (it needn't have a monitor) and stick it there on the network. Wouldn't take more than an afternoon. LDAP is all XML based, so you can edit everything by hand and view the results in Mozilla. Easy.
By the way, this marks my 1000th post here on Slashdot (not counting those posted as Anonymous Coward). Quick word of thanks to everyone who makes this possible, and by that I mean the users, the people who post and moderate comments. Slashdot has become an icon (no pun intended) on the Internet, and a beacon in the Linux and Open Source communities. So, if you're reading this right now, pat yourself on the back for a job well done. Let's make the next 1000 posts as great as the first 1000.
Karma: Good (despite my invention of the Karma: sig)
I haven't actually tried this, but I do have their port of PostgreSQL running, and it works without a hitch.
http://www.entropy.ch/software/macosx/openldap/
Cheers,
-Alex
You could try OpenLDAP, but I haven't had very good luck with it in the past -- it's also overkill IMO. Oh yeah, and Entourage gets all sorts of flakey with non-MS LDAP servers.
;)This'll give you webmail, shared (and private) calendars and address books.
Another option is to load up something like a PHP groupware solution... moregroupware 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. 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.
Three words:
FileMaker Server, dude.
Rather than dropping a database into a shared folder, run a copy of FileMaker Server and allow people with copies of FileMaker Pro to connect to the database being served/shared over your network.
-/-
Mikey-San
Mikey-San
Karma: +Eleventy billion (mostly affected by watching Celebrity Jeopardy)
Okay, You said you didn't want to use Entourage. How about Eudora (yeah, commercialware, ads, etc)? In Eudora, you can create something called a Nickname "book". You could place *that* in the shared folder, and create aliases to it. I haven't tested it out across shared mailboxes, but it does work if you have an alias pointing to it. Here are the steps to make an address book: 1) Go to Windows > Address Book 2) Click on the Icon that looks vaguely like a purple book with a star (may be marked "Book") 3) Enter all the addresses you want. Now quit Eudora, copy that Nickname to the shared folder (will be located in Eudora Folder/Nicknames/) to the shared folder. As e-mail clients go, you can't go too wrong with Eudora. And it solves your problem, too.
Karma: Chevy Kavalierma.
Yes, you can do this with Address Book in 10.2 Just drag it's Pref folder in Library to the Public folder as you did with Entourage. I'm not sure how well this setup works if two people make a change to the address book within a few seconds of each other. Data loss MB?
I believe 10.2 improved & centralized address book can be automatically backed up to .Mac, which I guess would go a long way towards what you want. It's probably also possible to do the same with other services (Apple is kind enough to let that be done with most net-connected programs, although it's sometimes a little obscure to know how to).
So in any case check out 10.2 and look for it, as it's probably there.
The good news is Jaguar include already an Openldap server
/etc/openldap in a terminal)
(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 to manage a shared address book on top of ldap.
Bombing for peace is like fucking for virginity!
Now Contact & Now Up to Date will solve 90% of what you're looking for. Its free/included servers for contacts and events work great in the background - they can be on any Mac that's on the network (including a client machine), even the Net.
The only catch is that if the 'server' Mac is behind a firewall and the client Macs are outside the firewall, you'll need to open ports for each service, though this would be true for an FM Pro solution also. It's not cheap, but it is very reliable and works as advertised...
Check out the mailing list archives at http://www.openldap.org.
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....
Arrogance is Confidence which lacks integrity. -- me
Isn't one of the functions of the upcoming iSync that it can also sync up different Macs? I'm pretty sure that Jobs mentioned this.
I mean yeah, you can use Marc Liyanage's site to download OpenLDAP package, or [my preference] you can just install Fink 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....
DO NOT LEAVE IT IS NOT REAL
How about Now Up-to-Date and Contact?
The basic software has been on the Mac platform forever and PowerOn (the most recent custodian of the code) has had OS X versions of these for a year or so now. According to their website they've even got a Windows version in the works. No Linux support yet, though.
If you open Directory Access in the Utilities folder in 10.2 you'll see LDAPv2 and v3, if you click configure you get several options. I don't know if this is the server or what. I know nothing about LDAP. Just thought maybe this would be useful info.
Now Up to Date and Now Contact from Power On Software will do what you want. Plus the server is free with every client.
-- k
Specialist Mac support for creative pros, Melbourne
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
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.
Before you go nuts setting up a server for your address book, check out this software (oh yeah, its free).
Another protocol that can be used for shared address books is IMSP, which was written as part of Carnegie-Mellon's Project Cyrus. The problem is that few applications support it. In fact, the only one I know of is Mulberry.
If Slashdot posted a link to itself, would it be slashdotted?