summaryrefslogtreecommitdiff
path: root/mail
diff options
context:
space:
mode:
authorzuntum <zuntum>2001-08-13 09:10:10 +0000
committerzuntum <zuntum>2001-08-13 09:10:10 +0000
commit362f1c8b191334cd157b1c0541c5a70f9973e3a0 (patch)
tree81066707ccf3daf68610d55b0d480c9032b2677d /mail
parentb7d4968fbb10e5f25f6cde6d55351f79c14c5ee0 (diff)
downloadpkgsrc-362f1c8b191334cd157b1c0541c5a70f9973e3a0.tar.gz
Initial import of qmail-1.03 -- SECURE, reliable, efficient, simple, and FAST MTA for UNIX systems
qmail checks for qmail users' existance at compile time, so this package must be built as root (it tries to add necessary users and groups), thus NO_PACKAGE and IS_INTERACTIVE are set. PLIST file is left empty intentionally, because qmail installs itself to /var/qmail, outside ${PREFIX}. The qmail program is a secure, reliable, efficient simple message transfer agent. It is meant to be a replacement for the entire sendmail-binmail system that most UNIX hosts use. Although qmail holds security and reliability as its top two priorities, it is also fast. On a Pentium under BSD/OS, qmail can easily handle 200000 separate messages per day that are injected and must then be delivered to local mailboxes! Security and reliability are qmail's two strengths, however. The qmail package ensures a message, once accepted, will never be lost. An optional new mailbox format, maildir, even lets users safely read their mail over NFS, while still accepting new mail deliveries. The following features are supported: host and user masquerading, full host hiding, virtual domains, null clients, list-owner rewriting, relay control, double-bounce recording, arbitrary RFC 822 address lists, cross-host mailing-list loop detection, per-recipient checkpointing, downed host backoffs, independent message retry schedules, a drop-in sendmail replacement, and more! The package is still being worked on.
Diffstat (limited to 'mail')
-rw-r--r--mail/qmail/Makefile77
-rw-r--r--mail/qmail/distinfo6
-rwxr-xr-xmail/qmail/files/checkusers.sh57
-rwxr-xr-xmail/qmail/files/removeusers.sh14
-rw-r--r--mail/qmail/pkg/DEINSTALL28
-rw-r--r--mail/qmail/pkg/DESCR20
-rw-r--r--mail/qmail/pkg/PLIST2
7 files changed, 204 insertions, 0 deletions
diff --git a/mail/qmail/Makefile b/mail/qmail/Makefile
new file mode 100644
index 00000000000..38d68748239
--- /dev/null
+++ b/mail/qmail/Makefile
@@ -0,0 +1,77 @@
+# $NetBSD: Makefile,v 1.1.1.1 2001/08/13 09:10:10 zuntum Exp $
+#
+
+DISTNAME= qmail-1.03
+CATEGORIES= mail
+MASTER_SITES= http://cr.yp.to/software/ \
+ ftp://ftp.ntnu.no/pub/unix/mail/qmail/ \
+ ftp://ftp.jp.qmail.org/qmail/ \
+ ftp://ftp.rifkin.technion.ac.il/pub/qmail/ \
+ ftp://ftp.net.ohio-state.edu/pub/networking/mail/qmail/ \
+ ftp://ftp.id.wustl.edu/pub/qmail/
+
+# Patch necessary to cope with non-RFC >512 dns entries
+# Since AOL has been using those, the problem has skyrocketed from minor to
+# groundzero. qmail being RFC compliant need to be "fixed" to work with those
+PATCH_SITES= http://www.ckdhr.com/ckd/
+PATCHFILES= qmail-103.patch
+PATCH_DIST_STRIP= -p1
+
+MAINTAINER= zuntum@netbsd.org
+HOMEPAGE= http://www.qmail.org/
+COMMENT= SECURE, reliable, efficient, simple, and FAST MTA for UNIX systems
+
+.if exists(/usr/sbin/user)
+USER_CMD= /usr/sbin/user
+GROUP_CMD= /usr/sbin/group
+.else
+DEPENDS+= user-*:../../sysutils/user
+USER_CMD= ${LOCALBASE}/sbin/user
+GROUP_CMD= ${LOCALBASE}/sbin/group
+.endif
+
+ALL_TARGET= it man
+INSTALL_TARGET= setup check
+
+IS_INTERACTIVE= YES
+NO_PACKAGE= "Has to be compiled on target system due to installation path issue"
+
+QMAILDIR= /var/qmail
+
+DEINSTALL_FILE= ${WRKDIR}/DEINSTALL
+
+FILES_SUBST+= QMAILDIR=${QMAILDIR}
+FILES_SUBST+= USER_CMD=${USER_CMD:Q}
+FILES_SUBST+= GROUP_CMD=${GROUP_CMD:Q}
+FILES_SUBST_SED= ${FILES_SUBST:S/=/@!/:S/$/!g/:S/^/ -e s!@/}
+
+PLIST_SUBST+= QMAILDIR=${QMAILDIR}
+
+pre-build:
+ @if [ `id -u` != 0 ]; then \
+ ${ECHO} "Error: must be root to build qmail."; \
+ exit 1; \
+ fi
+ ${ECHO} ${CC} ${CFLAGS} > ${WRKSRC}/conf-cc
+ ${ECHO} ${QMAILDIR} > ${WRKSRC}/conf-qmail
+ ${SED} ${FILES_SUBST_SED} ${FILESDIR}/checkusers.sh \
+ > ${WRKDIR}/checkusers.sh
+ ${SH} ${WRKDIR}/checkusers.sh
+
+pre-install:
+ ${SED} ${FILES_SUBST_SED} ${PKGDIR}/DEINSTALL > ${DEINSTALL_FILE}
+
+post-install:
+ ${MKDIR} ${QMAILDIR}/alias
+ cd ${QMAILDIR}/alias && \
+ ${TOUCH} .qmail-postmaster .qmail-mailer-daemon .qmail-root
+
+remove-users: extract
+ ${SED} ${FILES_SUBST_SED} ${FILESDIR}/removeusers.sh \
+ > ${WRKDIR}/removeusers.sh
+ ${SH} ${WRKDIR}/removeusers.sh
+
+remove-dirs:
+ ${RM} -rf ${QMAILDIR}
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/mail/qmail/distinfo b/mail/qmail/distinfo
new file mode 100644
index 00000000000..3ba405d73a6
--- /dev/null
+++ b/mail/qmail/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2001/08/13 09:10:10 zuntum Exp $
+
+SHA1 (qmail-1.03.tar.gz) = 18fb960481291a0503e93a94df3f6094edb7f27a
+Size (qmail-1.03.tar.gz) = 220668 bytes
+SHA1 (qmail-103.patch) = dfb9cdabe91449dad2117115177b0a6a356baa9f
+Size (qmail-103.patch) = 2104 bytes
diff --git a/mail/qmail/files/checkusers.sh b/mail/qmail/files/checkusers.sh
new file mode 100755
index 00000000000..d44327ef40f
--- /dev/null
+++ b/mail/qmail/files/checkusers.sh
@@ -0,0 +1,57 @@
+#!/bin/sh
+#
+# $NetBSD: checkusers.sh,v 1.1.1.1 2001/08/13 09:10:10 zuntum Exp $
+
+QMAILDIR=@QMAILDIR@
+USER_CMD=@USER_CMD@
+GROUP_CMD=@GROUP_CMD@
+
+create_group()
+{
+ GROUP=$1
+
+ ${GROUP_CMD} info -e ${GROUP}
+ if [ $? -eq 0 ]; then
+ echo "Group '${GROUP}' already exists... proceeding."
+ else
+ echo -n "Creating '${GROUP}' group... "
+ ${GROUP_CMD} add ${GROUP}
+ echo "done."
+ fi
+
+ return
+}
+
+create_user()
+{
+ USER=$1
+ GROUP=$2
+
+ if [ "$USER" = alias ]; then
+ HOME="$QMAILDIR/alias"
+ else
+ HOME="$QMAILDIR"
+ fi
+
+ ${USER_CMD} info -e ${USER}
+ if [ $? -eq 0 ]; then
+ echo "User '${USER}' already exists... proceeding."
+ else
+ echo -n "Creating '${USER}' user... "
+ ${USER_CMD} add -g ${GROUP} -s /sbin/nologin -d ${HOME} ${USER}
+ echo "done."
+ fi
+
+ return
+}
+
+create_group qmail
+create_group nofiles
+
+create_user alias nofiles
+create_user qmaill nofiles
+create_user qmaild nofiles
+create_user qmailp nofiles
+create_user qmailq qmail
+create_user qmailr qmail
+create_user qmails qmail
diff --git a/mail/qmail/files/removeusers.sh b/mail/qmail/files/removeusers.sh
new file mode 100755
index 00000000000..f6be9ba9cd8
--- /dev/null
+++ b/mail/qmail/files/removeusers.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# $NetBSD: removeusers.sh,v 1.1.1.1 2001/08/13 09:10:10 zuntum Exp $
+
+USER_CMD=@USER_CMD@
+GROUP_CMD=@GROUP_CMD@
+
+USERS="alias qmaill qmaild qmailp qmailq qmailr qmails"
+GROUPS="qmail nofiles"
+
+for i in $USERS; do ${USER_CMD} del $i 2> /dev/null > /dev/null; done
+for i in $GROUPS; do ${GROUP_CMD} del $i 2> /dev/null > /dev/null; done
+
+echo "qmail users and groups removed."
diff --git a/mail/qmail/pkg/DEINSTALL b/mail/qmail/pkg/DEINSTALL
new file mode 100644
index 00000000000..8e423d63a88
--- /dev/null
+++ b/mail/qmail/pkg/DEINSTALL
@@ -0,0 +1,28 @@
+# $NetBSD: DEINSTALL,v 1.1.1.1 2001/08/13 09:10:10 zuntum Exp $
+
+PKGNAME=$1
+STAGE=$2
+
+if [ "$STAGE" != "POST-DEINSTALL" ]; then
+ exit 0
+fi
+
+QMAILDIR=@QMAILDIR@
+
+echo ===========================================================================
+echo
+echo Note: this package did not remove qmail users and groups in case you may
+echo want to use them later.
+echo
+echo These qmail users still exist in the system:
+echo " alias qmaill qmaild qmailp qmailq qmailr qmails"
+echo and these groups:
+echo " nofiles qmail"
+echo
+echo If you won\'t be using ${PKGNAME} any longer, you may remove qmail
+echo users and groups automatically by typing \"make remove-users\".
+echo
+echo Directories \"alias control queue users\" from ${QMAILDIR} were also untouched
+echo and they are ready for future use. You may safely remove them - type \"make remove-dirs\".
+echo
+echo ===========================================================================
diff --git a/mail/qmail/pkg/DESCR b/mail/qmail/pkg/DESCR
new file mode 100644
index 00000000000..a162e50cdf7
--- /dev/null
+++ b/mail/qmail/pkg/DESCR
@@ -0,0 +1,20 @@
+The qmail program is a secure, reliable, efficient simple message
+transfer agent. It is meant to be a replacement for the entire
+sendmail-binmail system that most UNIX hosts use.
+
+Although qmail holds security and reliability as its top two
+priorities, it is also fast. On a Pentium under BSD/OS, qmail can
+easily handle 200000 separate messages per day that are injected
+and must then be delivered to local mailboxes!
+
+Security and reliability are qmail's two strengths, however. The
+qmail package ensures a message, once accepted, will never be lost.
+An optional new mailbox format, maildir, even lets users safely
+read their mail over NFS, while still accepting new mail deliveries.
+
+The following features are supported: host and user masquerading,
+full host hiding, virtual domains, null clients, list-owner rewriting,
+relay control, double-bounce recording, arbitrary RFC 822 address
+lists, cross-host mailing-list loop detection, per-recipient
+checkpointing, downed host backoffs, independent message retry
+schedules, a drop-in sendmail replacement, and more!
diff --git a/mail/qmail/pkg/PLIST b/mail/qmail/pkg/PLIST
new file mode 100644
index 00000000000..7235ad97428
--- /dev/null
+++ b/mail/qmail/pkg/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2001/08/13 09:10:10 zuntum Exp $
+@unexec cd ${QMAILDIR} && rm -rf bin boot doc man