pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/mail/courier-mta First cut at packaging the MTA and ma...
details: https://anonhg.NetBSD.org/pkgsrc/rev/48ef38c6649a
branches: trunk
changeset: 512007:48ef38c6649a
user: jlam <jlam%pkgsrc.org@localhost>
date: Fri Apr 28 18:10:21 2006 +0000
description:
First cut at packaging the MTA and mailing list components of
courier-0.53.1 as mail/courier-mta.
The Courier mail transfer agent (MTA) is a modular multiprotocol mail
server that's designed to strike a balance between reasonable performance,
flexibility and features.
This package differs from traditional courier-mta packages in that
the webmail, imap/pop3, and maildrop components are not included
because they are supplied by the mail/sqwebmail, mail/courier-imap,
and mail/maildrop packages, respectively. When Courier-MTA is installed
together with Courier-IMAP and SqWebMail, they form an integrated
mail/groupware server suite that provides ESMTP, IMAP, POP3, webmail,
and mailing list services within a single, consistent, framework. A
web-based administration and configuration tool is included for
comprehensive configuration of the entire Courier software suite.
Many thanks to Yarema <yds%CoolRat.org@localhost> whose Courier port for FreeBSD
was an invaluable reference.
diffstat:
mail/courier-mta/DEINSTALL | 93 ++++++++++++
mail/courier-mta/DESCR | 10 +
mail/courier-mta/MESSAGE | 27 +++
mail/courier-mta/Makefile | 97 ++++++++++++
mail/courier-mta/Makefile.common | 60 +++++++
mail/courier-mta/PLIST | 211 ++++++++++++++++++++++++++++
mail/courier-mta/PLIST.dsn | 12 +
mail/courier-mta/PLIST.esmtp | 31 ++++
mail/courier-mta/PLIST.fax | 19 ++
mail/courier-mta/PLIST.ldap | 4 +
mail/courier-mta/PLIST.local | 6 +
mail/courier-mta/PLIST.uucp | 9 +
mail/courier-mta/distinfo | 16 ++
mail/courier-mta/files/courier.sh | 61 ++++++++
mail/courier-mta/files/courierd.sh | 44 +++++
mail/courier-mta/files/courieresmtp.sh | 56 +++++++
mail/courier-mta/files/courieresmtpmsa.sh | 57 +++++++
mail/courier-mta/files/courieresmtps.sh | 72 +++++++++
mail/courier-mta/files/courierfilter.sh | 37 ++++
mail/courier-mta/files/courierldapaliasd.sh | 49 ++++++
mail/courier-mta/files/mailer.conf | 8 +
mail/courier-mta/options.mk | 129 +++++++++++++++++
mail/courier-mta/patches/patch-aa | 98 +++++++++++++
mail/courier-mta/patches/patch-ab | 17 ++
mail/courier-mta/patches/patch-ac | 108 ++++++++++++++
mail/courier-mta/patches/patch-ad | 13 +
mail/courier-mta/patches/patch-ae | 13 +
mail/courier-mta/patches/patch-af | 13 +
mail/courier-mta/patches/patch-ag | 12 +
mail/courier-mta/patches/patch-ah | 24 +++
mail/courier-mta/patches/patch-ai | 13 +
mail/courier-mta/patches/patch-aj | 169 ++++++++++++++++++++++
mail/courier-mta/patches/patch-ak | 13 +
mail/courier-mta/pkginstall.mk | 68 +++++++++
34 files changed, 1669 insertions(+), 0 deletions(-)
diffs (truncated from 1805 to 300 lines):
diff -r 7131abed117a -r 48ef38c6649a mail/courier-mta/DEINSTALL
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mail/courier-mta/DEINSTALL Fri Apr 28 18:10:21 2006 +0000
@@ -0,0 +1,93 @@
+# $NetBSD: DEINSTALL,v 1.1.1.1 2006/04/28 18:10:21 jlam Exp $
+
+case ${STAGE} in
+DEINSTALL)
+ #
+ # Note some additional files that may be created by the sysadmin
+ # that can probably be removed.
+ #
+ if ${TEST} -x ./+FILES; then
+ for file in \
+ ${PKG_SYSCONFDIR}/aliases-esmtp \
+ ${PKG_SYSCONFDIR}/aliases-esmtp.dat \
+ ${PKG_SYSCONFDIR}/aliases-local \
+ ${PKG_SYSCONFDIR}/aliases-local.dat \
+ ${PKG_SYSCONFDIR}/aliases-uucp \
+ ${PKG_SYSCONFDIR}/aliases-uucp.dat \
+ ${PKG_SYSCONFDIR}/aliases.dat \
+ ${PKG_SYSCONFDIR}/aliasfilteracct \
+ ${PKG_SYSCONFDIR}/backuprelay \
+ ${PKG_SYSCONFDIR}/batchsize \
+ ${PKG_SYSCONFDIR}/bofh \
+ ${PKG_SYSCONFDIR}/dotextension \
+ ${PKG_SYSCONFDIR}/dsnfrom \
+ ${PKG_SYSCONFDIR}/dsnlimit \
+ ${PKG_SYSCONFDIR}/esmtpacceptmailfor \
+ ${PKG_SYSCONFDIR}/esmtpacceptmailfor.dat \
+ ${PKG_SYSCONFDIR}/esmtpd.pem \
+ ${PKG_SYSCONFDIR}/esmtpd.rand \
+ ${PKG_SYSCONFDIR}/esmtpdelay \
+ ${PKG_SYSCONFDIR}/esmtpgreeting \
+ ${PKG_SYSCONFDIR}/esmtphelo \
+ ${PKG_SYSCONFDIR}/esmtppercentrelay \
+ ${PKG_SYSCONFDIR}/esmtppercentrelay.dat \
+ ${PKG_SYSCONFDIR}/esmtproutes \
+ ${PKG_SYSCONFDIR}/esmtptimeout \
+ ${PKG_SYSCONFDIR}/esmtptimeoutconnect \
+ ${PKG_SYSCONFDIR}/esmtptimeoutdata \
+ ${PKG_SYSCONFDIR}/esmtptimeouthelo \
+ ${PKG_SYSCONFDIR}/esmtptimeoutkeepalive \
+ ${PKG_SYSCONFDIR}/esmtptimeoutkeepaliveping \
+ ${PKG_SYSCONFDIR}/esmtptimeoutquit \
+ ${PKG_SYSCONFDIR}/faxqueuetime \
+ ${PKG_SYSCONFDIR}/hosteddomains \
+ ${PKG_SYSCONFDIR}/hosteddomains.dat \
+ ${PKG_SYSCONFDIR}/locals \
+ ${PKG_SYSCONFDIR}/localtimeout \
+ ${PKG_SYSCONFDIR}/me \
+ ${PKG_SYSCONFDIR}/msgidhost \
+ ${PKG_SYSCONFDIR}/nochangingfrom \
+ ${PKG_SYSCONFDIR}/queuefill \
+ ${PKG_SYSCONFDIR}/queuehi \
+ ${PKG_SYSCONFDIR}/queuelo \
+ ${PKG_SYSCONFDIR}/queuetime \
+ ${PKG_SYSCONFDIR}/retryalpha \
+ ${PKG_SYSCONFDIR}/retrybeta \
+ ${PKG_SYSCONFDIR}/retrydelta \
+ ${PKG_SYSCONFDIR}/retrygamma \
+ ${PKG_SYSCONFDIR}/sizelimit \
+ ${PKG_SYSCONFDIR}/smtpaccess.dat \
+ ${PKG_SYSCONFDIR}/submitdelay \
+ ${PKG_SYSCONFDIR}/usexsender \
+ ${PKG_SYSCONFDIR}/uucpme \
+ ${PKG_SYSCONFDIR}/uucpneighbors \
+ ${PKG_SYSCONFDIR}/uucprewriteheaders \
+ ${PKG_SYSCONFDIR}/warntime \
+ ${PKG_SYSCONFDIR}/webadmin/password
+ do
+ ${ECHO} "# FILE: $file . /dev/null" >> ./+FILES
+ done
+ fi
+
+ # Unconditionally remove socket files.
+ for sockfile in \
+ @COURIER_STATEDIR@/allfilters/.dupfilter \
+ @COURIER_STATEDIR@/allfilters/.perlfilter \
+ @COURIER_STATEDIR@/allfilters/dupfilter \
+ @COURIER_STATEDIR@/allfilters/perlfilter \
+ @COURIER_STATEDIR@/filters/.dupfilter \
+ @COURIER_STATEDIR@/filters/.perlfilter \
+ @COURIER_STATEDIR@/filters/dupfilter \
+ @COURIER_STATEDIR@/filters/perlfilter
+ do
+ if ${TEST} -f "$sockfile"; then
+ ${ECHO} "Removing socket file:"
+ ${ECHO} " $sockfile"
+ ${RM} -f $sockfile
+ fi
+ done
+
+ # Unconditionally remove temporary files.
+ ${RM} -rf @COURIER_STATEDIR@/tmp/*
+ ;;
+esac
diff -r 7131abed117a -r 48ef38c6649a mail/courier-mta/DESCR
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mail/courier-mta/DESCR Fri Apr 28 18:10:21 2006 +0000
@@ -0,0 +1,10 @@
+The Courier mail transfer agent (MTA) is a modular multiprotocol mail
+server that's designed to strike a balance between reasonable performance,
+flexibility and features.
+
+When Courier-MTA is installed together with Courier-IMAP and SqWebMail,
+they form an integrated mail/groupware server suite that provides
+ESMTP, IMAP, POP3, webmail, and mailing list services within a single,
+consistent framework. A web-based administration and configuration
+tool is included for comprehensive configuration of the entire Courier
+software suite.
diff -r 7131abed117a -r 48ef38c6649a mail/courier-mta/MESSAGE
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mail/courier-mta/MESSAGE Fri Apr 28 18:10:21 2006 +0000
@@ -0,0 +1,27 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.1.1.1 2006/04/28 18:10:21 jlam Exp $
+
+It is recommended that Courier-MTA be installed together with Courier-IMAP
+and SqWebMail -- together, they form an integrated mail/groupware
+server suite that provides ESMTP, IMAP, POP3, webmail, and mailing
+list services within a single, consistent framework that may be managed
+through a web CGI application.
+
+There are two things which must be done to make the Courier ``webadmin''
+CGI application accessible through your HTTP server:
+
+ (1) Copy the ``courierwebadmin'' CGI binary to the appropriate place in
+ your HTTP document root, e.g. ${PREFIX}/libexec/cgi-bin, then
+ Courier webadmin would be accessible through:
+
+ http://your.domain.com/cgi-bin/courierwebadmin
+
+ (2) Install a password to protect the ``webadmin'' CGI application by
+ creating a one-line file containing the plaintext password at:
+
+ ${PKG_SYSCONFDIR}/webadmin/password
+
+ This file should be owned by ${COURIER_USER}:${COURIER_GROUP} with
+ read-only permissions restricted to the owner (mode 0400).
+
+===========================================================================
diff -r 7131abed117a -r 48ef38c6649a mail/courier-mta/Makefile
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mail/courier-mta/Makefile Fri Apr 28 18:10:21 2006 +0000
@@ -0,0 +1,97 @@
+# $NetBSD: Makefile,v 1.1.1.1 2006/04/28 18:10:21 jlam Exp $
+
+DISTNAME= courier-${COURIER_VERSION}
+CATEGORIES= mail
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=courier/}
+EXTRACT_SUFX= .tar.bz2
+
+MAINTAINER= jlam%pkgsrc.org@localhost
+COMMENT= Courier mail transport agent
+HOMEPAGE= http://www.courier-mta.org/
+
+DEPENDS+= courier-maildir>=${COURIER_VERSION}:../../mail/courier-maildir
+DEPENDS+= maildrop>=2.0.2:../../mail/maildrop
+
+USE_TOOLS+= gmake perl:run
+USE_LANGUAGES= c c++
+
+PKGNAME= ${DISTNAME:S/-/-mta-/}
+# PKGNAME is a parameter to the following file.
+.include "Makefile.common"
+
+PLIST_SRC+= ${PKGDIR}/PLIST
+
+.include "pkginstall.mk"
+.include "options.mk"
+
+USERGROUP_PHASE= configure
+
+CONFIGURE_ENV+= OPENSSL=${SSLBASE:Q}/bin/openssl
+CONFIGURE_ENV+= PROCMAIL=${LOCALBASE:Q}/bin/procmail
+
+CONFIGURE_ARGS+= --datadir=${DATADIR:Q}
+CONFIGURE_ARGS+= --with-mailuid=${PKG_UID.${COURIER_USER}}
+CONFIGURE_ARGS+= --with-mailgid=${PKG_GID.${COURIER_GROUP}}
+CONFIGURE_ARGS+= --with-paranoid-smtpext
+CONFIGURE_ARGS+= --with-piddir=${VARBASE:Q}/run
+CONFIGURE_ARGS+= --with-transport=${COURIER_TRANSPORTS:M*:Q}
+CONFIGURE_ARGS+= --without-certdb
+
+# This argument is actually here just to make the "webmail" configure
+# script work. The value is not actually used since in reality, we are
+# using the sqwebmail package to provide the Courier webmail component.
+#
+CONFIGURE_ARGS+= --enable-mimetypes=/nonexistent
+
+INSTALL_DIRS= webadmin courier
+INSTALL_AM_MAKEFLAGS+= sysconfdir=${EGDIR:Q}
+INSTALL_AM_MAKEFLAGS+= htmldocdir=${DOCDIR:Q}
+INSTALL_MAKE_FLAGS= ${MAKE_FLAGS} AM_MAKEFLAGS=${INSTALL_AM_MAKEFLAGS:Q}
+
+SUBST_CLASSES+= courier
+SUBST_FILES.courier= courier/doc/mkesmtpdcert.8.in \
+ courier/doc/mkesmtpdcert.html.in \
+ courier/filters/courierfilter.8.in \
+ courier/filters/courierfilter.html.in \
+ courier/module.esmtp/esmtpd-msa.dist.in \
+ courier/module.esmtp/esmtpd-ssl.dist.in \
+ courier/module.esmtp/esmtpd.cnf.in \
+ courier/module.esmtp/esmtpd.dist.in \
+ courier/module.esmtp/mkesmtpdcert.in
+SUBST_SED.courier= -e "s|^ESMTPDSTART=.*|ESMTPDSTART=YES|g" \
+ -e "s|^ESMTPDSSLSTART=.*|ESMTPDSSLSTART=YES|g" \
+ -e "s|@datadir@/esmtpd.pem|@sysconfdir@/esmtpd.pem|g" \
+ -e "s|@datadir@/esmtpd.rand|@sysconfdir@/esmtpd.rand|g" \
+ -e "s|@libexecdir@/filters|@libexecdir@/courier/filters|g"
+SUBST_STAGE.courier= pre-configure
+
+SUBST_CLASSES+= perms
+SUBST_FILES.perms= courier/perms.sh.in
+SUBST_SED.perms+= -e "s,@ROOT_USER@,"${ROOT_USER:Q}",g" \
+ -e "s,@ROOT_GROUP@,"${ROOT_GROUP:Q}",g"
+SUBST_STAGE.perms= pre-configure
+
+SUBST_CLASSES+= paths
+SUBST_FILES.paths= ${WRKDIR}/mailer.conf
+SUBST_SED.paths+= -e 's,@PREFIX@,${PREFIX},g'
+SUBST_STAGE.paths= post-patch
+
+.include "../../lang/perl5/buildlink3.mk"
+.include "../../security/courier-authlib/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+
+post-extract:
+ ${CP} ${FILESDIR}/mailer.conf ${WRKDIR}/mailer.conf
+
+post-build:
+ ${CAT} /dev/null > ${WRKDIR}/locallowercase
+ ${ECHO} ${PREFIX:Q}"/bin/maildrop" > ${WRKDIR}/maildropfilter
+
+post-install:
+ cd ${WRKSRC}/courier && \
+ ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} install-permissions
+ ${INSTALL_DATA} ${WRKDIR}/mailer.conf ${EGDIR}
+ ${INSTALL_DATA} ${WRKDIR}/locallowercase ${EGDIR}/locallowercase
+ ${INSTALL_DATA} ${WRKDIR}/maildropfilter ${EGDIR}/maildropfilter
+
+.include "../../mk/bsd.pkg.mk"
diff -r 7131abed117a -r 48ef38c6649a mail/courier-mta/Makefile.common
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mail/courier-mta/Makefile.common Fri Apr 28 18:10:21 2006 +0000
@@ -0,0 +1,60 @@
+# $NetBSD: Makefile.common,v 1.1.1.1 2006/04/28 18:10:21 jlam Exp $
+#
+# Package Makefiles should include this file after setting PKGNAME and
+# PKG_SUPPORTED_OPTIONS.
+
+COURIER_VERSION= 0.53.1
+
+.if !defined(PKGNAME)
+PKG_FAIL_REASON+= "[courier/Makefile.common] PKGNAME must be set."
+.endif
+
+.include "../../mk/bsd.prefs.mk"
+
+DATADIR= ${PREFIX}/share/courier
+DOCDIR= ${PREFIX}/share/doc/courier
+EGDIR= ${PREFIX}/share/examples/courier
+LIBEXECDIR= ${PREFIX}/libexec/courier
+COURIER_STATEDIR= ${VARBASE}/courier
+
+PKG_SYSCONFSUBDIR= courier
+PKG_SYSCONFDIR_PERMS= ${COURIER_USER} ${COURIER_GROUP} 0755
+COURIER_FILE_PERMS= ${COURIER_USER} ${COURIER_GROUP} 0644
+COURIER_DIR_PERMS= ${COURIER_USER} ${COURIER_GROUP} 0755
+COURIER_SCRIPT_PERMS= ${COURIER_USER} ${COURIER_GROUP} 0755
+
+FILES_SUBST+= COURIER_STATEDIR=${COURIER_STATEDIR:Q}
+
+.include "../../security/courier-authlib/Makefile.common"
+
+USE_LIBTOOL= yes
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS+= --localstatedir=${COURIER_STATEDIR:Q}
+CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
+
+CONFIGURE_ARGS+= --disable-root-check
+CONFIGURE_ARGS+= --enable-unicode
+CONFIGURE_ARGS+= --enable-utf7-folder-encoding
+CONFIGURE_ARGS+= --with-trashquota
+
+USE_DB185= yes
+CONFIGURE_ARGS+= --with-db=db
+.include "../../mk/bdb.buildlink3.mk"
+
+CONFIGURE_ENV+= SYSCONFTOOL_PERL=${PERL5:Q}
+
+# Note: This expression is the same as ${PKGBASE}, but the latter is
+# not defined yet, so we cannot use it here.
+PKG_OPTIONS_VAR= PKG_OPTIONS.${PKGNAME:C/-[0-9].*//}
+.include "../../mk/bsd.options.mk"
+
+# The maildir subdirectory can be built with a "fam" option, but it's only
+# useful for the imap server and the webmail client. Handle the option
+# here, but the corresponding package Makefiles should note that "fam" is
Home |
Main Index |
Thread Index |
Old Index