macOS
brew install eximlocal Homebrew formula metadata
sudo port install eximMacPorts ports tree · mail/exim/Portfile · source: api.github.com
brew
Complete replacement for sendmail. Version 4.99.4 via Homebrew; verified 2026-06-22.
install
brew install eximlocal Homebrew formula metadata
sudo port install eximMacPorts ports tree · mail/exim/Portfile · source: api.github.com
sudo apk add eximAlpine Linux edge package indexes · exim · source: dl-cdn.alpinelinux.org
sudo dnf install eximFedora Rawhide package metadata · exim · source: dl.fedoraproject.org
nix profile install nixpkgs#eximnixpkgs package indexes · pkgs/by-name/ex/exim/package.nix · source: api.github.com
sudo pacman -S eximArch Linux sync databases · exim · source: geo.mirror.pkgbuild.com
sudo zypper install eximopenSUSE Tumbleweed package metadata · exim · source: download.opensuse.org
overview
Complete replacement for sendmail
history
Exim is a Unix-oriented mail transfer agent from the University of Cambridge, built for Internet-connected hosts and distributed under the GPL. It matters in package-manager culture because it is one of the long-lived sendmail replacements that administrators can install as a real MTA, a queueing mail system, and a command-line-compatible submission tool.
The current Exim specification describes Exim as an MTA for Unix and Unix-like hosts, designed around permanently connected Internet systems but configurable for intermittent links. Its own introduction explicitly places it in the Smail 3 lineage: many ideas and user interfaces came from Smail, while the Exim codebase was new and later grew beyond that initial model.
Exim's documentation and distribution model are also part of its history. The project has long shipped a large reference specification, command-line man page, filter language documentation, upgrade notes, and per-release change logs. Source releases are published from exim.org, with signed tarballs and a separate public Git repository for people who want to track the source tree directly.
An Exim 3.20 overview from 2000 already described production use at sites handling hundreds of thousands of messages per day. The current documentation points to mailing lists for announcements, user support, development, and automated VCS messages, plus independent mirror sites, which reflects the classic Unix server-project adoption pattern: distro packages, local site policy, mailing-list support, and careful upgrades.
Exim gained popularity as a sendmail-compatible replacement without requiring administrators to learn sendmail configuration. Its current manual says Exim adopts the Sendmail command-line interface so it can replace /usr/lib/sendmail or /usr/sbin/sendmail for message submission, while still producing Exim-specific output for administrative commands such as queue listings.
Exim is used to receive, queue, route, and deliver mail over SMTP and related transports. Administrators care about its runtime configuration file, router and transport model, ACLs, queue runner, logs, and privileged execution model because those determine how mail policy, local delivery, forwarding, relaying, and security boundaries behave on a server.
The package exposes a cluster of operational tools around the main exim binary, such as queue inspection, log grepping, database maintenance, and statistics commands. That shape is why it appears in package managers as a service-oriented package rather than a single-purpose CLI utility.
For package maintainers, Exim is a security-sensitive daemon with signed upstream releases, build-time paths, runtime privilege rules, and distro-specific defaults. The official manual notes that the runtime configuration filename is compiled in through CONFIGURE_FILE, which explains why packaged Exim builds often differ in configuration paths and default integration details.
Exim is also historically interesting because major policy behavior changed over time. The official DNSBL HOWTO notes that Exim 4.00 moved incoming-mail policy checks to ACLs, making Exim 4 configuration materially different from Exim 3 for common anti-abuse setups.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
exicyclog | cli | global executable | |
exigrep | cli | global executable | |
exim | cli | global executable | |
exim-4.99.3-2 | cli | global executable | |
exim_checkaccess | cli | global executable | |
exim_ctl | cli | global executable | |
exim_dbmbuild | cli | global executable | |
exim_dumpdb | cli | global executable | |
exim_fixdb | cli | global executable | |
exim_id_update | cli | global executable | |
exim_lock | cli | global executable | |
exim_msgdate | cli | global executable | |
exim_tidydb | cli | global executable | |
eximstats | cli | global executable | |
exinext | cli | global executable | |
exipick | cli | global executable | |
exiqgrep | cli | global executable | |
exiqsumm | cli | global executable | |
exiwhat | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:exim |
|---|---|
| Version | 4.99.4 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/exim |
| Homepage | https://exim.org |
| Repository | https://code.exim.org/exim/exim.git |
| Upstream docs | https://www.exim.org/docs.html |
| License | GPL-2.0-or-later |
| Source archive | https://ftp.exim.org/pub/exim/exim4/exim-4.99.4.tar.xz |
| Last updated | 2026-06-22T14:03:17-07:00 |
| Pulse | updated |
| Dependencies | openssl@3, pcre2 |
| Uses from macOS | libxcrypt, perl, sqlite |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
| Caveats | Start with: exim_ctl start Don't forget to run it as root to be able to bind port 25. |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | exim |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
exim
nix profile install nixpkgs#eximexim 4.99.4-r0
Message Transfer Agent
sudo apk add eximexim-cdb 4.99.4-r0
EXIM extension: cdb
sudo apk add exim-cdbexim-dbmdb 4.99.4-r0
EXIM extension: dbmdb
sudo apk add exim-dbmdbexim-dnsdb 4.99.4-r0
EXIM extension: dnsdb
sudo apk add exim-dnsdbexim-doc 4.99.4-r0
Message Transfer Agent (documentation)
sudo apk add exim-docexim-mysql 4.99.4-r0
EXIM extension: mysql
sudo apk add exim-mysqlexim-openrc 4.99.4-r0
Message Transfer Agent (OpenRC init scripts)
sudo apk add exim-openrcexim-postgresql 4.99.4-r0
EXIM extension: pgsql
sudo apk add exim-postgresqlexim-scripts 4.99.4-r0
EXIM scripts
sudo apk add exim-scriptsexim-sqlite 4.99.4-r0
EXIM extension: sqlite
sudo apk add exim-sqliteexim-utils 4.99.4-r0
EXIM utils
sudo apk add exim-utilsexim 4.99.4-1.fc45
The exim mail transfer agent
sudo dnf install eximexim-clamav 4.99.4-1.fc45
Clam Antivirus scanner dæmon configuration for use with Exim
sudo dnf install exim-clamavexim-greylist 4.99.4-1.fc45
Example configuration for greylisting using Exim
sudo dnf install exim-greylistexim-mon 4.99.4-1.fc45
X11 monitor application for Exim
sudo dnf install exim-monsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.