pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/mail/qmail Update from netqmail 1.06 (2007) to notqmai...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/5439b2693164
branches:  trunk
changeset: 399980:5439b2693164
user:      schmonz <schmonz%pkgsrc.org@localhost>
date:      Tue Aug 20 02:38:04 2019 +0000

description:
Update from netqmail 1.06 (2007) to notqmail 1.07 (just released). From
the changelog:

- code: remove incorrect usage of vfork()
- code: detect and prefer utmpx where available
- code: removed idedit, install-big. var-qmail packages are no more
- portability problem: explicitly initialize strerr_sys and
  define BIND_8_COMPAT to work around Mac OS X
- code: add instchown to set ownership and mode on installed files
- code: add instpackage to install without root access
- doc: rename INSTALL, SENDMAIL to INSTALL.md, SENDMAIL.md to
  support building on case-insensitive filesystems
- code: lookup uid/gid at runtime
- code: use DESTDIR environment variable as root directory in install

pkgsrc changes:

- If hostname isn't FQDN, config-fast-pkgsrc wouldn't produce a working
  config, so don't run it; tell user what to do instead
- Stage QMAIL_QUEUE_DIR into DESTDIR/tmp, to be more obvious that it's
  not being packaged up (and is not how a queue gets created at
  pkg_add time)
- Drop custom destdir, qbiffutmpx, and Darwin patches
- Rebase TLS-onlyremote, QMAILREMOTE, and SRS patches
- Require latest ucspi-ssl and ucspi-tcp6 for IPv4 fixes
- Move MESSAGE.tls to README.tls, and remove other MESSAGE*
- Set PKG_HOME even for non-default values of QMAIL_ALIAS_USER
- Check whether alias/.qmail-foo exist before trying to remove

Bump PKGREVISION.

diffstat:

 mail/qmail/DEINSTALL                            |   13 +-
 mail/qmail/INSTALL                              |  137 +++++++++++++----------
 mail/qmail/MESSAGE                              |   14 --
 mail/qmail/MESSAGE.srs                          |    8 -
 mail/qmail/MESSAGE.tls                          |   16 --
 mail/qmail/Makefile                             |   90 +++++++--------
 mail/qmail/PLIST                                |   10 +-
 mail/qmail/distinfo                             |   43 ++----
 mail/qmail/files/README.tls                     |   26 ++++
 mail/qmail/files/config-fast-pkgsrc-defaults.sh |   27 ++++
 mail/qmail/options.mk                           |   36 ++----
 mail/qmail/patches/patch-strerr_sys.c           |   15 --
 12 files changed, 213 insertions(+), 222 deletions(-)

diffs (truncated from 730 to 300 lines):

diff -r ac796533e122 -r 5439b2693164 mail/qmail/DEINSTALL
--- a/mail/qmail/DEINSTALL      Tue Aug 20 00:14:25 2019 +0000
+++ b/mail/qmail/DEINSTALL      Tue Aug 20 02:38:04 2019 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: DEINSTALL,v 1.7 2018/12/04 17:01:39 schmonz Exp $
+# $NetBSD: DEINSTALL,v 1.8 2019/08/20 02:38:04 schmonz Exp $
 
 QMAILDIR=@QMAILDIR@
 QMAIL_QUEUE_EXTRA=@QMAIL_QUEUE_EXTRA@
@@ -10,10 +10,13 @@
 DEINSTALL)
        cd ${PKG_SYSCONFDIR}
        for i in mailer-daemon postmaster root ${QMAIL_QUEUE_EXTRA}; do
-               contents=$(${CAT} alias/.qmail-${i})
-               if [ "${contents}" = '# pkgsrc says: replace this comment with your config' ] \
-                       || [ "${contents}" = '' ]; then
-                       ${RM} -f alias/.qmail-${i}
+               f="alias/.qmail-${i}"
+               if [ -e ${f} ]; then
+                       contents=$(${CAT} ${f})
+                       if [ "${contents}" = '# pkgsrc says: replace this comment with your config' ] \
+                               || [ "${contents}" = '' ]; then
+                               ${RM} -f ${f}
+                       fi
                fi
        done
        for i in defaultdomain locals me plusdomain rcpthosts; do
diff -r ac796533e122 -r 5439b2693164 mail/qmail/INSTALL
--- a/mail/qmail/INSTALL        Tue Aug 20 00:14:25 2019 +0000
+++ b/mail/qmail/INSTALL        Tue Aug 20 02:38:04 2019 +0000
@@ -1,44 +1,89 @@
-# $NetBSD: INSTALL,v 1.15 2019/07/15 16:11:58 schmonz Exp $
+# $NetBSD: INSTALL,v 1.16 2019/08/20 02:38:04 schmonz Exp $
 
 DOCDIR=@DOCDIR@
 EGDIR=@EGDIR@
 PKGMANDIR=@PKGMANDIR@
 QMAILDIR=@QMAILDIR@
 QMAIL_QUEUE_DIR=@QMAIL_QUEUE_DIR@
-QMAIL_QUEUE_EXTRA=@QMAIL_QUEUE_EXTRA@
 
 VAR_QMAIL_DIRS="alias bin boot control doc man queue users"
 
