Automic VaultAutomic Vault

brew

Install emqx with Homebrew

MQTT broker for IoT. Version 5.8.8 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install emqx

local Homebrew formula metadata

overview

Package summary

MQTT broker for IoT

Commands and aliases

  • emqx
  • emqx-5.8.8
  • emqx_cluster_rescue
  • emqx_ctl
  • emqx_ctl-5.8.8
  • emqx_fw
  • install_upgrade.escript
  • install_upgrade.escript-5.8.8
  • no_dot_erlang.boot
  • node_dump
  • nodetool-5.8.8

history

Project history and usage

EMQX is an Erlang-based MQTT broker and IoT messaging platform for high-scale device connectivity, MQTT protocol support, clustering, rules, data integrations, and operational management.

Project history

EMQ's tenth-anniversary post says EMQX was released as an open-source project on GitHub on December 17, 2012. The same source frames its origin around Erlang, MQTT, and open source, and says development continued through the 2010s as MQTT became a default protocol for IoT messaging.

The official history highlights several product milestones: early MQTT 3.1 and 3.1.1 compatibility, EMQX 3.0 in 2018 with full MQTT 5.0 server support, EMQX 4.0 in 2020 with a built-in SQL-based rule engine, and EMQX 5.0 with larger-scale clustering, MQTT over QUIC, and 100M+ connection testing.

The README describes EMQX as a platform rather than only a broker, with support for MQTT 5.0, 3.1.1, and 3.1, plus MQTT-SN, CoAP, LwM2M, and MQTT over QUIC. It also documents the 5.9.0 licensing/product change that unified features from the previous open-source and enterprise editions under BSL 1.1.

Adoption history

The anniversary post gives the clearest official adoption snapshot: more than 10K GitHub stars, more than 20M downloads, more than 20,000 enterprise users, and more than 30,000 active cluster deployments per month at the time of that post.

EMQX's commercial adoption story is also official: EMQ says the company opened in 2017 in response to enterprise users deploying EMQX at scale, and the anniversary post cites over 400 customers and over 70 Fortune 500 companies using EMQX in IoT, IIoT, connected-vehicle, and other mission-critical applications.

How it is used

Package users run EMQX as a broker service, commonly exposing MQTT ports, the Dashboard, and HTTP APIs. The official README shows Docker startup, Kubernetes operator documentation, downloads for self-managed installs, and build-from-source instructions.

Configuration became more HOCON-oriented in EMQX 5. The official configuration docs describe `etc` as the static configuration directory, `data/configs` as the dynamic runtime configuration directory, `base.hocon` for configuration-as-code, `cluster.hocon` for changes persisted through Dashboard/API/CLI, and `emqx.conf` for backward-compatible immutable settings.

In deployed systems, EMQX is commonly used as the MQTT ingress and routing layer for IoT data, with rules and bridges sending messages to Kafka, RabbitMQ, PostgreSQL, MySQL, MongoDB, Redis, ClickHouse, cloud messaging services, webhooks, and observability systems.

Why package nerds care

EMQX is a heavier package-manager entry than most CLIs in this batch: it ships a broker, management commands, Erlang runtime expectations, configuration layers, a dashboard, and service-style deployment behavior. For package maintainers, it sits closer to Redis, RabbitMQ, or Mosquitto than to a single-purpose command.

It matters to package nerds because it exposes the messy but useful intersection of package managers and distributed systems: local development installs, service supervision, data directories, versioned config migration, and network ports all have to line up before the binary is useful.

Timeline

  • 2012: EMQX released as an open-source project on GitHub on December 17.
  • 2017: EMQ opened as a company after enterprise deployment demand grew.
  • 2018: EMQX 3.0 released with complete MQTT 5.0 server support.
  • 2020: EMQX 4.0 introduced a built-in SQL-based rule engine.
  • 2022: EMQX 5.0 arrived with 100M+ connection testing and MQTT over QUIC highlighted by EMQ.
  • v5.9.0: EMQX unified prior open-source and enterprise features under BSL 1.1.

Related projects

  • Related EMQ projects and surfaces include EMQX Cloud, the EMQX Kubernetes Operator, MQTTX, the EMQX rule engine and data integrations, and the broader MQTT broker ecosystem that includes Mosquitto, VerneMQ, HiveMQ, and RabbitMQ MQTT plugins.

security posture

Risk level: orange

formula declares a Homebrew service. infrastructure mutation or orchestration signal.

Risk classifier

orange risk · medium confidence · infrastructure

Why

  • formula declares a Homebrew service
  • infrastructure mutation or orchestration signal

Signals

  • metadata:service
  • text:cluster

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Formula metadata declares a service or daemon block.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 7 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

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.

Configuration files

Config paths the tool may read or write during local use.

Unix
etc/emqx.confetc/base.hoconetc/cluster.hocon

executables

Installed executables

CommandKindExposureNote
emqxcliglobal executable
emqx-5.8.8cliglobal executable
emqx_cluster_rescuecliglobal executable
emqx_ctlcliglobal executable
emqx_ctl-5.8.8cliglobal executable
emqx_fwcliglobal executable
install_upgrade.escriptcliglobal executable
install_upgrade.escript-5.8.8cliglobal executable
no_dot_erlang.bootcliglobal executable
node_dumpcliglobal executable
nodetool-5.8.8cliglobal executable

freshness

Version and 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.

page generated2026-07-08
manager version5.8.8
manager updated
local dataok
upstreamcurrent
latest detectedv5.8.8

https://github.com/emqx/emqx

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:emqx
Version5.8.8
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/emqx
Homepagehttps://www.emqx.io/
Repositoryhttps://github.com/emqx/emqx
Upstream docshttps://docs.emqx.com/en/emqx/latest
LicenseApache-2.0
Source archivehttps://github.com/emqx/emqx/archive/refs/tags/v5.8.8.tar.gz
Dependenciesopenssl@3
Build dependenciesautoconf, automake, cmake, coreutils, erlang@26, freetds, libtool
Uses from macOScyrus-sasl, krb5, ncurses
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicedeclared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameemqx
Version Scheme0
Revision0
Conflicts With
  • cassandra
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedyes
Disabledno
Keg Onlyno
URL Keys
  • stable

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • package relationship graph
  • package version freshness
  • package-page enrichment