macOS
brew install ejabberdlocal Homebrew formula metadata
sudo port install ejabberdMacPorts ports tree · net/ejabberd/Portfile · source: api.github.com
brew
XMPP application server. Version 26.04 via Homebrew; verified 2026-07-07.
install
brew install ejabberdlocal Homebrew formula metadata
sudo port install ejabberdMacPorts ports tree · net/ejabberd/Portfile · source: api.github.com
sudo apk add ejabberdAlpine Linux edge package indexes · ejabberd · source: dl-cdn.alpinelinux.org
sudo apt install ejabberdDebian stable package indexes · ejabberd · source: deb.debian.org
nix profile install nixpkgs#ejabberdnixpkgs package indexes · pkgs/by-name/ej/ejabberd/package.nix · source: api.github.com
sudo pacman -S ejabberdArch Linux sync databases · ejabberd · source: geo.mirror.pkgbuild.com
overview
XMPP application server
history
ejabberd is a long-running Erlang-based realtime messaging server, best known as an XMPP server and now also positioned as an MQTT broker and SIP service. It is one of the historically important open source messaging servers because it combined XMPP federation, Erlang fault tolerance, clustering, and production-scale deployments.
The official ejabberd site describes the project as a ProcessOne product in production since 2002. The repository README calls it an open source, robust, scalable, extensible realtime platform built with Erlang/OTP, including XMPP Server, MQTT Broker, and SIP Service.
ejabberd grew during the XMPP/Jabber era, when open federated instant messaging needed servers that could handle many persistent client connections. Erlang was a natural fit for that concurrency model, and ejabberd became one of the best-known Erlang infrastructure packages outside telecom.
The modern project keeps a broad operational surface: source builds, installers, Docker images, OS packages, Homebrew packages, GitHub releases, documentation, GitHub Discussions, Stack Overflow, Weblate translations, commercial ProcessOne support, and the managed Fluux service. That mix shows a project that survived the original Jabber wave and adapted to current deployment habits.
The official homepage says ejabberd is trusted by WhatsApp, Nintendo Switch, BBC, and hundreds of organizations, and highlights use at WhatsApp scale. It also advertises more than two million concurrent sessions on a single node and support for hundreds of XMPP extensions.
Package adoption is broad. The input metadata lists Homebrew, Debian, Ubuntu, Alpine, MacPorts, Nix, and Pacman, while the README links to OS packages, Homebrew, Docker Hub, GitHub Packages, and ProcessOne installers. That is the profile of a server package expected to run on laptops, bare-metal systems, distro servers, and containers.
Operators use ejabberd to run XMPP domains, federated messaging, multi-user chat, publish-subscribe, mobile push, message archives, MQTT endpoints, SIP service, REST APIs, web administration, and clustered realtime infrastructure. The configuration center is `ejabberd.yml`, with command-line operation through `ejabberdctl`.
The README points users to docs, `ejabberdctl help`, and `man ejabberd.yml`. The homepage's example configuration shows standard XMPP ports, MQTT, SQL storage, MAM, push, PubSub, and MUC modules, which captures the normal server-admin workflow: edit YAML, enable modules, choose storage, and operate the service.
ejabberd is package-nerd significant because it is a classic daemon with many packaging shapes: Erlang runtime dependency, config files, service management, man pages, OS packages, containers, Homebrew, and upstream installers. It is not just a binary; it is an operating-system resident service.
It is also a good example of a package whose value is partly historical. XMPP infrastructure was central to open messaging before mobile silos dominated chat, and ejabberd remains a maintained way to run standards-based realtime communications without outsourcing identity or message routing.
security posture
broad file, network, media, or database tool signal. formula declares a Homebrew service.
orange risk · medium confidence · infrastructure
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
$CONFIG_DIR/ejabberd.yml$CONFIG_DIR/ejabberdctl.cfg$CONFIG_DIR/vm.argsexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
ejabberdctl | 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.
https://github.com/processone/ejabberd
install metadata
| Package key | brew:ejabberd |
|---|---|
| Version | 26.04 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/ejabberd |
| Homepage | https://www.ejabberd.im |
| Repository | https://github.com/processone/ejabberd |
| Upstream docs | https://docs.ejabberd.im/ |
| License | GPL-2.0-or-later |
| Source archive | https://github.com/processone/ejabberd/archive/refs/tags/26.04.tar.gz |
| Last updated | 2026-07-07T07:03:54Z |
| Pulse | updated |
| Dependencies | elixir, erlang, gd, libyaml, openssl@3 |
| Build dependencies | autoconf, automake |
| Uses from macOS | expat |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | declared |
| Caveats | If you face nodedown problems, concat your machine name to: /private/etc/hosts after 'localhost'. |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | ejabberd |
| Version Scheme | 0 |
| Revision | 3 |
| Head Version | HEAD |
| Conflicts With |
|
| 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.
ejabberd 24.12-3+deb13u2
extensible realtime platform (XMPP server + MQTT broker + SIP service)
sudo apt install ejabberdejabberd
nix profile install nixpkgs#ejabberdejabberd 23.10-1
extensible realtime platform (XMPP server + MQTT broker + SIP service)
sudo apt install ejabberdejabberd 26.02-r0
Robust, Ubiquitous and Massively Scalable Messaging Platform for XMPP, MQTT, and SIP Protocols
sudo apk add ejabberdejabberd-bash-completion 26.02-r0
Bash completions for ejabberd
sudo apk add ejabberd-bash-completionejabberd-dev 26.02-r0
Robust, Ubiquitous and Massively Scalable Messaging Platform for XMPP, MQTT, and SIP Protocols (development files)
sudo apk add ejabberd-devejabberd-doc 26.02-r0
Robust, Ubiquitous and Massively Scalable Messaging Platform for XMPP, MQTT, and SIP Protocols (documentation)
sudo apk add ejabberd-docejabberd-openrc 26.02-r0
Robust, Ubiquitous and Massively Scalable Messaging Platform for XMPP, MQTT, and SIP Protocols (OpenRC init scripts)
sudo apk add ejabberd-openrcejabberd 26.04-2
Jabber server written in Erlang
sudo pacman -S ejabberdejabberd
sudo port install ejabberdsource 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.