Thanks so much Robert.
I now have it working for my purposes using Open Directory. I assume
the xml version will work okay but I haven't tested it.
Therefore to share how I got it working here it is...
1. Ensure your server DNS resolves to your Darwin Calendar Server
(DCS) server machine properly. My DCS is served from the same machine
(ns1.26hollin.lan) that does DNS and DHCP so I'll touch on this later
when configuring caldavd-dev.plist
2. Ensure that the your users and groups are created in Workgroup
Manager (WGM)
2a. Group calendars simply require a group created with users added
that can edit the group calendar
For my example my wife, 2 sons and I want to share a group. I
created the group "26hollincalendar" (don't forget to omit the quotes)
and added all of us as users to this group.
3. Create a user called "calendar" in WGM (ditto omit the quotes in
all that follow)
4. Create a group called "calendar" in WGM
5. ssh into your server if installing remotely or open Terminal if
locally
6. Download and install python 2.5
cd ~
curl -0 http://www.pythonmac.org/packages/py25-fat/dmg/python-2.5-macosx.dmg
> python-2.5-macosx.dmg
sudo hdiutil attach ./python-2.5-macos.dmg
cd "/volumes/Univeral MacPython 2.5"
sudo installer -pkg ./MacPython.mpkg -target /
7. Checkout the source for Calendar Server.
sudo mkdir /usr/local/caldavd
cd /usr/local/caldavd
sudo svn checkout http://svn.calendarserver.org/repository/calendarserver/CalendarServer/tags/release/CalendarServer-1.2
./caldavd
This downloads all the source to the /usr/local/caldavd/caldavd
directory
8. Compile the source
cd /usr/local/caldavd/caldavd
sudo ./run -s
9. Copy the /usr/local/caldavd/caldavd/conf/caldavd-test.plist to /usr/
local/caldavd/caldavd/conf/caldavd-dev.plist
sudo cp /usr/local/caldavd/caldavd/conf/caldavd-test.plist /usr/
local/caldavd/caldavd/conf/caldavd-dev.plist
10. Edit this file
sudo pico /usr/local/caldavd/caldavd/conf/caldavd-dev.plist
11. Change the following entries
11a.
<!-- Network host name -->
<key>ServerHostName</key>
<string>ns1.26hollin.lan</string> <!--PUT YOUR OWN SERVER HERE-->
11b.
Then comment out the XML Directory entry and uncomment the Open
Directory entry.
Then, importantly set the requireComputeRecord key to false
<!-- Open Directory Service -->
<key>DirectoryService</key>
<dict>
<key>type</key>
<
string
>twistedcaldav.directory.appleopendirectory.OpenDirectoryService</
string>
<key>params</key>
<dict>
<key>node</key>
<string>/Search</string>
<key>requireComputerRecord</key>
<false/> <!--CHANGE THIS FROM TRUE TO FALSE-->
</dict>
</dict>
11c.
Then (phew) change the Authentication method to enable Basic and
Digest but disable Kerberos
<key>Authentication</key>
<dict>
<!-- Clear text; best avoided -->
<key>Basic</key>
<dict>
<key>Enabled</key>
<true/>
</dict>
<!-- Digest challenge/response -->
<key>Digest</key>
<dict>
<key>Enabled</key>
<true/>
<key>Algorithm</key>
<string>md5</string>
<key>Qop</key>
<string></string>
</dict>
<!-- Kerberos/SPNEGO -->
<key>Kerberos</key>
<dict>
<key>Enabled</key>
<false/>
<key>ServicePrincipal</key>
<string></string>
</dict>
</dict>
12. Start the server
sudo /usr/local/caldavd/caldavd/run
or to start in daemon mode
sudo /usr/local/caldavd/caldavd/run -d
You should now be able to log into the server using your browser at http://ns1.26hollin.lan:8008
in my case.
I do not know why requireComputerRecord needs to be disabled but
without it /Search cannot find the /Computers entry in Open Directory.
I'm not sure if creating the user "calendar" and group "calendar" are
needed. I just did this because I got an error message on server
startup that it couldn't find them. HOWEVER I was mistakenly using the
caldavd.plist as the template for caldavd-dev.plist instead of caldavd-
test.plist. caldavd.plist is included in the 1.2 Release branch as I
assume this is the config file Leopard uses for the Apple compiled Mac
OS X caldavd executable in /usr/share rather than the cross-platform
run script that replaces it in DCS.
One final thing that puzzles me but it doesn't seem to be directly DCS
related is that iCal cannot locate users in Open Directory to add as
individual user calendar delegates. As I said my OD setup seems okay
and users show up in the Leopard client "Directory.app" after I bind
the client machine with "Directory Utility.app". But when I try to
edit the entries or add them Directory.app just tells me it cannot
find an Open Directory server regardless of whether I select password
or Kerberos authentication in the Preferences. I suspect I have set up
Kerberos incorrectly. So for my purposes it works fine with a shared
calendar that everyone can read-write to but wouldn't be usable for an
individual user in an organization for example.
Regards
Richard
On 3 Aug 2008, at 04:11, Robert Schmid wrote:
Richard,
I just finished going through your pain and I'm still going through
it.
I can't offer you a good step-by-step but I can correct one major
flaw in the documentation. Do NOT check out the main trunk of the
code. Instead use the last labeled version. i.e. use the following
command to checkout the code;
svn checkout
http://svn.calendarserver.org/repository/calendarserver/CalendarServer/tags/release/CalendarServer-1.2
This is a stable version of the code. It compiles and runs
properly. If you checkout from the trunk you are inheriting the
latest untested code and its attendent bugs. I recommend you clear
out everything you've done (except your config files, move those
somewhere and copy them back) and start over.
Robert Schmid
On Aug 2, 2008, at 3:05 PM, Richard Shepherd wrote:
Hi all,
This is my first post so if this has been answered I apologize. I
cannot find a repository of prior posts either - is there one?
I have a G4 Quicksilver 800MHz (ie not supported by Leopard Server)
home server and want to share calendars with my wife and with
myself(!) on different machines. We are both physicians. I have
succesfully published calendars using WebDAV before but need to edit
them from one machine to the other rather than just have one "edit"
machine and all the others read only.
The server is running Tiger 10.4.11 server and supports all our
network gear for DHCP and DNS (Intel iMac, Powebook G4, iBook G4,
PS3,
AppleTV). All Macs are running Leopard client.
It is setup as an OD Master and DNS works correctly both forwards and
reverse. LDAP Directory services seems to work just fine with
Directory Utility/Directory in the Leopard clients. The server is
Kerborized.
I have checked out DCS and successfully compiled it on the server. I
want it to work in OD mode but cannot get it running properly. That
being said I cannot get it to work properly in XML mode either.
Does anyone have any simple step by step guides?
Regards
Richard
_______________________________________________
calendarserver-users mailing list
calendarserver-users@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/calendarserver-users
_______________________________________________
calendarserver-users mailing list
calendarserver-users@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/calendarserver-users