-case ${STAGE} in
+error_qmaildir() {
+       local _qmaildir
+       _qmaildir="$1"
 
-PRE-INSTALL)
-       for dir in $VAR_QMAIL_DIRS; do
-               if [ -e ${QMAILDIR}/$dir ]; then
-                       ${CAT} <<EOF
+       ${CAT} <<EOF
 ===========================================================================
 
-ERROR: ${QMAILDIR} exists and is non-empty.
+ERROR: ${_qmaildir} exists and is non-empty.
 
 Please remove or rename it, then try again.
 
 ===========================================================================
 EOF
-               exit 1
-               fi
-       done
+       exit 1
+}
 
-       if ${ECHO} ${QMAIL_QUEUE_DIR} | ${GREP} -q "^${QMAILDIR}/"; then
-               ${CAT} <<EOF
+error_instchown() {
+       local _exitcode
+       _exitcode="$1"
+
+       ${CAT} <<EOF
 ===========================================================================
 
-ERROR: QMAIL_QUEUE_DIR must not be under ${QMAILDIR}.
+ERROR: instchown exited ${_exitcode}.
 
-Please adjust your definition of QMAIL_QUEUE_DIR, then try again.
+Permissions are likely wrong, and/or the queue may be uninitialized.
 
 ===========================================================================
 EOF
-               exit 1
-       fi
+       exit 1
+}
+
+error_instcheck() {
+       local _output
+       _output="$1"
+
+       ${CAT} <<EOF
+===========================================================================
+
+ERROR: instcheck issued warnings:
+
+${_output}
+
+Permissions are likely wrong, and/or the queue may be uninitialized.
+
+===========================================================================
+EOF
+       exit 1
+}
+
+warning_fqdn() {
+       local _command _name
+       _command="$1"
+       _name="$2"
+
+       ${CAT} <<EOF
+===========================================================================
+
+WARNING: "${_name}" is not a fully qualified name.
+
+To configure basic qmail control files, please run this command:
+
+# ${_command} ${_name}.YOURDOMAIN.TLD
+
+===========================================================================
+EOF
+}
+
+case "${STAGE}" in
+
+PRE-INSTALL)
+       for dir in $VAR_QMAIL_DIRS; do
+               if [ -e ${QMAILDIR}/$dir ]; then
+                       error_qmaildir ${QMAILDIR}
+               fi
+       done
 
        # keep in sync with Makefile:pre-install
        ${LN} -s ${PKG_SYSCONFDIR}/alias        ${QMAILDIR}/alias
@@ -53,57 +98,29 @@
        ;;
 
 POST-INSTALL)
-       ${PREFIX}/share/qmail/setup/install-destdir
+       # create the queue
+       ${PREFIX}/share/qmail/setup/instpackage >/dev/null 2>&1
+       ${PREFIX}/share/qmail/setup/instchown
        QMAIL_SETUP_EXITCODE=$?
        if [ ${QMAIL_SETUP_EXITCODE} -ne 0 ]; then
-               ${CAT} <<EOF
-===========================================================================
-
-ERROR: install-destdir exited nonzero (${QMAIL_SETUP_EXITCODE}).
-
-Permissions are likely wrong, and/or the queue may be uninitialized.
-
-===========================================================================
-EOF
-               exit 1
+               error_instchown ${QMAIL_SETUP_EXITCODE}
        fi
 
        QMAIL_CHECK_OUTPUT=$(${PREFIX}/share/qmail/setup/instcheck 2>&1)
        if [ -n "${QMAIL_CHECK_OUTPUT}" ]; then
-               ${CAT} <<EOF
-===========================================================================
-
-ERROR: instcheck issued warnings:
-
-${QMAIL_CHECK_OUTPUT}
-
-Permissions are likely wrong, and/or the queue may be uninitialized.
-
-===========================================================================
-EOF
-               exit 1
+               error_instcheck "${QMAIL_CHECK_OUTPUT}"
        fi
 
-       cd ${PREFIX}/share/qmail/setup && ./config-fast-pkgsrc `./hostname`
-
-       cd ${PKG_SYSCONFDIR}/.pkgsrc-defaults-do-not-edit
-       for i in locals rcpthosts; do
-               ${SORT} -u ${i} > ${i}.tmp && ${MV} ${i}.tmp ${i}
-       done
-
-       cd ${PKG_SYSCONFDIR}
-       for i in defaultdomain locals me plusdomain rcpthosts; do
-               [ -f control/${i} ] \
-                       || ${CP} .pkgsrc-defaults-do-not-edit/${i} control
-       done
-
-       cd ${PKG_SYSCONFDIR}/alias
-       for i in mailer-daemon postmaster root ${QMAIL_QUEUE_EXTRA}; do
-               [ -s .qmail-${i} ] \
-                       || ${ECHO} '# pkgsrc says: replace this comment with your config' \
-                       > .qmail-${i}
-               ${CHMOD} 644 .qmail-${i}
-       done
+       QMAIL_CONFIG_CMD="${PREFIX}/share/qmail/setup/config-fast-pkgsrc"
+       QMAIL_FQDN=$(${PREFIX}/share/qmail/setup/hostname)
+       case "${QMAIL_FQDN}" in
+       *.*)
+               ${QMAIL_CONFIG_CMD} "${QMAIL_FQDN}"
+               ;;
+       *)
+               warning_fqdn "${QMAIL_CONFIG_CMD}" "${QMAIL_FQDN}"
+               ;;
+       esac
 
        ;;
 
