Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Share one iCal file between multiple users on one machine Apps
A while back, my stepfather asked me how he and my mother could share one iCal calendar. Mind you, this is not publishing and subscribing to the same calendar, but the ability for two people on one machine to actually update the same calendar files -- so either one can add events, view events, etc. At the time, I was stymied for a simple answer -- I've seen one other solution on the web, but it involves setting up a WebDAV server, which seems like overkill to me. Today, I mentioned this challenge in an online chat with a buddy, and he (thanks Jacco!) gave me the inspiration and starting point from which to figure out a complete and (as far as I can tell) fully functional solution.

Read the rest of the hint for the how-to...

Though the problem seemed complex, the solution turned out to be quite simple ... and although this was tested in Panther, it should work just fine in 10.2 as well -- the only requirement is a second hard drive or partition (though you can probably make the solution work using the Public folder, with a bit of work). Here's how to do it:
  1. Select the available partition or drive and do a File -> Get Info on it. Check the "Ignore ownerhsip on this volume" checkbox. This sets up the partition as a world-accessible drive, meaning any local user can read and write to the files on the drive. Keep this in mind when deciding which partition to use. For this example, I'll use a drive named "OurCalendars."
  2. Assume you have two users, tomt and jillj, neither of whom have run iCal before, and they wish to share a calendar. Login as either one (I'll assume tomt) and launch iCal. Add an event to the calendar, just for proof the concept works when you're done.
  3. Quit iCal, and then navigate to tomt's Library folder. Copy the Calendars folder to the top level drive you made world usable in step one. Once it's copied, delete the original from tomt's Library.
  4. Open the Terminal, and type:
     % cd ~/Library
     % ln -s /Volumes/OurCalendars/Calendars Calendars
    
    This creates a symbolic link (think of it as a UNIX version of a Mac file alias) named Calendars in Tom's Library that "points to" the Calendars folder on the shared drive. If you don't use the top level of the shared drive, you'll have to modify the path to point to the actual location of the Calendars folder (and replace OurCalendars with the name of your shared drive!).
  5. Launch iCal as tomt again, and see that you can see the event you added, proving you're seeing the shared calendar folder.
  6. Login (fast user switch in Panther!) as jillj, and repeat the terminal commands listed above. This creates the same symbolic link for Jill as you created for Tom.
  7. Launch iCal as Jill, and see Tom's event. Add an event as Jill.
  8. Quit iCal and switch back to Tom's login. Launch iCal and note that you can see both Tom and Jill's added events.
Be aware that there are some dangers here -- if both Tom and Jill access try to access the shared file at the same time, I'm not sure what the outcome would be, but I don't think it would be good! In any event, this method will let you create one shared calendar for multiple users on one machine.
    •    
  • Currently 2.33 / 5
  • 1
  • 2
  • 3
  • 4
  • 5
  (3 votes cast)
 
[19,344 views]  

Share one iCal file between multiple users on one machine | 14 comments | Create New Account
Click here to return to the 'Share one iCal file between multiple users on one machine' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Share one iCal file between multiple users on one machine
Authored by: freeyou on Oct 27, '03 02:22:57AM

is this solution to share a calendar available to share iphoto or itunes library ?

thx



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: edalzell on Oct 27, '03 02:31:48AM

Yes, I use this to share iPhoto and iTunes libraries between users. Although I had to create a LoginHook to change the permissions to the current user so that each person could update. But maybe that 'Ignore...' flag would solve that problem



[ Reply to This | # ]
share one iPhoto album between two users
Authored by: weefle on Oct 27, '03 08:24:40AM
Share one iCal file between multiple users on one machine
Authored by: zokdok on Oct 27, '03 03:24:55AM

I have tried this solution (before it was posted) on the previous release of iCal, and that didn't worked as iCal then replaced the file (even the alias) with a new calendar..

Haven't tried it with iCal 1.5, I was working on some other solution as this solutions has some drawbacks when using over a server (like when people are using it at the same time..)



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: robg on Oct 27, '03 07:52:18AM

Did you use an alias, or a symbolic link?

-rob.



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: zokdok on Oct 28, '03 04:09:47AM

Symbolic link... I'm not quiet into the jargon.. :)

ln -s ....



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: forman on Apr 07, '04 07:28:20PM

This is correct. iCal will delete symbolic links and replace them with a normal file (this is a very bad thing to do in the Unix world).

However, if you link the entire "~/Library/Calendars" directory, it will work!

In summary, link the parent directory and not the individual files.

Michael.

[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: fletcherpenney on Oct 27, '03 07:45:26AM

By forcing the users to be on the same machine, you do take care of the problem where two people use the file at the same time (unless you have Panther....)

A better, more flexible solution, could be to use cvs to store the "master" calendar file. Whenever someone makes a change, it is synchronized to the master, and each person will see the changes.

The problem is automatically synchronizing each time you use iCal, and setting up the server in the first place. I have not taken the time to really come up with a solution, but I am convinced that something like cvs could enable a much more robust multi-user function, though at the expense of some complexity... Any ideas?



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: nox on Oct 27, '03 12:11:38PM

Great Tip , Thank you.

I am now sharing my ical with people in my office.

I did however create a symbolic link pointed to my calendars on my OSX Server machine. I am also running WEbDav Ical , which allows you to view the calendar online.

On my server machine ( Jaguar Server ) I did the following:

Created a new user called calendars
I also enabled AFP


On my client machine ( Panther ) I did the following:

From Finder Menu select GO | CONNECT TO SERVER

I typed in my IP and connected

I typed in my username "Calendars" and the password for it.

In Options I made sure that I checked Add Password to Keychain and saved preferences ( this way it will automount without any interaction)

I also added the Server from Folder to my Startup items in my Account Profile.

Now my calendar resides in a AFP server.
I think I will also make PHPiCal work with it so my calendar is also viewable via http.

Anyways

Thanks again for that hint.

Nox






[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: barryf on Oct 29, '03 11:49:32AM

So, instead of creating a new partition, could you also accomplish this by using a "virtual disk" in the form of a disk image that was set-up to automount at login?



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: gsgm on May 08, '05 08:28:37AM

It appears that this hint no longer works with the Tiger version of iCal as the Calendars folder is no longer used.

If anyone has an updated hint, please post. (My wife would like to add to the honey do list!)



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: gsgm on May 19, '05 12:20:13AM

I believe I have found my own solution.

You need to move the folder at ~Library/Application\ Support/iCal
instead of the ~/Library/Calendars to a shared location and link back to it.



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: tlarsonfreeman on Jul 21, '06 03:45:23PM

This can be done in Tiger. There's actually no need to set up a separate partition or use a second drive. If you've already been using iCal, your calendar data is in ~/Library/Application\ Support/iCal. As an administrator, move this folder to /Library/Application\ Support/iCal. Then go to File->Get Info, under Ownership & Permissions, and change the group to 'everyone' and give Others 'Read & Write' access. Then make symbolic links for all the users using Terminal:

% cd ~/Library/Application\ Support
% ln -s /Library/Application\ Support/iCal iCal

Ted Larson Freeman



[ Reply to This | # ]
Share one iCal file between multiple users on one machine
Authored by: shoregeek on Jan 30, '09 08:27:21AM

Is this possible under Leopard 10.5.6?



[ Reply to This | # ]