summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorjym <jym@pkgsrc.org>2016-06-05 00:02:21 +0000
committerjym <jym@pkgsrc.org>2016-06-05 00:02:21 +0000
commit43f134e7462dbec25c238b0d07155e0c236225bc (patch)
treeaafbaa3c5325faa819aca7b5d5ceca1fb90ce427 /www
parent3a3f4b1215a720c50a61074430cb9ec83f83288a (diff)
downloadpkgsrc-43f134e7462dbec25c238b0d07155e0c236225bc.tar.gz
Add z-push 2.2.10 to pkgsrc.
Z-Push is an open-source implementation of the Microsoft ActiveSync protocol. It can be used to synchronize emails (including push notifications), personal contacts and calendar items between a central HTTP server and a mobile device. It supports a wide range of IMAP, CalDAV and CardDAV servers. It provides a way to push mails to a mobile phone through ActiveSync including iOS devices. XXX This requires a specific PHP module from project Zarafa (PHP-MAPI) at run time. This will be provided in another package.
Diffstat (limited to 'www')
-rw-r--r--www/z-push/DESCR4
-rw-r--r--www/z-push/MESSAGE49
-rw-r--r--www/z-push/Makefile97
-rw-r--r--www/z-push/PLIST173
-rw-r--r--www/z-push/distinfo7
-rw-r--r--www/z-push/files/z-push.conf15
-rw-r--r--www/z-push/patches/patch-config.php22
7 files changed, 367 insertions, 0 deletions
diff --git a/www/z-push/DESCR b/www/z-push/DESCR
new file mode 100644
index 00000000000..e7ea361958d
--- /dev/null
+++ b/www/z-push/DESCR
@@ -0,0 +1,4 @@
+Z-Push is an open-source implementation of the Microsoft ActiveSync protocol.
+It can be used to synchronize emails (including push notifications), personal
+contacts and calendar items between a central HTTP server and a mobile device.
+It supports a wide range of IMAP, CalDAV and CardDAV servers.
diff --git a/www/z-push/MESSAGE b/www/z-push/MESSAGE
new file mode 100644
index 00000000000..bda0630f011
--- /dev/null
+++ b/www/z-push/MESSAGE
@@ -0,0 +1,49 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.1 2016/06/05 00:02:21 jym Exp $
+
+For pkgsrc installations, Z-push is installed with non-default locations:
+
+ Z-push directory: ${ZPUSHDIR}
+ Documentation: ${DOCDIR}
+
+To complete the installation of Z-push, follow these steps:
+
+1. Configure Z-push to use the different servers you want it to support.
+ The configuration file is extensively documented:
+
+ Configuration file: ${PKG_SYSCONFDIR}/config.php
+
+2. You will need to make Z-push accessible through your HTTP server.
+ If you are running Apache and ap-php, you can use the following file:
+
+ ${PKG_SYSCONFDIR}/z-push.conf
+
+ and add an Include directive directly within Apache configuration:
+
+ Include ${PKG_SYSCONFDIR}/z-push.conf
+
+ If you are not using Apache:
+
+ - make Z-push `index.php' accessible directly through the
+ URL `/Microsoft-Server-ActiveSync'
+
+ - set the following PHP flags for the Z-push directory:
+
+ php_flag magic_quotes_gpc off
+ php_flag register_globals off
+ php_flag magic_quotes_runtime off
+ php_flag short_open_tag on
+
+ - adjust the owner and group of the following directories to match
+ the ones corresponding to your webserver:
+
+ ${ZPUSHSTATEDIR} mode=0750
+ ${ZPUSHLOGDIR} mode=0750
+ ${PKG_SYSCONFDIR}/config.php mode=0640
+
+ See Z-push online documentation for further information or refer
+ to the INSTALL file:
+
+ ${HOMEPAGE}
+ ${DOCDIR}/INSTALL
+===========================================================================
diff --git a/www/z-push/Makefile b/www/z-push/Makefile
new file mode 100644
index 00000000000..973ba531081
--- /dev/null
+++ b/www/z-push/Makefile
@@ -0,0 +1,97 @@
+# $NetBSD: Makefile,v 1.1 2016/06/05 00:02:21 jym Exp $
+#
+
+DISTNAME= z-push-${ZPUSH_VERSION}
+ZPUSH_VERSION= 2.2.10
+CATEGORIES= www
+MASTER_SITES= http://download.z-push.org/final/2.2/
+
+MAINTAINER= jym@NetBSD.org
+HOMEPAGE= http://z-push.org/
+COMMENT= Open-source ActiveSync server
+
+LICENSE= gnu-agpl-v3
+
+NO_BUILD= yes
+
+ZPUSHDIR= ${PREFIX}/share/z-push
+EGDIR= ${PREFIX}/share/examples/z-push
+DOCDIR= ${PREFIX}/share/doc/z-push
+ZPUSHSTATEDIR= ${VARBASE}/z-push
+ZPUSHLOGDIR= ${VARBASE}/log/z-push
+
+BUILD_DEFS= APACHE_USER APACHE_GROUP VARBASE
+USE_TOOLS= pax
+
+INSTALLATION_DIRS= ${DOCDIR} ${EGDIR} bin
+
+.include "../../lang/php/phpversion.mk"
+
+DEPENDS+= ${PHP_PKG_PREFIX}-soap>=${PHP_BASE_VERS}:../../net/php-soap
+DEPENDS+= ${PHP_PKG_PREFIX}-pcntl>=${PHP_BASE_VERS}:../../devel/php-pcntl
+DEPENDS+= ${PHP_PKG_PREFIX}-posix>=${PHP_BASE_VERS}:../../devel/php-posix
+DEPENDS+= ${PHP_PKG_PREFIX}-sysvshm>=${PHP_BASE_VERS}:../../devel/php-sysvshm
+DEPENDS+= ${PHP_PKG_PREFIX}-sysvsem>=${PHP_BASE_VERS}:../../devel/php-sysvsem
+
+PKG_SYSCONFSUBDIR= z-push
+
+MESSAGE_SUBST+= ZPUSHDIR=${ZPUSHDIR:Q}
+MESSAGE_SUBST+= ZPUSHSTATEDIR=${ZPUSHSTATEDIR:Q}
+MESSAGE_SUBST+= ZPUSHLOGDIR=${ZPUSHLOGDIR:Q}
+MESSAGE_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR:Q}
+MESSAGE_SUBST+= HOMEPAGE=${HOMEPAGE:Q}
+MESSAGE_SUBST+= DOCDIR=${DOCDIR:Q}
+
+OWN_DIRS_PERMS+= ${ZPUSHSTATEDIR} \
+ ${APACHE_USER} ${APACHE_GROUP} 0750
+OWN_DIRS_PERMS+= ${ZPUSHLOGDIR} \
+ ${APACHE_USER} ${APACHE_GROUP} 0750
+
+CONF_FILES_PERMS+= ${EGDIR}/config.php ${PKG_SYSCONFDIR}/config.php \
+ ${ROOT_USER} ${APACHE_GROUP} 0640
+CONF_FILES_PERMS+= ${EGDIR}/z-push.conf ${PKG_SYSCONFDIR}/z-push.conf \
+ ${ROOT_USER} ${APACHE_GROUP} 0640
+
+REPLACE_INTERPRETER+= php
+REPLACE.php.old= .*php
+REPLACE.php.new= ${PREFIX}/bin/php
+REPLACE_FILES.php= z-push-admin.php
+REPLACE_FILES.php+= z-push-top.php
+REPLACE_FILES.php+= backend/zarafa/listfolders.php
+
+SUBST_CLASSES+= conf
+SUBST_STAGE.conf= pre-configure
+SUBST_FILES.conf= ${WRKDIR}/z-push.conf
+SUBST_VARS.conf= ZPUSHDIR
+SUBST_MESSAGE.conf= Fixing Z-push directory path for apache configuration.
+
+SUBST_CLASSES+= state-dir
+SUBST_STAGE.state-dir= pre-configure
+SUBST_FILES.state-dir= config.php
+SUBST_VARS.state-dir= ZPUSHSTATEDIR
+SUBST_MESSAGE.state-dir=Fixing Z-push state directory path.
+
+post-extract:
+ ${CP} ${FILESDIR}/z-push.conf ${WRKDIR}/z-push.conf
+
+do-install:
+ ${INSTALL_DATA} ${WRKSRC}/config.php \
+ ${DESTDIR}${EGDIR}/config.php
+ ${INSTALL_DATA} ${WRKDIR}/z-push.conf \
+ ${DESTDIR}${EGDIR}/z-push.conf
+
+ cd ${WRKSRC} && pax -rwpam . ${DESTDIR}${ZPUSHDIR}
+
+. for f in INSTALL LICENSE
+ ${MV} ${DESTDIR}${ZPUSHDIR}/${f} ${DESTDIR}${DOCDIR}
+. endfor
+
+ ${LN} -sf ${ZPUSHDIR}/z-push-top.php \
+ ${DESTDIR}${PREFIX}/bin/z-push-top
+ ${LN} -sf ${ZPUSHDIR}/z-push-admin.php \
+ ${DESTDIR}${PREFIX}/bin/z-push-admin
+ ${LN} -sf ${PKG_SYSCONFDIR}/config.php \
+ ${DESTDIR}${ZPUSHDIR}/config.php
+
+.include "../../lang/php/phpversion.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/www/z-push/PLIST b/www/z-push/PLIST
new file mode 100644
index 00000000000..96cf477dacd
--- /dev/null
+++ b/www/z-push/PLIST
@@ -0,0 +1,173 @@
+@comment $NetBSD: PLIST,v 1.1 2016/06/05 00:02:21 jym Exp $
+bin/z-push-admin
+bin/z-push-top
+share/doc/z-push/INSTALL
+share/doc/z-push/LICENSE
+share/examples/z-push/config.php
+share/examples/z-push/z-push.conf
+share/z-push/autodiscover/INSTALL
+share/z-push/autodiscover/autodiscover.php
+share/z-push/autodiscover/config.php
+share/z-push/autodiscover/response.xml
+share/z-push/backend/combined/combined.php
+share/z-push/backend/combined/config.php
+share/z-push/backend/combined/exporter.php
+share/z-push/backend/combined/importer.php
+share/z-push/backend/imap/config.php
+share/z-push/backend/imap/imap.php
+share/z-push/backend/maildir/config.php
+share/z-push/backend/maildir/maildir.php
+share/z-push/backend/searchldap/config.php
+share/z-push/backend/searchldap/searchldap.php
+share/z-push/backend/vcarddir/config.php
+share/z-push/backend/vcarddir/vcarddir.php
+share/z-push/backend/zarafa/config.php
+share/z-push/backend/zarafa/exporter.php
+share/z-push/backend/zarafa/icalparser.php
+share/z-push/backend/zarafa/importer.php
+share/z-push/backend/zarafa/listfolders.php
+share/z-push/backend/zarafa/mapi/class.baseexception.php
+share/z-push/backend/zarafa/mapi/class.baserecurrence.php
+share/z-push/backend/zarafa/mapi/class.freebusypublish.php
+share/z-push/backend/zarafa/mapi/class.mapiexception.php
+share/z-push/backend/zarafa/mapi/class.meetingrequest.php
+share/z-push/backend/zarafa/mapi/class.recurrence.php
+share/z-push/backend/zarafa/mapi/class.taskrecurrence.php
+share/z-push/backend/zarafa/mapi/class.taskrequest.php
+share/z-push/backend/zarafa/mapi/mapi.util.php
+share/z-push/backend/zarafa/mapi/mapicode.php
+share/z-push/backend/zarafa/mapi/mapidefs.php
+share/z-push/backend/zarafa/mapi/mapiguid.php
+share/z-push/backend/zarafa/mapi/mapitags.php
+share/z-push/backend/zarafa/mapimapping.php
+share/z-push/backend/zarafa/mapiphpwrapper.php
+share/z-push/backend/zarafa/mapiprovider.php
+share/z-push/backend/zarafa/mapistreamwrapper.php
+share/z-push/backend/zarafa/mapiutils.php
+share/z-push/backend/zarafa/tnefparser.php
+share/z-push/backend/zarafa/zarafa.php
+share/z-push/composer.json
+share/z-push/config.php
+share/z-push/include/mimeDecode.php
+share/z-push/include/z_RFC822.php
+share/z-push/index.php
+share/z-push/lib/core/asdevice.php
+share/z-push/lib/core/bodypreference.php
+share/z-push/lib/core/changesmemorywrapper.php
+share/z-push/lib/core/contentparameters.php
+share/z-push/lib/core/devicemanager.php
+share/z-push/lib/core/hierarchycache.php
+share/z-push/lib/core/interprocessdata.php
+share/z-push/lib/core/loopdetection.php
+share/z-push/lib/core/pingtracking.php
+share/z-push/lib/core/statemanager.php
+share/z-push/lib/core/stateobject.php
+share/z-push/lib/core/streamer.php
+share/z-push/lib/core/streamimporter.php
+share/z-push/lib/core/synccollections.php
+share/z-push/lib/core/syncparameters.php
+share/z-push/lib/core/topcollector.php
+share/z-push/lib/core/zlog.php
+share/z-push/lib/core/zpush.php
+share/z-push/lib/core/zpushdefs.php
+share/z-push/lib/default/backend.php
+share/z-push/lib/default/diffbackend/diffbackend.php
+share/z-push/lib/default/diffbackend/diffstate.php
+share/z-push/lib/default/diffbackend/exportchangesdiff.php
+share/z-push/lib/default/diffbackend/importchangesdiff.php
+share/z-push/lib/default/filestatemachine.php
+share/z-push/lib/default/searchprovider.php
+share/z-push/lib/default/simplemutex.php
+share/z-push/lib/exceptions/authenticationrequiredexception.php
+share/z-push/lib/exceptions/exceptions.php
+share/z-push/lib/exceptions/fatalexception.php
+share/z-push/lib/exceptions/fatalmisconfigurationexception.php
+share/z-push/lib/exceptions/fatalnotimplementedexception.php
+share/z-push/lib/exceptions/httpreturncodeexception.php
+share/z-push/lib/exceptions/nohierarchycacheavailableexception.php
+share/z-push/lib/exceptions/nopostrequestexception.php
+share/z-push/lib/exceptions/notimplementedexception.php
+share/z-push/lib/exceptions/provisioningrequiredexception.php
+share/z-push/lib/exceptions/stateinvalidexception.php
+share/z-push/lib/exceptions/statenotfoundexception.php
+share/z-push/lib/exceptions/statenotyetavailableexception.php
+share/z-push/lib/exceptions/statusexception.php
+share/z-push/lib/exceptions/syncobjectbrokenexception.php
+share/z-push/lib/exceptions/wbxmlexception.php
+share/z-push/lib/exceptions/zpushexception.php
+share/z-push/lib/interface/ibackend.php
+share/z-push/lib/interface/ichanges.php
+share/z-push/lib/interface/iexportchanges.php
+share/z-push/lib/interface/iimportchanges.php
+share/z-push/lib/interface/isearchprovider.php
+share/z-push/lib/interface/istatemachine.php
+share/z-push/lib/request/folderchange.php
+share/z-push/lib/request/foldersync.php
+share/z-push/lib/request/getattachment.php
+share/z-push/lib/request/gethierarchy.php
+share/z-push/lib/request/getitemestimate.php
+share/z-push/lib/request/itemoperations.php
+share/z-push/lib/request/meetingresponse.php
+share/z-push/lib/request/moveitems.php
+share/z-push/lib/request/notify.php
+share/z-push/lib/request/ping.php
+share/z-push/lib/request/provisioning.php
+share/z-push/lib/request/request.php
+share/z-push/lib/request/requestprocessor.php
+share/z-push/lib/request/resolverecipients.php
+share/z-push/lib/request/search.php
+share/z-push/lib/request/sendmail.php
+share/z-push/lib/request/settings.php
+share/z-push/lib/request/sync.php
+share/z-push/lib/request/validatecert.php
+share/z-push/lib/syncobjects/syncappointment.php
+share/z-push/lib/syncobjects/syncappointmentexception.php
+share/z-push/lib/syncobjects/syncattachment.php
+share/z-push/lib/syncobjects/syncattendee.php
+share/z-push/lib/syncobjects/syncbaseattachment.php
+share/z-push/lib/syncobjects/syncbasebody.php
+share/z-push/lib/syncobjects/synccontact.php
+share/z-push/lib/syncobjects/syncdeviceinformation.php
+share/z-push/lib/syncobjects/syncdevicepassword.php
+share/z-push/lib/syncobjects/syncfolder.php
+share/z-push/lib/syncobjects/syncitemoperationsattachment.php
+share/z-push/lib/syncobjects/syncmail.php
+share/z-push/lib/syncobjects/syncmailflags.php
+share/z-push/lib/syncobjects/syncmeetingrequest.php
+share/z-push/lib/syncobjects/syncmeetingrequestrecurrence.php
+share/z-push/lib/syncobjects/syncnote.php
+share/z-push/lib/syncobjects/syncobject.php
+share/z-push/lib/syncobjects/syncoof.php
+share/z-push/lib/syncobjects/syncoofmessage.php
+share/z-push/lib/syncobjects/syncprovisioning.php
+share/z-push/lib/syncobjects/syncrecurrence.php
+share/z-push/lib/syncobjects/syncresolverecipient.php
+share/z-push/lib/syncobjects/syncresolverecipients.php
+share/z-push/lib/syncobjects/syncresolverecipientsavailability.php
+share/z-push/lib/syncobjects/syncresolverecipientscertificates.php
+share/z-push/lib/syncobjects/syncresolverecipientsoptions.php
+share/z-push/lib/syncobjects/syncresolverecipientspicture.php
+share/z-push/lib/syncobjects/syncsendmail.php
+share/z-push/lib/syncobjects/syncsendmailsource.php
+share/z-push/lib/syncobjects/synctask.php
+share/z-push/lib/syncobjects/synctaskrecurrence.php
+share/z-push/lib/syncobjects/syncuserinformation.php
+share/z-push/lib/syncobjects/syncvalidatecert.php
+share/z-push/lib/utils/compat.php
+share/z-push/lib/utils/stringstreamwrapper.php
+share/z-push/lib/utils/timezoneutil.php
+share/z-push/lib/utils/utils.php
+share/z-push/lib/utils/zpushadmin.php
+share/z-push/lib/wbxml/replacenullcharfilter.php
+share/z-push/lib/wbxml/wbxmldecoder.php
+share/z-push/lib/wbxml/wbxmldefs.php
+share/z-push/lib/wbxml/wbxmlencoder.php
+share/z-push/lib/webservice/webservice.php
+share/z-push/lib/webservice/webservicedevice.php
+share/z-push/lib/webservice/webserviceusers.php
+share/z-push/tools/dev/printwbxml.php
+share/z-push/tools/fix-meetings-2.0.8+2.1.0-ios7.py
+share/z-push/tools/migrate-2.0.x-2.1.0.php
+share/z-push/version.php
+share/z-push/z-push-admin.php
+share/z-push/z-push-top.php
diff --git a/www/z-push/distinfo b/www/z-push/distinfo
new file mode 100644
index 00000000000..d9024e9740a
--- /dev/null
+++ b/www/z-push/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2016/06/05 00:02:21 jym Exp $
+
+SHA1 (z-push-2.2.10.tar.gz) = 7114fa8500e2b7e88206274ce9399939999047e1
+RMD160 (z-push-2.2.10.tar.gz) = c489151ae24268192d522cd448c01f3e43463f33
+SHA512 (z-push-2.2.10.tar.gz) = c7bd33844d3c9014074a54bb5287dbb394a8dca2d12c16ee3a579c2e8380e2d458fc78e848abcddbf703cda19b0d461b0102aafe154c1e1c1a277f45e1757515
+Size (z-push-2.2.10.tar.gz) = 468698 bytes
+SHA1 (patch-config.php) = d580422b5341e4eb86771ce40f28db80e9878501
diff --git a/www/z-push/files/z-push.conf b/www/z-push/files/z-push.conf
new file mode 100644
index 00000000000..754bcaa26c3
--- /dev/null
+++ b/www/z-push/files/z-push.conf
@@ -0,0 +1,15 @@
+# Respect the URL as specified in the Alias to make ActiveSync working
+# properly with your devices.
+
+Alias /Microsoft-Server-ActiveSync "@ZPUSHDIR@/index.php"
+<Directory "@ZPUSHDIR@">
+ Options -Indexes
+ AllowOverride None
+ Order allow,deny
+ allow from all
+
+ php_flag magic_quotes_gpc off
+ php_flag register_globals off
+ php_flag magic_quotes_runtime off
+ php_flag short_open_tag on
+</Directory>
diff --git a/www/z-push/patches/patch-config.php b/www/z-push/patches/patch-config.php
new file mode 100644
index 00000000000..07931873fbe
--- /dev/null
+++ b/www/z-push/patches/patch-config.php
@@ -0,0 +1,22 @@
+$NetBSD: patch-config.php,v 1.1 2016/06/05 00:02:21 jym Exp $
+
+Use the correct path for the Z-push state directory.
+
+--- config.php.orig 2016-05-04 23:37:41.000000000 +0000
++++ config.php
+@@ -72,7 +72,7 @@
+ /**********************************************************************************
+ * Default FileStateMachine settings
+ */
+- define('STATE_DIR', '/var/lib/z-push/');
++ define('STATE_DIR', '@ZPUSHSTATEDIR@');
+
+
+ /**********************************************************************************
+@@ -282,4 +282,4 @@
+ */
+ );
+
+-?>
+\ No newline at end of file
++?>