Why is sendmail is part of the system and not a package?

Erik Norgaard norgaard at locolomo.org
Thu Oct 29 07:49:42 UTC 2009

pete wright wrote:
> On Tue, Oct 27, 2009 at 7:14 PM, Frank Shute <frank at shute.org.uk> wrote:
>> FreeBSD: ?
>> I can't think of a good reason why FreeBSD should get rid of it.
>> Saying that, it would be neat if it was taken out of base and replaced
>> with something minimal that could cope with the demands of cron and
>> not much else. Then the user is expected to install a MTA of their
>> choice out of ports.
>> That would mean less code in base and fewer security advisories.
> yea i like where you are going with this frank - perhaps when
> opensmtpd is done we'll be in the position to import this into the
> freebsd tree?  it sounds like it might fit the bill :)

But, do we actually need an MTA in the base? The only arguments I have 
seen in this thread are:

- because it's been there since the beginning of history
- because cron requires it to send the daily reports

For the first, that may be so, but what was a good idea at the beginning 
of history may not be so today. The argument is invalid. For the benefit 
of the project, it should continuously be considered if legacy code can 
be removed and offered as an optional component for those relying on it.

For the second, honestly: If cron is the only application that requires 
an MTA then maybe it should be considered if that is a good solution. I 
think it is a very heavy requirement for what is otherwise very simple.

If you deploy a SOHO network with FBSD at home, you may not use your own 
mailservice but depend on some other service. Then you likely don't read 
local mail regularly and it suffices for you to keep the output of cron 
in a plain text file in /var/log. Or you may have cron send mails to 
your mailservice. In either case, there is no need for an MTA like 
sendmail, you only need a simple client.

If you deploy FBSD in larger networks, then you may opt for some other 
MTA. Let's face it, sendmail isn't exactly easy to setup for advanced 

And, you don't need an MTA on all systems, only on the mail gateway, 
other systems just need a mail client for cron - if you don't use some 
more advanced monitoring system, having a dedicated syslog server for 

It appears to me that having an MTA in base is obsolete. A simple client 
would do if anything at all. Further, if keeping an MTA costs resources 
in patching and testing for every new release, then it goes from being a 
remnant from history to slow down progress for the project.

BR, Erik
Erik Nørgaard
Ph: +34.666334818/+34.915211157                  http://www.locolomo.org

More information about the freebsd-questions mailing list