summaryrefslogtreecommitdiff
path: root/mail
diff options
context:
space:
mode:
authorjlam <jlam>2000-12-10 09:45:32 +0000
committerjlam <jlam>2000-12-10 09:45:32 +0000
commit9c66038b3eb39d74d29db963f0d4b1d2b5d84909 (patch)
treead93154f7fd85643e4d139ce62cd70ba6134004e /mail
parent9c7bcf8eb5554bc204af898abec84b7f7fb0f636 (diff)
downloadpkgsrc-9c66038b3eb39d74d29db963f0d4b1d2b5d84909.tar.gz
Update cyrus-imapd to 1.6.24nb1:
* Update dependency on cyrus-sasl to >=1.5.24nb2. * Move creation of cyrus user and mail group to cyrus-sasl. * Install HTML documentation. * Install minimal imapd.conf configuration file defaulting to 'pwcheck' authentication. * Install mkimap perl script for creating cyrus imap directories. * Improvements to DEINSTALL/INSTALL scripts. * Make me the maintainer.
Diffstat (limited to 'mail')
-rw-r--r--mail/cyrus-imapd/Makefile115
-rw-r--r--mail/cyrus-imapd/files/imapd.conf16
-rw-r--r--mail/cyrus-imapd/files/patch-sum6
-rw-r--r--mail/cyrus-imapd/patches/patch-aa19
-rw-r--r--mail/cyrus-imapd/patches/patch-ab13
-rw-r--r--mail/cyrus-imapd/patches/patch-ac13
-rw-r--r--mail/cyrus-imapd/patches/patch-ad13
-rw-r--r--mail/cyrus-imapd/pkg/DEINSTALL56
-rw-r--r--mail/cyrus-imapd/pkg/DESCR18
-rw-r--r--mail/cyrus-imapd/pkg/INSTALL76
-rw-r--r--mail/cyrus-imapd/pkg/PLIST17
11 files changed, 250 insertions, 112 deletions
diff --git a/mail/cyrus-imapd/Makefile b/mail/cyrus-imapd/Makefile
index b3d5afe4b54..38b63c03601 100644
--- a/mail/cyrus-imapd/Makefile
+++ b/mail/cyrus-imapd/Makefile
@@ -1,87 +1,82 @@
-# $NetBSD: Makefile,v 1.5 2000/10/25 08:01:25 rh Exp $
+# $NetBSD: Makefile,v 1.6 2000/12/10 09:45:32 jlam Exp $
DISTNAME= cyrus-imapd-1.6.24
+PKGNAME= ${DISTNAME}nb1
CATEGORIES= mail
-MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/
+MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
+ ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/OLD-VERSIONS/imap/
-MAINTAINER= packages@netbsd.org
+MAINTAINER= jlam@netbsd.org
HOMEPAGE= http://asg.web.cmu.edu/cyrus/imapd/
-DEPENDS+= tcl-8.3.2:../../lang/tcl
-DEPENDS+= cyrus-sasl>=1.5.24:../../security/cyrus-sasl
+DEPENDS+= tcl>=8.3.2:../../lang/tcl
+DEPENDS+= cyrus-sasl>=1.5.24nb2:../../security/cyrus-sasl
-ONLY_FOR_PLATFORM= NetBSD-1.5*-* \
- SunOS-*-*
+USE_PERL5= # defined
+USE_SSL= # defined
+GNU_CONFIGURE= # defined
-USE_PERL5= yes
-GNU_CONFIGURE= yes
-
-CONFIGURE_ARGS+= --with-cyrus-prefix=${PREFIX}/cyrus
-CONFIGURE_ARGS+= --with-statedir=/var/run
-CONFIGURE_ARGS+= --enable-netscapehack
-CONFIGURE_ARGS+= --with-auth=unix
-CONFIGURE_ARGS+= --without-krb
-CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}"
-CPPFLAGS+=-I${PREFIX}/include/cyrus-sasl
-
-DEINSTALL_FILE= ${WRKDIR}/DEINSTALL
-INSTALL_FILE= ${WRKDIR}/INSTALL
+.include "../../mk/bsd.prefs.mk"
-CYRUS_USER?= cyrus
-CYRUS_GROUP?= mail
+# CYRUS_USER username of the Cyrus administrator
+# CYRUS_GROUP group of the Cyrus administrator
+#
+CYRUS_USER?= cyrus
+CYRUS_GROUP?= mail
-.include "../../mk/bsd.prefs.mk"
+BUILD_DEFS+= CYRUS_USER CYRUS_GROUP
CONFIGURE_ARGS+= --with-cyrus-user=${CYRUS_USER}
CONFIGURE_ARGS+= --with-cyrus-group=${CYRUS_GROUP}
+CONFIGURE_ARGS+= --with-cyrus-prefix=${PREFIX}/cyrus
+CONFIGURE_ARGS+= --with-statedir=/var/run
+CONFIGURE_ARGS+= --with-sasldir=${LOCALBASE}
+CONFIGURE_ARGS+= --with-openssl=${SSLBASE}
+CONFIGURE_ARGS+= --without-notify
+CONFIGURE_ARGS+= --without-zephyr
+CONFIGURE_ARGS+= --enable-netscapehack
-.if (${OPSYS} == "NetBSD") && exists(/usr/include/krb5/com_err.h)
-CPPFLAGS+=-I/usr/include/krb5
+.if exists(/usr/include/krb5/com_err.h)
+CONFIGURE_ARGS+= --with-com_err=/usr
+CPPFLAGS+= -I/usr/include/krb5
+.else
+CONFIGURE_ARGS+= --with-com_err=yes
.endif
.if defined(KERBEROS) && ${KERBEROS} == 4
-USE_KERBEROS= yes
-CONFIGURE_ARGS+= --with-login=krb
+USE_KERBEROS= # defined
+CONFIGURE_ARGS+= --with-auth=krb
+.else
+CONFIGURE_ARGS+= --with-auth=unix
+CONFIGURE_ARGS+= --without-krb
.endif
-.if !exists(/usr/include/openssl/rc4.h)
-DEPENDS+= openssl-0.9.*:../../security/openssl
-CPPFLAGS+=-I${PREFIX}/include
-.endif
+CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}"
+CONFIGURE_ENV+= LIBS="${LIBS}"
+LIBS+= `sasl-config --libs`
-.if ${OPSYS} == "NetBSD"
-.if exists(/usr/sbin/user)
-ADDUSER= /usr/sbin/useradd
-ADDGROUP= /usr/sbin/groupadd
-.else
-DEPENDS+= user>=20000313:../../sysutils/user
-ADDUSER= ${LOCALBASE}/sbin/useradd
-ADDGROUP= ${LOCALBASE}/sbin/groupadd
-.endif
-.elif ${OPSYS} == "SunOS"
-ADDUSER= useradd
-ADDGROUP= groupadd
-.endif
+DEINSTALL_FILE= ${WRKDIR}/DEINSTALL
+INSTALL_FILE= ${WKRDIR}/INSTALL
+
+HTMLDIR= ${PREFIX}/share/doc/html/cyrus-imapd
+EGDIR= ${PREFIX}/share/examples/cyrus-imapd
pre-install:
- ${SED} -e 's|@CYUSER@|${CYRUS_USER}|g' \
- -e 's|@CYGROUP@|${CYRUS_GROUP}|g' \
+ ${SED} -e "s,@AWK@,${AWK},g" \
+ -e "s,@CAT@,${CAT},g" \
+ -e "s,@RM@,${RM},g" \
< ${PKGDIR}/DEINSTALL > ${DEINSTALL_FILE}
- ${SED} -e 's|@CYUSER@|${CYRUS_USER}|g' \
- -e 's|@CYGROUP@|${CYRUS_GROUP}|g' \
- -e 's|@ADDUSER@|${ADDUSER}|g' \
- -e 's|@ADDGROUP@|${ADDGROUP}|g' \
- -e 's|@CHGRP@|${CHGRP}|g' \
- -e 's|@ID@|${ID}|g' \
- -e 's|@TOUCH@|${TOUCH}|g' \
- -e 's|@RM@|${RM}|g' \
+ ${SED} -e "s,@CAT@,${CAT},g" \
+ -e "s,@CHMOD@,${CHMOD},g" \
+ -e "s,@CP@,${CP},g" \
< ${PKGDIR}/INSTALL > ${INSTALL_FILE}
- PKG_PREFIX=${PREFIX} ${SH} ${INSTALL_FILE} ${PKGNAME} PRE-INSTALL
-
-# Deliver must be executable by all on machines with local
-# users sending to cyrus mailboxes.
-#post-install:
-# @${CHMOD} a+rx ${PREFIX}/cyrus/bin/deliver
+post-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/mkimap ${PREFIX}/cyrus/bin
+ ${INSTALL_DATA_DIR} ${EGDIR}
+ ${INSTALL_DATA} ${FILESDIR}/imapd.conf ${EGDIR}
+ ${INSTALL_DATA_DIR} ${HTMLDIR}
+ cd ${WRKSRC}/doc/html; ${INSTALL_DATA} *.html ${HTMLDIR}
+ PKG_PREFIX=${PREFIX} ${SH} ${INSTALL_FILE} ${PKGNAME} POST-INSTALL
.include "../../mk/bsd.pkg.mk"
diff --git a/mail/cyrus-imapd/files/imapd.conf b/mail/cyrus-imapd/files/imapd.conf
new file mode 100644
index 00000000000..23bb9a171bf
--- /dev/null
+++ b/mail/cyrus-imapd/files/imapd.conf
@@ -0,0 +1,16 @@
+# $NetBSD: imapd.conf,v 1.1 2000/12/10 09:46:44 jlam Exp $
+#
+# Cyrus IMAP server configuration file. Refer to imapd.conf(5) for
+# more options.
+
+configdirectory: /var/imap
+partition-default: /var/spool/imap
+sieveusehomedir: true
+hashimapspool: false
+
+admins: cyrus
+
+# Use the pwcheck daemon to verify plaintext passwords. Please ensure that
+# the pwcheck daemon is running before trying to authenticate.
+#
+sasl_pwcheck_method: pwcheck
diff --git a/mail/cyrus-imapd/files/patch-sum b/mail/cyrus-imapd/files/patch-sum
new file mode 100644
index 00000000000..0995b01780f
--- /dev/null
+++ b/mail/cyrus-imapd/files/patch-sum
@@ -0,0 +1,6 @@
+$NetBSD: patch-sum,v 1.1 2000/12/10 09:46:44 jlam Exp $
+
+MD5 (patch-aa) = 7b81faee7b191cd939c3d50fd8b92fa4
+MD5 (patch-ab) = 33c91bb720acf869041cbc899ec38a7a
+MD5 (patch-ac) = e75d469847ca79db2451dffcdc9d4d08
+MD5 (patch-ad) = f13481144f16b2bc2b20a6851d460c9b
diff --git a/mail/cyrus-imapd/patches/patch-aa b/mail/cyrus-imapd/patches/patch-aa
new file mode 100644
index 00000000000..96220688232
--- /dev/null
+++ b/mail/cyrus-imapd/patches/patch-aa
@@ -0,0 +1,19 @@
+$NetBSD: patch-aa,v 1.1 2000/12/10 09:46:13 jlam Exp $
+
+--- doc/html/install.html.orig Thu Dec 30 16:07:24 1999
++++ doc/html/install.html
+@@ -573,12 +573,12 @@
+ </kbd></pre>
+
+ <li>Change to the Cyrus user and use the tool
+-"<tt>tools/mkimap</tt>" to create the rest of the directories
++"<tt>mkimap</tt>" to create the rest of the directories
+ (subdirectories of the directories you just created).
+
+ <pre>
+ <kbd> su cyrus
+- tools/mkimap
++ /usr/cyrus/bin/mkimap
+ </kbd>
+ </pre>
+
diff --git a/mail/cyrus-imapd/patches/patch-ab b/mail/cyrus-imapd/patches/patch-ab
new file mode 100644
index 00000000000..266da8fd245
--- /dev/null
+++ b/mail/cyrus-imapd/patches/patch-ab
@@ -0,0 +1,13 @@
+$NetBSD: patch-ab,v 1.1 2000/12/10 09:46:13 jlam Exp $
+
+--- installsieve/Makefile.in.orig Thu Nov 11 13:30:16 1999
++++ installsieve/Makefile.in
+@@ -28,7 +28,7 @@
+ CC = @CC@
+
+ DEFS = @DEFS@
+-CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib @CPPFLAGS@
++CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../lib @CPPFLAGS@ @SASLFLAGS@
+ CFLAGS = @CFLAGS@
+ LDFLAGS = @LDFLAGS@
+
diff --git a/mail/cyrus-imapd/patches/patch-ac b/mail/cyrus-imapd/patches/patch-ac
new file mode 100644
index 00000000000..ed51016a313
--- /dev/null
+++ b/mail/cyrus-imapd/patches/patch-ac
@@ -0,0 +1,13 @@
+$NetBSD: patch-ac,v 1.1 2000/12/10 09:46:13 jlam Exp $
+
+--- timsieved/Makefile.in.orig Thu Nov 11 13:30:04 1999
++++ timsieved/Makefile.in
+@@ -34,7 +34,7 @@
+ CYRUS_GROUP=@cyrus_group@
+
+ DEFS = @DEFS@ @LOCALDEFS@
+-CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../sieve -I$(srcdir)/../lib @COM_ERR_CPPFLAGS@ @CPPFLAGS@
++CPPFLAGS = -I. -I$(srcdir) -I$(srcdir)/../sieve -I$(srcdir)/../lib @COM_ERR_CPPFLAGS@ @CPPFLAGS@ @SASLFLAGS@
+ CFLAGS = @CFLAGS@
+ LDFLAGS = @LDFLAGS@
+
diff --git a/mail/cyrus-imapd/patches/patch-ad b/mail/cyrus-imapd/patches/patch-ad
new file mode 100644
index 00000000000..b3b0f3b354d
--- /dev/null
+++ b/mail/cyrus-imapd/patches/patch-ad
@@ -0,0 +1,13 @@
+$NetBSD: patch-ad,v 1.1 2000/12/10 09:46:13 jlam Exp $
+
+--- tools/mkimap.orig Tue Jan 4 15:52:22 2000
++++ tools/mkimap
+@@ -35,7 +35,7 @@
+ $conf = $1;
+ print "i will configure directory $conf.\n";
+ }
+- if (/^sieveuserhomedir:\s(1|t|yes|on)/) {
++ if (/^sieveusehomedir:\s(1|t|yes|on)/) {
+ $nosievedir = 1;
+ print "you are storing sieve scripts in user's home directories.\n";
+ }
diff --git a/mail/cyrus-imapd/pkg/DEINSTALL b/mail/cyrus-imapd/pkg/DEINSTALL
index 8cd8ddfeb97..9f0a034dfa0 100644
--- a/mail/cyrus-imapd/pkg/DEINSTALL
+++ b/mail/cyrus-imapd/pkg/DEINSTALL
@@ -1,27 +1,67 @@
#!/bin/sh
#
-# $NetBSD: DEINSTALL,v 1.1.1.1 2000/08/25 12:35:40 veego Exp $
+# $NetBSD: DEINSTALL,v 1.2 2000/12/10 09:45:32 jlam Exp $
#
PKGNAME=$1
STAGE=$2
-USER=@CYUSER@
-GROUP=@CYUSER@
+AWK="@AWK@"
+CAT="@CAT@"
+RM="@RM@"
+
+IMAPDCONF=/etc/imapd.conf
case ${STAGE} in
DEINSTALL)
;;
+
POST-DEINSTALL)
- cat << EOF
+ existing_dirs=''
+ if [ -f ${IMAPDCONF} ]
+ then
+ imap_dirs=`\
+ ${AWK} '/configdirectory:/ { print $2 }; \
+ /partition-.*:/ { print $2 }; \
+ /sievedir:/ { print $2 }' \
+ ${IMAPDCONF}`
+ for dir in ${imap_dirs}
+ do
+ if [ -d ${dir} ]
+ then
+ existing_dirs="${existing_dirs} ${dir}"
+ fi
+ done
+ fi
+
+ ${CAT} << EOF
===========================================================================
-If you won't be using ${PKGNAME} any longer, you may want to
-remove the \`${USER}' user and in some cases also the \`${GROUP}' group.
+If you won't be using ${PKGNAME} any longer, you may want
+to remove:
+
+ * the following files:
+
+ ${IMAPDCONF}
+EOF
+ if [ -n "${existing_dirs}" ]
+ then
+ ${CAT} << EOF
+
+ * the following directories:
+
+EOF
+ for dir in ${existing_dirs}
+ do
+ echo " ${dir}"
+ done
+ fi
+ ${CAT} << EOF
===========================================================================
EOF
- ;;
+ ;;
+
*)
- echo "Unexpected argument: $2"
+ echo "Unexpected argument: ${STAGE}"
exit 1
;;
esac
diff --git a/mail/cyrus-imapd/pkg/DESCR b/mail/cyrus-imapd/pkg/DESCR
index b0ebd2f8d05..84a40f3a62e 100644
--- a/mail/cyrus-imapd/pkg/DESCR
+++ b/mail/cyrus-imapd/pkg/DESCR
@@ -1,11 +1,7 @@
-Cyrus IMAP Server
-
-IMAP (Internet Message Access Protocol) is an Internet
-standards-track protocol for accessing messages (mail,
-bboards, news, etc). The Cyrus IMAP server differs from
-other IMAP server implementations in that it is generally
-intended to be run on "sealed" servers, where normal users
-are not permitted to log in. The mailbox database is stored
-in parts of the filesystem that are private to the Cyrus
-IMAP system. All user access to mail is through the IMAP,
-POP3, or KPOP protocols.
+IMAP (Internet Message Access Protocol) is an Internet standards-track
+protocol for accessing messages (mail, bboards, news, etc). The Cyrus
+IMAP server differs from other IMAP server implementations in that it
+is generally intended to be run on "sealed" servers, where normal users
+are not permitted to log in. The mailbox database is stored in parts of
+the filesystem that are private to the Cyrus IMAP system. All user
+access to mail is through the IMAP, POP3, or KPOP protocols.
diff --git a/mail/cyrus-imapd/pkg/INSTALL b/mail/cyrus-imapd/pkg/INSTALL
index c38d3c25025..8fa024e5363 100644
--- a/mail/cyrus-imapd/pkg/INSTALL
+++ b/mail/cyrus-imapd/pkg/INSTALL
@@ -1,48 +1,60 @@
#!/bin/sh
#
-# $NetBSD: INSTALL,v 1.2 2000/08/25 13:33:11 veego Exp $
+# $NetBSD: INSTALL,v 1.3 2000/12/10 09:45:32 jlam Exp $
PKGNAME=$1
STAGE=$2
-CYUSER=@CYUSER@
-CYGROUP=@CYGROUP@
-ADDUSER=@ADDUSER@
-ADDGROUP=@ADDGROUP@
-CHGRP=@CHGRP@
-ID=@ID@
-TOUCH=@TOUCH@
-RM=@RM@
+CAT="@CAT@"
+CHMOD="@CHMOD@"
+CP="@CP@"
+
+SAMPLECONFDIR=${PKG_PREFIX}/share/examples/cyrus-imapd
+CONFDIR=/etc
+CONFFILES="imapd.conf"
case ${STAGE} in
PRE-INSTALL)
- # Group... the default's shipped with NetBSD
- # We need to check that ${CYGROUP} exists before adding the user.
- #
- ${TOUCH} "/tmp/grouptestcyrus.$$"
- ${CHGRP} ${CYGROUP} "/tmp/grouptestcyrus.$$" >/dev/null 2>&1
- if [ $? -eq 0 ]; then
- echo "Group '${CYGROUP}' already exists...proceeding."
- else
- echo "Creating '${CYGROUP}' group..."
- ${ADDGROUP} ${CYGROUP}
- echo "Done."
- fi
- ${RM} -f "/tmp/grouptestcyrus.$$"
-
- ${ID} ${CYUSER} >/dev/null 2>&1
- if [ $? -eq 0 ]; then
- echo "User '${CYUSER}' already exists...proceeding."
- else
- echo "Creating '${CYUSER}' user..."
- ${ADDUSER} -c "Cyrus User" -g ${CYGROUP} -s /bin/sh ${CYUSER}
- echo "Done."
- fi
;;
+
POST-INSTALL)
+ echo "Installing configuration files:"
+ for file in ${CONFFILES}
+ do
+ FILE=${CONFDIR}/${file}
+ SAMPLEFILE=${SAMPLECONFDIR}/${file}
+ if [ -f ${FILE} ]
+ then
+ echo " ${FILE} already exists"
+ else
+ echo " ${FILE}"
+ ${CP} ${SAMPLEFILE} ${FILE}
+ ${CHMOD} 644 ${FILE}
+ fi
+ done
+ ${CAT} << EOF
+===========================================================================
+Some files you might need to customize include the following:
+
+EOF
+ for file in ${CONFFILES}
+ do
+ FILE=${CONFDIR}/${file}
+ echo " ${FILE}"
+ done
+ ${CAT} << EOF
+
+Please also refer to:
+
+ ${PKG_PREFIX}/share/doc/html/cyrus-imapd/install.html
+
+to set up the necessary directories before starting the Cyrus IMAP server.
+===========================================================================
+EOF
;;
+
*)
- echo "Unexpected argument: $2"
+ echo "Unexpected argument: ${STAGE}"
exit 1
;;
esac
diff --git a/mail/cyrus-imapd/pkg/PLIST b/mail/cyrus-imapd/pkg/PLIST
index 1a4b7099ed9..e8d4cb5e5e3 100644
--- a/mail/cyrus-imapd/pkg/PLIST
+++ b/mail/cyrus-imapd/pkg/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2000/08/25 12:35:40 veego Exp $
+@comment $NetBSD: PLIST,v 1.2 2000/12/10 09:45:32 jlam Exp $
bin/cyradm
bin/imtest
bin/installsieve
@@ -10,6 +10,7 @@ cyrus/bin/feedcyrus
cyrus/bin/fud
cyrus/bin/imapd
cyrus/bin/mbpath
+cyrus/bin/mkimap
cyrus/bin/pop3d
cyrus/bin/quota
cyrus/bin/reconstruct
@@ -53,6 +54,20 @@ man/man8/reconstruct.8
man/man8/rmnews.8
man/man8/syncnews.8
man/man8/timsieved.8
+share/doc/html/cyrus-imapd/anoncvs.html
+share/doc/html/cyrus-imapd/bugs.html
+share/doc/html/cyrus-imapd/changes.html
+share/doc/html/cyrus-imapd/index.html
+share/doc/html/cyrus-imapd/install.html
+share/doc/html/cyrus-imapd/mailing-list.html
+share/doc/html/cyrus-imapd/overview.html
+share/doc/html/cyrus-imapd/questions.html
+share/doc/html/cyrus-imapd/readme.html
+share/doc/html/cyrus-imapd/sieve-protocol.html
+share/doc/html/cyrus-imapd/sieve.html
+share/examples/cyrus-imapd/imapd.conf
+@dirrm share/examples/cyrus-imapd
+@dirrm share/doc/html/cyrus-imapd
@dirrm include/cyrus
@dirrm cyrus/bin
@dirrm cyrus