macOS
brew install nnglocal Homebrew formula metadata
sudo port install nngMacPorts ports tree · devel/nng/Portfile · source: api.github.com
brew
Nanomsg-next-generation -- light-weight brokerless messaging. Version 1.12.0 via Homebrew; verified 2026-06-28.
install
brew install nnglocal Homebrew formula metadata
sudo port install nngMacPorts ports tree · devel/nng/Portfile · source: api.github.com
sudo apk add nngAlpine Linux edge package indexes · nng · source: dl-cdn.alpinelinux.org
sudo apt install libnng-devDebian stable package indexes · libnng-dev · source: deb.debian.org
sudo dnf install nngFedora Rawhide package metadata · nng · source: dl.fedoraproject.org
nix profile install nixpkgs#nngnixpkgs package indexes · pkgs/by-name/nn/nng/package.nix · source: api.github.com
sudo pacman -S nngArch Linux sync databases · nng · source: geo.mirror.pkgbuild.com
sudo zypper install libnng1openSUSE Tumbleweed package metadata · libnng1 · source: download.opensuse.org
overview
Nanomsg-next-generation -- light-weight brokerless messaging
history
NNG, short for nanomsg-next-generation, is a C messaging library that reworks nanomsg's brokerless Scalability Protocols model with stronger production, async, transport, and security foundations.
The upstream README explicitly describes NNG as a rewrite of the Scalability Protocols library known as nanomsg, keeping compatibility with the original while adding significant capabilities. Its self-description places it in the same family as nanomsg and, to a lesser extent, ZeroMQ: lightweight brokerless messaging for recurring patterns such as publish/subscribe, request/reply, and service discovery.
The rewrite emphasized reliability, scalability, maintainability, extensibility, security, and usability. Notable package-level changes include a C11/CMake build, a custom asynchronous I/O framework, TLS-capable transports, and APIs intended to be more intuitive for concurrent programs.
NNG's adoption is developer-library adoption: it is packaged as libnng-dev or nng across Homebrew, Debian/Ubuntu, Fedora, Alpine, Arch, Nix, MacPorts, and openSUSE, and it exposes nngcat as a CLI utility. The repository also documents commercial support and sponsorship, which is meaningful for a low-level C messaging library used in production systems.
Compatibility was a core adoption strategy. The project documented migration from legacy libnanomsg and offered wire/API compatibility for many nanomsg and mangos applications, letting existing Scalability Protocols users move incrementally instead of rewriting their messaging layer at once.
Developers use NNG when they want simple message-pattern APIs without standing up a broker. Common package-nerd experiments use nngcat to test pub/sub or req/rep endpoints, then embed libnng in C or bind through another language for IPC, TCP, WebSocket, TLS, or in-process transport.
The practical distinction from heavier messaging stacks is that NNG tries to own the boring plumbing: reconnects, connection management, async dispatch, and protocol state. That makes it attractive for embedded systems, appliances, developer tools, and service components where a full broker is excessive.
NNG matters because it is the active successor path for nanomsg-style messaging. It preserves the idea that common distributed communication patterns can be expressed as small socket-like protocols while modernizing the implementation enough for safer concurrent production use.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
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 |
|---|---|---|---|
nngcat | 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/nanomsg/nng
install metadata
| Package key | brew:nng |
|---|---|
| Version | 1.12.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/nng |
| Homepage | https://nng.nanomsg.org/ |
| Repository | https://github.com/nanomsg/nng |
| Upstream docs | https://github.com/nanomsg/nng#readme |
| License | MIT |
| Source archive | https://github.com/nanomsg/nng/archive/refs/tags/v1.12.0.tar.gz |
| Last updated | 2026-06-28T03:47:06Z |
| Pulse | updated |
| Build dependencies | asciidoctor, cmake, ninja |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | nng |
| 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.
libnng-dev 1.10.1-2
Lightweight Messaging Library - development
sudo apt install libnng-devlibnng-doc 1.10.1-2
Lightweight Messaging Library - HTML documentation
sudo apt install libnng-doclibnng1 1.10.1-2
Lightweight Messaging Library - shared library
sudo apt install libnng1nng-utils 1.10.1-2
Lightweight Messaging Library - utility
sudo apt install nng-utilsnng
nix profile install nixpkgs#nnglibnng-dev 1.7.2-1build2
Lightweight Messaging Library - development
sudo apt install libnng-devlibnng1 1.7.2-1build2
Lightweight Messaging Library - shared library
sudo apt install libnng1nng-utils 1.7.2-1build2
Lightweight Messaging Library - utility
sudo apt install nng-utilsnng 1.11-r0
Lightweight Broker-Less Messaging Library
sudo apk add nngnng-dev 1.11-r0
Lightweight Broker-Less Messaging Library (development files)
sudo apk add nng-devnng-doc 1.11-r0
Lightweight Broker-Less Messaging Library (documentation)
sudo apk add nng-docnng 1.9.0-5.fc44
Light-weight brokerless messaging
https://nanomsg.github.io/nng/
sudo dnf install nngnng-devel 1.9.0-5.fc44
Development files for the nng socket library
https://nanomsg.github.io/nng/
sudo dnf install nng-develnng-utils 1.9.0-5.fc44
Command line interface for communicating with nng
https://nanomsg.github.io/nng/
sudo dnf install nng-utilsnng 1.11-2
A lightweight, broker-less messaging library
sudo pacman -S nnglibnng1 1.11-1.2
Shared library for nng
https://nanomsg.github.io/nng/
sudo zypper install libnng1source 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.