# Install nanomsg with Homebrew, apk, apt, dnf, Nix, pacman, zypper

Socket library in C. Version 1.2.2 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:nanomsg
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install nanomsg
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add nanomsg
```

  Evidence: Alpine Linux edge package indexes: nanomsg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install libnanomsg-dev
```

  Evidence: Debian stable package indexes: libnanomsg-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install nanomsg
```

  Evidence: Fedora Rawhide package metadata: nanomsg from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#nanomsg
```

  Evidence: nixpkgs package indexes: pkgs/by-name/na/nanomsg/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S nanomsg
```

  Evidence: Arch Linux sync databases: nanomsg from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install libnanomsg6
```

  Evidence: openSUSE Tumbleweed package metadata: libnanomsg6 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:nanomsg
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/nanomsg>
- **Version:** 1.2.2
- **Source summary:** Socket library in C
- **Homepage:** <https://nanomsg.org/>
- **Repository:** <https://github.com/nanomsg/nanomsg>
- **Upstream docs:** <https://github.com/nanomsg/nanomsg#readme>
- **License:** MIT
- **Source archive:** <https://github.com/nanomsg/nanomsg/archive/refs/tags/1.2.2.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- nanocat (cli)
- nanocat (alias)

## Build dependencies

- cmake

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.2.2
- Local data: ok
- Upstream repository: https://github.com/nanomsg/nanomsg
- Upstream latest detected: 1.2.2 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

nanomsg is a C socket library for brokerless messaging patterns, described upstream as a way to make networking fast, scalable, and easy to use through common communication patterns such as pair, bus, request/reply, publish/subscribe, pipeline, and survey.

### Project history

The project grew out of Martin Sustrik's post-ZeroMQ design work. nanomsg's own documentation preserves the historical motivation as a comparison with ZeroMQ by the original author of both projects: MIT licensing, a POSIX-like C API, implementation in C rather than C++, formal protocol/transport APIs, and different threading behavior were central design goals.

The GitHub repository was created on 2012-10-10. Later, Garrett D'Amore's NNG became the successor path: the nanomsg homepage says nanomsg has largely been superseded by NNG, and the documentation calls the C reference implementation sustaining-mode while describing NNG as the modern reimplementation.

### Adoption history

nanomsg accumulated a broad binding ecosystem despite later being superseded: the upstream documentation lists bindings or implementations for C, C++, Clojure, D, Erlang, Fortran, Go, Haskell, Java, JavaScript, Lua, .NET, OCaml, Perl, PHP, Python, R, Ruby, Rust, Scheme, Smalltalk, and more.

GitHub API data fetched on 2026-07-01 showed 6,285 stars and 1,034 forks, reflecting historical mindshare. Homebrew's formula JSON generated on 2026-07-01 reported only 382 installs over 365 days and 181 installs-on-request over 365 days, which is consistent with a legacy library that remains packaged but is no longer the main recommendation.

### How it is used

Users link against the C library and use its BSD-socket-like API to build message-oriented communication without a broker. Typical choices are REQREP for service clusters, PUBSUB for fanout, PIPELINE for fan-in/fan-out work distribution, BUS for many-to-many messaging, and IPC/TCP/WebSocket transports depending on deployment.

Package nerds often keep `nanomsg` around for older applications or language bindings that still target libnanomsg. New work should usually evaluate `nng` first because NNG keeps wire compatibility while adding the maintained API and implementation path.

### Why package nerds care

nanomsg matters historically as a clean-room C rethinking of ZeroMQ-style scalability protocols and as the ancestor of NNG. Its Homebrew package is less about trend adoption and more about preserving buildability for software that already chose the nanomsg API or wire protocols.

### Timeline

- 2012-10-10: nanomsg/nanomsg repository created on GitHub.
- 2018-04-12: nanomsg homepage update already pointed users toward NNG when possible.
- 2025-10-05: nanomsg 1.2.2 bug-fix release published.
- 2026-07-01: Homebrew formula JSON listed stable version 1.2.2 and 382 installs over 365 days.

### Related projects

- ZeroMQ
- NNG
- mangos

### Sources

