[CalendarServer-users] Status on FreeBSD
jaco engelbrecht
bje at serendipity.org.za
Fri Apr 13 11:50:36 PDT 2007
Hi,
On 13 Apr 2007, at 20:18, Eric D. Kjeldergaard wrote:
> Hello list.
>
> I'm trying to get CalendarServer working on freebsd as the sf.net
> page says
> that it builds and runs here. The sf.net page points towards the
> bug tracker
> and I don't see any bugs listed there, but it needs coaxing to build
> pykerberos and pysqlite. After getting it built, it fails to start
> up. I'm
> mostly wondering if anyone has it running on FreeBSD and could give
> some tips
> before I sink a lot of time into trying to get it up and running.
> No need to
> reinvent the wheel, I figure, but if the wheel isn't invented
> yet...Anyhow,
> thanks for any help you can provide,
I've got it working on two FreeBSD 6.2-R boxes not so long ago.
Install the following ports:
/usr/ports/textproc/py-xml
/usr/ports/security/py-openssl
/usr/ports/devel/py-dateutil
/usr/ports/security/krb5
/usr/ports/databases/py-sqlite3/
/usr/ports/lang/python24/
/usr/ports/databases/py-pysqlite20/
The build will look for gssapi.h in /usr/include/gssapi. Kerberos
installs this to /usr/local/include/gssapi, so I just did a symlink.
# cd /usr/include
# ln -s /usr/local/include/gssapi .
Check out the trunk with SVN:
# cd /usr/ports/devel/subversion/
# make -DWITH_MOD_DAV_SVN install
(or ensure that svn --version tells you that you got the ra_dav
module enabled).
# svn checkout http://svn.macosforge.org/repository/calendarserver/
CalendarServer/trunk CalendarServer
# cd CalendarServer
# ./run
Aha. This will probably fail. Change the path (first line) for bash
from /bin/bash to /usr/local/bin/bash
Now try it again:
# ./run
This will download and build the other dependencies like pyOpenSSL,
PyKerberos, vobject, xattr, etc.
# ./run
Will complain about a missing configuration file:
# cp conf/caldavd-test.plist conf/caldavd-dev.plist
# ./run
Fails again, this time with something like: "bin/caldavd: 47: Syntax
error: Bad substitution"
# vim ./bin/caldavd
Modify the try_python () function to look like:
==
try_python ()
{
local python="$1"; shift
if [ -z "${python}" ]; then return 1; fi;
if ! type "${python}" > /dev/null 2>&1; then return 1; fi;
local py_version="24";
#local py_version="$(py_version "${python}")";
if [ "24" -lt "24" ]; then return 1; fi;
#if [ "${py_version/./}" -lt "24" ]; then return 1; fi;
return 0;
}
==
Not neat at all, but it did the trick. I hope you use Python 2.4
(but as I mentioned it earlier, install it).
# ./run
It should start up now.
(Oh, by default it will start the server to listen on 127.0.0.1, to
change it edit conf/caldavd-dev.plist and look for the BindAddress
section and change it).
If you run into any problems, let me know and I'll try take a look.
Cheers,
Jaco
--
bje at serendipity.org.za
the faculty of making fortunate discoveries
More information about the calendarserver-users
mailing list