iCloud Snow Leopard Calendar and Address Book Sync Fix

Just moved my Snow Leopard machine to iCloud – Mail worked perfectly, but what about the rest?

iCal

Open iCal in Snow Leopard (if is up to date, it should be Version 4.0.4 (1395.7). Select ‘Preferences’ from the iCal Menu. Go to the Accounts tab. Click the + sign to add a new account. Select the ‘CalDAV’ option under the Account type. Enter your ‘User name’ which is your iCloud .me email address. Enter your iCloud ‘Password’. Now comes the tricky part; the ‘Server address’. See below. It will be of the form pXX-caldav.icloud.com (the XX would be numbers of the dedicated server). I was able to determine this value by sending an invite to another one of my other email accounts and clicking the ‘Accept’ button. This will open the reply in a web browser. If you look at the long URL, at the end there is a pXX value and that’s the dedicated server. Once that is done, the calendar will show up iCal. However, a few minor updates will need to be done so that it behaves just like in Lion’s iCal. Click the ‘Server Settings’ tab for your new calendar and update the ‘Server address’ with your pXX-caldav.icloud.com. Next you need to update the ‘Server path’. The way that it was configured is based on the MobileMe configuration and it needs to be updated to the iCloud. The value that MobileMe has is /principals/users/1.XXXXXXXXXX/ (The XXXXXXX is the dedicated number for your account. Update the path to /XXXXXXXXXX/principal/. Update the ‘Port’ to 443 and select the ‘Use SSL’ option if is not selected. Restart iCal in Snow Leopard. The Calendar will refresh.

After following that guide, I had a working calendar, so simply right clicked “On My Mac” and deleted it.  Now I just have the iCloud calendar.

Address Book

Address book was more complicated!!   Firstly, be aware that you’ll need to lose all your contact photos to do this.  Small price to pay to have it all working…

1) Remove any images from all of your contacts ON YOUR MAC (not in iCloud)

2) Export your contacts to VCF file from your Mac by dragging out the folder “On My Mac“ from your Address Book to your Desktop

3) Remove EVERY contact on iCloud (login to iCloud page, remove it from there – I don’t suggest to do it in Address Book)

4) Import created VCF file DIRECTLY to iCloud through AddressBook on iCloud web page (not to Address Book on your Mac)

5) NEVER, EVER create contacts with pictures – these contacts will be duplicated.

6) Open address book and delete EVERY contact in the address book (from the On My Mac section).

Set up iCloud syncing for the address book thus:

Create a new CardDAV account:

Use the same Pxx server you set up in iCal, and enter the following:

username: username@me.com (or whatever)

password: your password

server: p01-contacts.icloud.com – check to see what p number yours is in the iCal settings from earlier

It will whinge that it can’t get details but create the account anyway, then immediately quit Address Book

Navigate to <user>/Library/Application Support/Address Book/Sources

There’ll be a folder there – all letters and numbers – open the folder and edit configuration.plist

I used Dashcode to do this, but terminal and nano would do just fine

You’re aiming to get it looking like this:



<key>_className</key>
<string>PHXCardDAVSource</string>
<key>disabled</key>
<integer>0</integer>
<key>haveWriteAccess</key>
<integer>1</integer>
<key>isSharedABAccount</key>
<integer>1</integer>
<key>name</key>
<string>CardDAV Server</string>
<key>refreshInterval</key>
<integer>1</integer>
<key>serverSupportsSearch</key>
<integer>0</integer>
<key>servername</key>
<string>https://pxx-contacts.icloud.com:443/xxxxxxx/principal</string>
<key>username</key>
<string>myname%40me.com:yourpassword</string>
<key>usesKerberos</key>
<integer>0</integer>



The %40 is important, as is getting the correct Pxx for the server.

where xxxxxxxxx is the unique number associated with your iCloud account (it’s in iCal from earlier)

All being well, and assuming you’ve followed this closely, you’ll have a fully syncing address book and NO duplicates (these are caused by photos, hence we binned the photos).