- <https://api.github.com/repos/nanomsg/nanomsg>
- <https://api.github.com/repos/nanomsg/nanomsg/releases?per_page=5>
- <https://formulae.brew.sh/api/formula/nanomsg.json>
- <https://formulae.brew.sh/formula/nanomsg>
- <https://github.com/nanomsg/nanomsg>
- <https://nanomsg.org/>
- <https://nanomsg.org/documentation-zeromq.html>
- <https://nanomsg.org/documentation.html>
- <https://nng.nanomsg.org/>
- <https://nng.nanomsg.org/RATIONALE.html>


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** nanomsg
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - libnanomsg-dev - 1.1.5+dfsg-1.1+b1: normalized package name match | Debian stable package indexes: libnanomsg-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | nanomsg development files | http://nanomsg.org/
- Debian apt - libnanomsg5 - 1.1.5+dfsg-1.1+b1: normalized package name match | Debian stable package indexes: libnanomsg5 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | high-performance implementation of scalability libraries | http://nanomsg.org/
- Debian apt - nanomsg-utils - 1.1.5+dfsg-1.1+b1: normalized package name match | Debian stable package indexes: nanomsg-utils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | nanomsg utilities | http://nanomsg.org/
- Nix - nanomsg: normalized package name match | nixpkgs package indexes: pkgs/by-name/na/nanomsg/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - libnanomsg-dev - 1.1.5+dfsg-1.1: normalized package name match | Ubuntu 24.04 LTS package indexes: libnanomsg-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | nanomsg development files | http://nanomsg.org/
- Ubuntu apt - libnanomsg5 - 1.1.5+dfsg-1.1: normalized package name match | Ubuntu 24.04 LTS package indexes: libnanomsg5 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | high-performance implementation of scalability libraries | http://nanomsg.org/
- Ubuntu apt - nanomsg-utils - 1.1.5+dfsg-1.1: normalized package name match | Ubuntu 24.04 LTS package indexes: nanomsg-utils from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | nanomsg utilities | http://nanomsg.org/
- apk - nanomsg - 1.2.2-r0: normalized package name match | Alpine Linux edge package indexes: nanomsg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Socket library that provides several common communication patterns | https://nanomsg.org
- apk - nanomsg-dev - 1.2.2-r0: normalized package name match | Alpine Linux edge package indexes: nanomsg-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Socket library that provides several common communication patterns (development files) | https://nanomsg.org
- apk - nanomsg-doc - 1.2.2-r0: normalized package name match | Alpine Linux edge package indexes: nanomsg-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Socket library that provides several common communication patterns (documentation) | https://nanomsg.org
- dnf - nanomsg - 1.2.2-2.fc44: normalized package name match | Fedora Rawhide package metadata: nanomsg from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Socket library that provides several common communication patterns | https://nanomsg.org/
- dnf - nanomsg-devel - 1.2.2-2.fc44: normalized package name match | Fedora Rawhide package metadata: nanomsg-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for nanomsg | https://nanomsg.org/
- dnf - nanomsg-doc - 1.2.2-2.fc44: normalized package name match | Fedora Rawhide package metadata: nanomsg-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Documentation for nanomsg | https://nanomsg.org/
- pacman - nanomsg - 1.2.2-1: normalized package name match | Arch Linux sync databases: nanomsg from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Simple high-performance implementation of several "scalability protocols" | https://nanomsg.org/
- zypper - libnanomsg6 - 1.2.2-1.3: normalized package name match | openSUSE Tumbleweed package metadata: libnanomsg6 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Shared library for nanomsg | https://nanomsg.org/
- zypper - nanomsg-devel - 1.2.2-1.3: normalized package name match | openSUSE Tumbleweed package metadata: nanomsg-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Header files for nanomsg | https://nanomsg.org/


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [czmq](https://www.automicvault.com/pkg/brew/czmq/) - Shares av.db curated category or tags: c, cli, messaging, networking.
- [libpaho-mqtt](https://www.automicvault.com/pkg/brew/libpaho-mqtt/) - Shares av.db curated category or tags: c, cli, messaging, networking.
- [nats-server](https://www.automicvault.com/pkg/brew/nats-server/) - Shares av.db curated category or tags: cli, messaging, networking.
- [activemq](https://www.automicvault.com/pkg/brew/activemq/) - Shares av.db curated category or tags: cli, messaging, networking.
- [ejabberd](https://www.automicvault.com/pkg/brew/ejabberd/) - Shares av.db curated category or tags: cli, messaging, networking.
- [emqx](https://www.automicvault.com/pkg/brew/emqx/) - Shares av.db curated category or tags: cli, messaging, networking.
- [memcacheq](https://www.automicvault.com/pkg/brew/memcacheq/) - Shares av.db curated category or tags: c, cli, messaging, networking.
- [nats-streaming-server](https://www.automicvault.com/pkg/brew/nats-streaming-server/) - Shares av.db curated category or tags: cli, messaging, networking.

## Combined YAML source

View the package source record on GitHub. [combined/nanomsg.yml](https://github.com/automic-vault/db/blob/main/combined/nanomsg.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
