HomeFreeBSD

pkgbase: resolve mailer.conf conflict WITHOUT_SENDMAIL

Description

pkgbase: resolve mailer.conf conflict WITHOUT_SENDMAIL

When WITHOUT_SENDMAIL is set, we end up with two different mailer.conf that
conflict, and hilarity ensues. There's currently three different places that
we might install mailer.conf:

  • ^/etc/Makefile (package=runtime, contingent on MK_MAIL != no)
  • ^/libexec/dma/dmagent/Makefile (package=dma, contingent on MK_SENDMAIL !=

no)

  • ^/usr.sbin/mailwrapper/Makefile (package=utilities, contingent on

not-installed)

The mailwrapper installation will effectively never happen because the ^/etc
one will first.

This patch simplifies the whole situation; remove the ^/etc/Makefile version
and install it primarily in mailwrapper if MK_MAILWRAPPER != "no". The
scenarios covered in mailwrapper are:

  • sendmail(8) is installed, dma(8) may or may not be installed
  • neither sendmail(8) nor dma(8) is installed

In the first scenario, sendmail(8) is dominant so we can go ahead and
install the version in ^/etc/mail. In the unlisted scenario, sendmail(8) is
not installed but dma(8) is, we'll let ^/libexec/dma/dmagent do the
installation. In the second listed scenario, we still want to install an
example mailer.conf so just install the base sendmail(8) version.

Reviewed by: bapt
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D24924