mail: make The Dragonfly Mail Agent (dma) the default mta.

dma accepts mail from a local Mail User Agent (MUA) and delivers it
locally or to a smarthost for delivery. dma does not accept inbound
mail (i.e., it does not listen on port 25) and is not intended to
provide the same functionality as a full MTA like postfix or sendmail.
It is intended for use cases such as delivering cron(8) mail. which
is the default configuration and usage of sendmail in the default
setup of the base system.

In order to switch the default from sendmail to dma, we teach
mailwrapper to fallback on dma directly if the mailer.conf file cannot
be opened.
We install by default a mailer.conf file which points at dma
We install a mailer.conf file for sendmail in the examples.

Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D37035
This commit is contained in:
Baptiste Daroussin 2022-10-13 11:37:21 +02:00
parent bdbc05bea9
commit a67b925ff3
4 changed files with 15 additions and 13 deletions

View File

@ -24,11 +24,6 @@ YFLAGS+= -i
CLEANFILES= aliases_parse.i
FILES= mailer.conf
FILESDIR= ${SHAREDIR}/examples/dma
.if ${MK_SENDMAIL} == no
CONFGROUPS= CONFS MAILER
MAILERDIR= /etc/mail
MAILER= mailer.conf
.endif
BINMODE= 2555

View File

@ -596,7 +596,7 @@ allscreens_kbdflags="" # Set this kbdcontrol mode for all virtual screens
mta_start_script="/etc/rc.sendmail"
# Script to start your chosen MTA, called by /etc/rc.
# Settings for /etc/rc.sendmail and /etc/rc.d/sendmail:
sendmail_enable="NO" # Run the sendmail inbound daemon (YES/NO).
sendmail_enable="NONE" # Run the sendmail inbound daemon (YES/NO).
sendmail_pidfile="/var/run/sendmail.pid" # sendmail pid file
sendmail_procname="/usr/sbin/sendmail" # sendmail process name
sendmail_flags="-L sm-mta -bd -q30m" # Flags to sendmail (as a server)

View File

@ -16,10 +16,10 @@ SYMLINKS= ../sbin/mailwrapper /usr/bin/mailq \
mailwrapper /usr/sbin/purgestat \
mailwrapper /usr/sbin/sendmail
.if ${MK_MAILWRAPPER} == "no" && ${MK_SENDMAIL} != "no"
SYMLINKS+= ../libexec/sendmail/sendmail ${BINDIR}/mailwrapper
.elif ${MK_MAILWRAPPER} == "no" && ${MK_SENDMAIL} == "no" && ${MK_DMAGENT} != "no"
.if ${MK_MAILWRAPPER} == "no" && ${MK_DMAGENT} != "no"
SYMLINKS+= ../libexec/dma ${BINDIR}/mailwrapper
.elif ${MK_MAILWRAPPER} == "no" && ${MK_DMAGENT} == "no" && ${MK_SENDMAIL} != "no"
SYMLINKS+= ../libexec/sendmail/sendmail ${BINDIR}/mailwrapper
.endif
.endif
@ -27,16 +27,23 @@ SYMLINKS+= ../libexec/dma ${BINDIR}/mailwrapper
SYMLINKS+= ..${BINDIR}/mailwrapper /bin/rmail
.endif
.if ${MK_SENDMAIL} != "no"
FILES= ${SRCTOP}/etc/mail/mailer.conf
FILESDIR= ${SHAREDIR}/examples/sendmail
.endif
.if ${MK_MAILWRAPPER} != "no"
# We install here if either sendmail(8) is enabled, or dma(8) isn't. In the
# We install here if either dma(8) is enabled, or sendmail(8) isn't. In the
# latter scenario, we take care of the possibility that neither sendmail(8) nor
# dma(8) are installed and simply provide a default that can be changed for an
# alternative in ports.
.if ${MK_SENDMAIL} != "no" || ${MK_DMAGENT} == "no"
.if ${MK_DMAGENT} != "no" || ${MK_SENDMAIL} == "no"
CONFS= ${SRCTOP}/libexec/dma/dmagent/mailer.conf
.else
CONFS= ${SRCTOP}/etc/mail/mailer.conf
.endif
CONFSDIR= /etc/mail
CONFSMODE= 644
.endif
.endif
.include <bsd.prog.mk>

View File

@ -34,4 +34,4 @@
*/
#define _PATH_MAILERCONF "/etc/mail/mailer.conf"
#define _PATH_DEFAULTMTA "/usr/libexec/sendmail/sendmail"
#define _PATH_DEFAULTMTA "/usr/libexec/dma"