diff options
-rw-r--r-- | network/zarafa/README.Slackware | 31 | ||||
-rw-r--r-- | network/zarafa/doinst.sh | 16 | ||||
-rw-r--r-- | network/zarafa/ical2mapi.patch | 14 | ||||
-rw-r--r-- | network/zarafa/testtools.patch | 32 | ||||
-rw-r--r-- | network/zarafa/vmime-zarafa.patch | 6 | ||||
-rw-r--r-- | network/zarafa/zarafa.SlackBuild | 45 | ||||
-rw-r--r-- | network/zarafa/zarafa.info | 8 |
7 files changed, 107 insertions, 45 deletions
diff --git a/network/zarafa/README.Slackware b/network/zarafa/README.Slackware index d86165b9d7..569141b247 100644 --- a/network/zarafa/README.Slackware +++ b/network/zarafa/README.Slackware @@ -23,28 +23,43 @@ You can change the name of the user and password as you please. ---------------------------------- The sample configuration files are installed in /etc/zarafa/ -Thera are files for the server, spooler, gateway, etc. +There are files for the server, spooler, gateway, etc. Change at least the file server.cfg to the correct values for your MySQL server: - mysql_host (can be localhost is mysql is on the same box) + mysql_host (can be localhost if mysql is on the same box) mysql_user (default is root, not a good idea) mysql_password 3) Starting and stopping services --------------------------------- -You can start and stop the zarafa services with the command: +For all services a /etc/rc.d/rc.zarafa-* script is installed. +To start a particular service, make the script executable and include a few +lines in your /etc/rc.d/rc.local and /etc/rc.d/rc.local_shutdown script. - # zarafa-<service> start | stop +As an example for the zarafa-server: -For instance: + # chmod +x /etc/rc.d/rc.zarafa-server - # zarafa-server start +Include the following lines in /etc/rc.d/rc.local, they will check all +scripts related to zarafa and start them if the executable bit is set: -Select the services you need to start and put the commands in -/etc/rc.d/rc.local & /etc/rc.d/rc.local_shutdown + for z in server spooler gateway dagent ical monitor indexer ; do + if [ -x /etc/rc.d/rc.zarafa-$z ]; then + /etc/rc.d/rc.zarafa-$z start + fi + done + +To stop them at shutting down your server, include these lines in +/etc/rc.d/rc.local_shutdown: + + for z in indexer monitor ical dagent gateway spooler server ; do + if [ -x /etc/rc.d/rc.zarafa-$z ]; then + /etc/rc.d/rc.zarafa-$z stop + fi + done 4) Creating "public store" -------------------------- diff --git a/network/zarafa/doinst.sh b/network/zarafa/doinst.sh index a7a54d81e2..ab8d7de91d 100644 --- a/network/zarafa/doinst.sh +++ b/network/zarafa/doinst.sh @@ -11,6 +11,22 @@ config() { # Otherwise, we leave the .new copy for the admin to consider... } +preserve_perms() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + if [ -e $OLD ]; then + cp -a $OLD ${NEW}.incoming + cat $NEW > ${NEW}.incoming + mv ${NEW}.incoming $NEW + fi + config $NEW +} + for cnf in etc/zarafa/*.cfg.new; do config $cnf done + +for rc in etc/rc.d/rc.zarafa-*.new; do + preserve_perms $rc +done + diff --git a/network/zarafa/ical2mapi.patch b/network/zarafa/ical2mapi.patch deleted file mode 100644 index 4e60671b75..0000000000 --- a/network/zarafa/ical2mapi.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- zarafa-6.30.5/ECtools/ECTestTools/ICalTests/ical2mapi.cpp 2009-11-12 20:55:01.000000000 -0200 -+++ zarafa-6.30.5_patched/ECtools/ECTestTools/ICalTests/ical2mapi.cpp 2009-12-12 12:28:15.000000000 -0200 -@@ -178,9 +178,9 @@ - if (readfile(argv[4], &icalstring)) - goto exit; - -- CreateICalToMapi(lpInbox, lpAdrBook, &lpICalToMapi); -+ CreateICalToMapi(lpInbox, lpAdrBook, 0, &lpICalToMapi); - -- hr = lpICalToMapi->ParseICal(icalstring, "UTF-8", "UTC", 0); // assume ical file is in utf-8 -+ hr = lpICalToMapi->ParseICal(icalstring, "UTF-8", "UTC", NULL, 0); // assume ical file is in utf-8 - if (FAILED(hr)) { - cerr << "unable to parse" << endl; - goto exit; diff --git a/network/zarafa/testtools.patch b/network/zarafa/testtools.patch new file mode 100644 index 0000000000..cf78c7588b --- /dev/null +++ b/network/zarafa/testtools.patch @@ -0,0 +1,32 @@ +--- zarafa-6.40.2/ECtools/ECTestTools/RecurrenceTest/rectest.cpp 2010-08-30 08:01:44.000000000 -0300 ++++ zarafa-6.40.2_patched/ECtools/ECTestTools/RecurrenceTest/rectest.cpp 2010-09-04 13:27:42.000000000 -0300 +@@ -79,7 +79,7 @@ + + RecurrenceState r; + +- hr = r.ParseBlob((char *)strBin.c_str(), strBin.size()); ++ hr = r.ParseBlob((char *)strBin.c_str(), strBin.size(), 0); + + if(hr == hrSuccess) { + cerr << "Recurrence OK" << std::endl; +--- zarafa-6.40.2/ECtools/ECTestTools/ICalTests/mapi2ical.cpp 2010-08-30 08:01:44.000000000 -0300 ++++ zarafa-6.40.2_patched/ECtools/ECTestTools/ICalTests/mapi2ical.cpp 2010-09-04 13:55:38.000000000 -0300 +@@ -170,7 +170,7 @@ + goto next; + + +- hr = lpMapiToICal->AddMessage(lpMessage, 0); ++ hr = lpMapiToICal->AddMessage(lpMessage, std::string(), 0); + if (hr != hrSuccess) { + cerr << "-- broken message!" << stringify(hr, 1) << endl; + goto next; +--- zarafa-6.40.2/ECtools/ECTestTools/ICalTests/Makefile.in 2010-08-30 04:31:48.000000000 -0300 ++++ zarafa-6.40.2_patched/ECtools/ECTestTools/ICalTests/Makefile.in 2010-09-04 15:09:39.000000000 -0300 +@@ -272,6 +272,7 @@ + ${top_builddir}/common/libcommon_mapi.la \ + ${top_builddir}/common/libcommon_util.la \ + ${top_builddir}/libicalmapi/libicalmapi.la \ ++ ${top_builddir}/libfreebusy/libfreebusy.la \ + $(PROG_LIBS) $(ICAL_LIBS) + + mapi2ical_SOURCES = mapi2ical.cpp diff --git a/network/zarafa/vmime-zarafa.patch b/network/zarafa/vmime-zarafa.patch index 1811338867..18e00eb0a2 100644 --- a/network/zarafa/vmime-zarafa.patch +++ b/network/zarafa/vmime-zarafa.patch @@ -1,6 +1,6 @@ ---- zarafa-6.30.5/configure 2009-11-12 20:28:29.000000000 -0200 -+++ zarafa-6.30.5_patched/configure 2009-12-12 18:27:55.000000000 -0200 -@@ -22494,7 +22494,7 @@ +--- zarafa-6.40.1/configure 2010-08-03 06:42:48.000000000 -0300 ++++ zarafa-6.40.1_patched/configure 2010-08-30 23:46:08.000000000 -0300 +@@ -22693,7 +22693,7 @@ _ACEOF VMIME_CFLAGS=-I$VMIME_PREFIX diff --git a/network/zarafa/zarafa.SlackBuild b/network/zarafa/zarafa.SlackBuild index 68e5cf2f12..277c5a8a59 100644 --- a/network/zarafa/zarafa.SlackBuild +++ b/network/zarafa/zarafa.SlackBuild @@ -4,19 +4,17 @@ # an MS Exchange substitute # Written by Niels Horn <niels.horn@gmail.com> -# revision date 2010/05/28 +# revision date 2010/09/07 PRGNAM=zarafa -VERSION=${VERSION:-6.30.14} +VERSION=${VERSION:-6.40.2} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} -# Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then case "$( uname -m )" in i?86) ARCH=i486 ;; arm*) ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: *) ARCH=$( uname -m ) ;; esac fi @@ -50,14 +48,13 @@ cd $PRGNAM-$VERSION chown -R root:root . chmod -R u+w,go+r-w,a-s . -# Apply patches to avoid compiling error -# (note: this is my personal solution / hack, I did not find any answer on -# the official zarafa forum, although other users reported the same issue.) -patch -p1 < $CWD/ical2mapi.patch - # Apply patch to use "vmime-zarafa" instead of "vmime" patch -p1 < $CWD/vmime-zarafa.patch +# Apply patch to solve some problems with the ECTestTools in 6.40.2 +# it seems upstream forgot to adapt them to the new version... +patch -p1 < $CWD/testtools.patch + SLKCFLAGS="$SLKCFLAGS -I/usr/include/vmime-zarafa" CFLAGS=$SLKCFLAGS \ @@ -69,10 +66,12 @@ CPPFLAGS=$SLKCFLAGS \ --localstatedir=/var \ --mandir=/usr/man \ --docdir=/usr/doc/$PRGNAM-$VERSION \ + --sysconfdir=/etc \ --disable-static \ --with-userscript-prefix=/etc/zarafa/userscripts \ --with-quotatemplate-prefix=/etc/zarafa/quotamails \ --with-vmime-prefix=/usr/include/vmime-zarafa \ + --with-clucene-lib-prefix=/usr/lib${LIBDIRSUFFIX} \ --build=$ARCH-slackware-linux make @@ -84,13 +83,27 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ find $PKG/usr/man -type f -exec gzip -9 {} \; for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done -# Sample configuration files -mkdir -p $PKG/etc/$PRGNAM -( cd $PKG/usr/doc/$PRGNAM-$VERSION - for cnf in *.cfg; do - mv $cnf $PKG/etc/$PRGNAM/$cnf.new - done -) +# Rename cfg files to .new +for cfg in $PKG/etc/$PRGNAM/*.cfg; do + mv $cfg $cfg.new +done + +# The sample config of zarafa-indexer ends up in the wrong directory somehow... +mv $PKG/usr/share/doc/zarafa-indexer/example-config/* $PKG/usr/doc/$PRGNAM-$VERSION/example-config/ +rm -rf $PKG/usr/share/doc + +# Remove sysconfig files. We don't use them and they only set the collation, +# which is taken care of in the rc.* scripts as well +rm -rf $PKG/etc/sysconfig + +# Move /etc/init.d scripts to /etc/rc.d with the correct naming +mkdir -p $PKG/etc/rc.d +for script in $PKG/etc/init.d/*; do + rc=$(basename $script) + mv $script $PKG/etc/rc.d/rc.$rc.new + chmod -x $PKG/etc/rc.d/rc.$rc.new +done +rm -rf $PKG/etc/init.d # Directory for log file mkdir -p $PKG/var/log/$PRGNAM diff --git a/network/zarafa/zarafa.info b/network/zarafa/zarafa.info index 6eb810f662..3a65f71202 100644 --- a/network/zarafa/zarafa.info +++ b/network/zarafa/zarafa.info @@ -1,10 +1,10 @@ PRGNAM="zarafa" -VERSION="6.30.14" +VERSION="6.40.2" HOMEPAGE="http://www.zarafa.com/" -DOWNLOAD="http://download.zarafa.com/zarafa/drupal/ondemand.php?version=6.30.14&src=zarafa-6.30.14" -MD5SUM="fa3183f71027b8025373b05f27aaf742" +DOWNLOAD="http://www.nielshorn.net/_download/slackware/source/zarafa-6.40.2.tar.gz" +MD5SUM="0e297c5b7d4a476806bcc60a86901838" DOWNLOAD_x86_64="" MD5SUM_x86_64="" MAINTAINER="Niels Horn" EMAIL="niels.horn@gmail.com" -APPROVED="rworkman" +APPROVED="dsomero" |