diff -r ac796533e122 -r 5439b2693164 mail/qmail/MESSAGE
--- a/mail/qmail/MESSAGE        Tue Aug 20 00:14:25 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-===========================================================================
-$NetBSD: MESSAGE,v 1.13 2006/04/29 04:53:17 schmonz Exp $
-
-Please read ${DOCDIR}/README.pkgsrc.
-
-There are many ways to enable qmail. One popular, well-regarded
-choice is to follow the directions in Dave Sill's "Life with qmail":
-
-    <URL:http://www.lifewithqmail.org/lwq.html>
-
-Alternatively, you can let pkgsrc do the work by installing the
-qmail-run package.
-
-===========================================================================
diff -r ac796533e122 -r 5439b2693164 mail/qmail/MESSAGE.srs
--- a/mail/qmail/MESSAGE.srs    Tue Aug 20 00:14:25 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-===========================================================================
-$NetBSD: MESSAGE.srs,v 1.1 2017/03/31 13:52:00 schmonz Exp $
-
-The Sender Rewriting Scheme patch requires configuration.
-
-Please read ${DOCDIR}/README.srs.
-
-===========================================================================
diff -r ac796533e122 -r 5439b2693164 mail/qmail/MESSAGE.tls
--- a/mail/qmail/MESSAGE.tls    Tue Aug 20 00:14:25 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-===========================================================================
-$NetBSD: MESSAGE.tls,v 1.1 2017/08/13 23:42:55 schmonz Exp $
-
-If you don't already have an SSL certificate for qmail:
-
-# ${OPENSSL} req -new -x509 -nodes -days 366 -out ${SERVERCERT} -keyout ${SERVERCERT}
-# chmod 640 ${SERVERCERT}
-# chown ${QMAIL_DAEMON_USER}:${QMAIL_QMAIL_GROUP} ${SERVERCERT}
-# ln -s ${SERVERCERT} ${CLIENTCERT}
-# update_tmprsadh
-
-Once you have a certificate, regularly regenerate DH params from cron(8):
-
-    01 01 * * * update_tmprsadh > /dev/null 2>&1
-
-===========================================================================
diff -r ac796533e122 -r 5439b2693164 mail/qmail/Makefile
--- a/mail/qmail/Makefile       Tue Aug 20 00:14:25 2019 +0000
+++ b/mail/qmail/Makefile       Tue Aug 20 02:38:04 2019 +0000
@@ -1,14 +1,16 @@
-# $NetBSD: Makefile,v 1.113 2019/07/01 14:57:31 schmonz Exp $
+# $NetBSD: Makefile,v 1.114 2019/08/20 02:38:04 schmonz Exp $
 #
 
-DISTNAME=              netqmail-1.06
+DISTNAME=              notqmail-1.07
 PKGNAME=               qmail-1.03
-PKGREVISION=           45
+PKGREVISION=           46
 CATEGORIES=            mail
-MASTER_SITES=          ${HOMEPAGE}
+MASTER_SITES=          ${MASTER_SITE_GITHUB:=notqmail/}
+GITHUB_PROJECT=                notqmail
+GITHUB_RELEASE=                ${DISTNAME}
 
 MAINTAINER=            schmonz%NetBSD.org@localhost
-HOMEPAGE=              http://netqmail.org/
+HOMEPAGE=              https://notqmail.org/
 COMMENT=               Secure, reliable, efficient, simple, and fast MTA
 LICENSE=               public-domain
 
@@ -22,9 +24,6 @@
 CONFLICTS+=            pulsar<=0.1.1
 CONFLICTS+=            qmail-run<=20170706
 
-WRKSRC=                        ${WRKDIR}/${DISTNAME}
-
-DJB_CONFIG_CMDS=       ${ECHO} ${DESTDIR:Q}${QMAILDIR:Q} > conf-destdir;
 DJB_CONFIG_CMDS+=      ${ECHO} ${QMAIL_ALIAS_USER:Q}     > conf-users;
 DJB_CONFIG_CMDS+=      ${ECHO} ${QMAIL_DAEMON_USER:Q}   >> conf-users;
 DJB_CONFIG_CMDS+=      ${ECHO} ${QMAIL_LOG_USER:Q}      >> conf-users;
@@ -36,11 +35,8 @@
 DJB_CONFIG_CMDS+=      ${ECHO} ${QMAIL_QMAIL_GROUP:Q}    > conf-groups;
 DJB_CONFIG_CMDS+=      ${ECHO} ${QMAIL_NOFILES_GROUP:Q} >> conf-groups;
 DJB_BUILD_TARGETS=     man
-INSTALL_TARGET=                setup



Home | Main Index | Thread Index | Old Index