From 12c098aa0560718dea326b343ed4cd53ba94df49 Mon Sep 17 00:00:00 2001 From: Dirk Meyer Date: Tue, 6 Jan 2004 10:01:22 +0000 Subject: [PATCH] Suggested by: Martyn Hill, Diana Eichert Prayer is yet another Webmail interface for IMAP servers on Unix systems. It exists because we weren't terribly happy about the characteristics of existing Webmail interfaces: in particular scalability problems with common open source Webmail packages and the lack of flexibility that commercial packages would give us. This doesn't mean that Prayer is trying to compete with existing Webmail packages. It just means that Prayer is better suited to our particular environment. WWW: http://www-uxsup.csx.cam.ac.uk/~dpc22/prayer/ --- mail/Makefile | 1 + mail/prayer/Makefile | 57 +++++++++++ mail/prayer/distinfo | 1 + mail/prayer/files/patch-Config | 59 +++++++++++ mail/prayer/files/patch-files-Makefile | 30 ++++++ mail/prayer/files/prayer.sh | 38 ++++++++ mail/prayer/pkg-descr | 10 ++ mail/prayer/pkg-plist | 130 +++++++++++++++++++++++++ 8 files changed, 326 insertions(+) create mode 100644 mail/prayer/Makefile create mode 100644 mail/prayer/distinfo create mode 100644 mail/prayer/files/patch-Config create mode 100644 mail/prayer/files/patch-files-Makefile create mode 100644 mail/prayer/files/prayer.sh create mode 100644 mail/prayer/pkg-descr create mode 100644 mail/prayer/pkg-plist diff --git a/mail/Makefile b/mail/Makefile index efc291d71c5a..60d9984e39f5 100644 --- a/mail/Makefile +++ b/mail/Makefile @@ -282,6 +282,7 @@ SUBDIR += postfix1 SUBDIR += postfixadmin SUBDIR += postilion + SUBDIR += prayer SUBDIR += premail SUBDIR += procmail SUBDIR += prom-mew diff --git a/mail/prayer/Makefile b/mail/prayer/Makefile new file mode 100644 index 000000000000..6945fd55a1f3 --- /dev/null +++ b/mail/prayer/Makefile @@ -0,0 +1,57 @@ +# New ports collection makefile for: prayer +# Date created: 27 Dez 2003 +# Whom: dirk.meyer@dinoex.sub.org +# +# $FreeBSD$ +# + +PORTNAME= prayer +PORTVERSION= 1.0.8 +CATEGORIES= mail www +MASTER_SITES= ftp://ftp.csx.cam.ac.uk/pub/software/email/prayer/ +# ftp://ftp.csx.cam.ac.uk/pub/software/email/prayer/prayer-1.0.8.tar.gz + +MAINTAINER= dinoex@FreeBSD.org +COMMENT= Prayer Webmail System + +BUILD_DEPENDS= ${LOCALBASE}/lib/libc-client4.a:${PORTSDIR}/mail/cclient +.if !defined(PRAYER_WITHOUT_SESSION_CACHE) +LIB_DEPENDS+= ${BERKLEYDB_LIB}:${PORTSDIR}/${BERKLEYDB_PORT} +.endif + +USE_GMAKE= yes +USE_OPENSSL= yes +USE_REINPLACE= yes +USE_PERL5_BUILD= yes +MAKE_ENV+= PORTCFLAGS="${CFLAGS}" +BERKLEYDB_PORT?= databases/db3 +BERKLEYDB_LIB?= db3.3 + +DOCS= ACCOUNTD CMD_LINE DESIGN DONE DONE-OLD FEATURES ICONLIST \ + INSTALL LOGS NOTICE README ROADMAP SECURITY TODO URL_OPTIONS + +do-configure: + @${SED} -e "s=%%PREFIX%%=${PREFIX}=" ${FILESDIR}/prayer.sh \ + > ${WRKSRC}/prayer.sh +.if defined(PRAYER_WITHOUT_SESSION_CACHE) + ${REINPLACE_CMD} \ + -e 's|SESSION_CACHE_ENABLE = true |SESSION_CACHE_ENABLE = false|' \ + -e 's|/usr/local/prayer|${PREFIX}/prayer|' \ + ${WRKSRC}/Config +.endif + +pre-install: + if ! pw groupshow prayer; then pw groupadd prayer; fi + if ! pw usershow prayer; then pw useradd prayer -g prayer \ + -h - -d /nonexistent -s /nonexistent -c "Prayer Webmail"; fi + ${MKDIR} ${PREFIX}/prayer + ${INSTALL_SCRIPT} ${WRKSRC}/prayer.sh \ + ${LOCALBASE}/etc/rc.d/prayer.sh.sample +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} +.for i in ${DOCS} + ${INSTALL_DATA} ${WRKSRC}/docs/${i} ${DOCSDIR}/ +.endfor +.endif + +.include diff --git a/mail/prayer/distinfo b/mail/prayer/distinfo new file mode 100644 index 000000000000..d92259afdf36 --- /dev/null +++ b/mail/prayer/distinfo @@ -0,0 +1 @@ +MD5 (prayer-1.0.8.tar.gz) = 9141cfbd780b771fb8b6294d90956f93 diff --git a/mail/prayer/files/patch-Config b/mail/prayer/files/patch-Config new file mode 100644 index 000000000000..82e1c5812556 --- /dev/null +++ b/mail/prayer/files/patch-Config @@ -0,0 +1,59 @@ +--- Config.orig Thu May 29 11:49:38 2003 ++++ Config Tue Jan 6 10:20:40 2004 +@@ -8,7 +8,7 @@ + # Conventional Configure file. + + SSL_ENABLE = true # SSL requires OpenSSL +-SESSION_CACHE_ENABLE = true # SSL session cache Requires Berkeley DB 3 or 4 ++SESSION_CACHE_ENABLE = false # SSL session cache Requires Berkeley DB 3 or 4 + GZIP_ENABLE = true # Enable on the fly compression of pages + FENCE_ENABLE = false # Use Electric Fence to catch malloc problems + DIRECT_ENABLE = false # Experimental. Leave this switched off... +@@ -26,7 +26,7 @@ + + ############################################################################ + # Location of compiler +-CC = gcc ++#CC = gcc + # Location of make program (GNU make required) + MAKE = gmake + # Location of install program (GNU install or compatible required) +@@ -35,7 +35,8 @@ + # Base Compiler options for GCC. + #BASECFLAGS = -Wall -g + #BASELDFLAGS = -g +-BASECFLAGS = -Wall -g -O2 ++#BASECFLAGS = -Wall -g -O2 ++BASECFLAGS = -Wall -g ${PORTCFLAGS} + BASELDFLAGS = -g -O2 + BASE_LIBS = -lcrypt + +@@ -56,9 +57,9 @@ + # which points to ../../imap/c-client. This just reduces the amount of + # noise output on each line when building the package. + # +-CCLIENT_DIR=./c-client +-CCLIENT_INCLUDE=-I $(CCLIENT_DIR) +-CCLIENT_LIB=./$(CCLIENT_DIR)/c-client.a ++#CCLIENT_DIR=./c-client ++#CCLIENT_INCLUDE=-I $(CCLIENT_DIR) ++#CCLIENT_LIB=./$(CCLIENT_DIR)/c-client.a + CCLIENT_SSL_ENABLE = true + + # +@@ -78,12 +79,14 @@ + # Following works with the mail/cclient port from FreeBSD + # + #CCLIENT_INCLUDE = -I/usr/local/include/c-client ++CCLIENT_INCLUDE = -I${LOCALBASE}/include/c-client + #CCLIENT_LIB = -L/usr/local/lib -lc-client4 ++CCLIENT_LIB = -L${LOCALBASE}/lib -lc-client4 + # + # Complication: + # The FreeBSD port uses PAM and optionally SSL if built WITH_SSL=yes. + # +-#CCLIENT_SSL_ENABLE = true ++CCLIENT_SSL_ENABLE = true + #CCLIENT_KERB_ENABLE = true + + ############################################################################ diff --git a/mail/prayer/files/patch-files-Makefile b/mail/prayer/files/patch-files-Makefile new file mode 100644 index 000000000000..83f6f2ab28d5 --- /dev/null +++ b/mail/prayer/files/patch-files-Makefile @@ -0,0 +1,30 @@ +--- files/Makefile.orig Sun May 11 16:59:12 2003 ++++ files/Makefile Tue Jan 6 10:33:33 2004 +@@ -57,12 +57,12 @@ + fi + + install-config: etc/prayer.cf +- $(INSTALL) -D -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ +- etc/prayer.cf ${BROOT}${PRAYER_CONFIG_FILE} ++ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ ++ etc/prayer.cf ${BROOT}${PRAYER_CONFIG_FILE}-dist + + install-aconfig: +- $(INSTALL) -D -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ +- etc/prayer-accountd.cf ${BROOT}${ACCOUNTD_CONFIG_FILE} ++ $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ ++ etc/prayer-accountd.cf ${BROOT}${ACCOUNTD_CONFIG_FILE}-dist + + install-motd: + $(INSTALL) -o $(RO_USER) -g $(RO_GROUP) -m $(PUBLIC_FILE) \ +@@ -82,8 +82,8 @@ + BIN_DIR=$(BIN_DIR) INSTALL=$(INSTALL) \ + ./install.sh + if [ ! -f $(BROOT)$(PREFIX)/certs/prayer.pem ]; then $(MAKE) install-cert; fi +- if [ ! -f $(BROOT)$(PRAYER_CONFIG_FILE) ]; then $(MAKE) install-config; fi +- if [ ! -f $(BROOT)$(ACCOUNTD_CONFIG_FILE) ]; then $(MAKE) install-aconfig; fi ++ if [ ! -f $(BROOT)$(PRAYER_CONFIG_FILE)-dist ]; then $(MAKE) install-config; fi ++ if [ ! -f $(BROOT)$(ACCOUNTD_CONFIG_FILE)-dist ]; then $(MAKE) install-aconfig; fi + if [ ! -f $(BROOT)$(PREFIX)/etc/motd.html ]; then $(MAKE) install-motd; fi + if [ ! -f $(BROOT)$(PREFIX)/etc/welcome.html ]; then $(MAKE) install-welcome; fi + diff --git a/mail/prayer/files/prayer.sh b/mail/prayer/files/prayer.sh new file mode 100644 index 000000000000..f0f6ccb99979 --- /dev/null +++ b/mail/prayer/files/prayer.sh @@ -0,0 +1,38 @@ +#!/bin/sh +# +# $FreeBSD$ +# +if ! test -x %%PREFIX%%/prayer/sbin/prayer +then + exit 0 +fi +# +case "$1" in +start) + %%PREFIX%%/prayer/sbin/prayer && + echo -n ' prayer' + ;; +stop) + for i in \ + /var/spool/prayer/pid/prayer-session \ + /var/spool/prayer/pid/prayer + do + if test -e ${i} + then + kill `head -1 ${i}` + rm -f "${i}" + fi + done + killall prayer-session + killall prayer + echo -n ' prayer' + ;; +restart) + $0 stop + $0 start + ;; +*) + echo "Usage: ${0##*/}: { start | stop | restart }" >&2 + exit 64 + ;; +esac diff --git a/mail/prayer/pkg-descr b/mail/prayer/pkg-descr new file mode 100644 index 000000000000..c951f0d4dcef --- /dev/null +++ b/mail/prayer/pkg-descr @@ -0,0 +1,10 @@ +Prayer is yet another Webmail interface for IMAP servers on Unix systems. + +It exists because we weren't terribly happy about the characteristics of +existing Webmail interfaces: in particular scalability problems with common +open source Webmail packages and the lack of flexibility that commercial +packages would give us. This doesn't mean that Prayer is trying to compete +with existing Webmail packages. It just means that Prayer is better suited +to our particular environment. + +WWW: http://www-uxsup.csx.cam.ac.uk/~dpc22/prayer/ diff --git a/mail/prayer/pkg-plist b/mail/prayer/pkg-plist new file mode 100644 index 000000000000..0496ae4a8c89 --- /dev/null +++ b/mail/prayer/pkg-plist @@ -0,0 +1,130 @@ +@exec if ! pw groupshow prayer; then pw groupadd prayer; fi +@exec if ! pw usershow prayer; then pw useradd prayer -g prayer -h - -d /nonexistent -s /nonexistent -c "Prayer Webmail"; fi +etc/rc.d/prayer.sh.sample +prayer/help/CVS/Root +prayer/help/CVS/Repository +prayer/help/CVS/Entries +prayer/help/compose/CVS/Root +prayer/help/compose/CVS/Repository +prayer/help/compose/CVS/Entries +prayer/help/compose/large.html +prayer/help/compose/normal.html +prayer/help/compose/postponed.html +prayer/help/compose/role_list.html +prayer/help/abook_add.html +prayer/help/abook_list.html +prayer/help/abook_search.html +prayer/help/abook_xfer.html +prayer/help/attachments.html +prayer/help/block.html +prayer/help/copy.html +prayer/help/dictionary.html +prayer/help/display.html +prayer/help/favourites.html +prayer/help/filter.html +prayer/help/filter_select.html +prayer/help/folders.html +prayer/help/fullname.html +prayer/help/include.html +prayer/help/list.html +prayer/help/manage.html +prayer/help/passwd.html +prayer/help/quota.html +prayer/help/rename.html +prayer/help/redirect.html +prayer/help/reply.html +prayer/help/roles_entry.html +prayer/help/roles_list.html +prayer/help/search.html +prayer/help/spam.html +prayer/help/toolbar.html +prayer/help/transfer.html +prayer/help/upload_select.html +prayer/help/vacation.html +prayer/help/vaclog.html +prayer/help/welcome.html +prayer/help/prefs/CVS/Root +prayer/help/prefs/CVS/Repository +prayer/help/prefs/CVS/Entries +prayer/help/prefs/compose1.html +prayer/help/prefs/compose2.html +prayer/help/prefs/display1.html +prayer/help/prefs/folder.html +prayer/help/prefs/general.html +prayer/icons/CVS/Root +prayer/icons/CVS/Repository +prayer/icons/CVS/Entries +prayer/icons/addressbook-inactive.gif +prayer/icons/addressbook.gif +prayer/icons/back.gif +prayer/icons/compose-inactive.gif +prayer/icons/compose.gif +prayer/icons/cross.gif +prayer/icons/dir.gif +prayer/icons/display-inactive.gif +prayer/icons/display.gif +prayer/icons/folders-inactive.gif +prayer/icons/folders.gif +prayer/icons/help-inactive.gif +prayer/icons/help.gif +prayer/icons/left-inactive.gif +prayer/icons/left.gif +prayer/icons/leftleft-inactive.gif +prayer/icons/leftleft.gif +prayer/icons/logout.gif +prayer/icons/mailbox-inactive.gif +prayer/icons/mailbox.gif +prayer/icons/manage-inactive.gif +prayer/icons/manage.gif +prayer/icons/msg-answered.gif +prayer/icons/msg-deleted.gif +prayer/icons/msg-seen.gif +prayer/icons/msg-unseen.gif +prayer/icons/off.gif +prayer/icons/on.gif +prayer/icons/paperclip-small.gif +prayer/icons/right-inactive.gif +prayer/icons/right.gif +prayer/icons/rightright-inactive.gif +prayer/icons/rightright.gif +prayer/icons/tick.gif +prayer/icons/univheader.gif +prayer/etc/prayer.cf-dist +prayer/etc/prayer-accountd.cf-dist +prayer/etc/motd.html +prayer/etc/welcome.html +prayer/sbin/prayer +prayer/sbin/prayer-session +prayer/sbin/prayer-ssl-prune +prayer/sbin/prayer-cyclog +@dirrm prayer/help/CVS +@dirrm prayer/help/compose/CVS +@dirrm prayer/help/compose +@dirrm prayer/help/prefs/CVS +@dirrm prayer/help/prefs +@dirrm prayer/help +@dirrm prayer/icons/CVS +@dirrm prayer/icons +@dirrm prayer/etc +@dirrm prayer/certs +@dirrm prayer/sbin +@dirrm prayer +%%PORTDOCS%%%%DOCSDIR%%/ACCOUNTD +%%PORTDOCS%%%%DOCSDIR%%/CMD_LINE +%%PORTDOCS%%%%DOCSDIR%%/DESIGN +%%PORTDOCS%%%%DOCSDIR%%/DONE +%%PORTDOCS%%%%DOCSDIR%%/DONE-OLD +%%PORTDOCS%%%%DOCSDIR%%/FEATURES +%%PORTDOCS%%%%DOCSDIR%%/ICONLIST +%%PORTDOCS%%%%DOCSDIR%%/INSTALL +%%PORTDOCS%%%%DOCSDIR%%/LOGS +%%PORTDOCS%%%%DOCSDIR%%/NOTICE +%%PORTDOCS%%%%DOCSDIR%%/README +%%PORTDOCS%%%%DOCSDIR%%/ROADMAP +%%PORTDOCS%%%%DOCSDIR%%/SECURITY +%%PORTDOCS%%%%DOCSDIR%%/TODO +%%PORTDOCS%%%%DOCSDIR%%/URL_OPTIONS +%%PORTDOCS%%@dirrm %%DOCSDIR%% +@exec mkdir -p /var/spool/prayer +@exec chown -R prayer:prayer /var/spool/prayer +@unexec rmdir /var/spool/prayer