# Install osrm-backend with Homebrew, Nix

High performance routing engine. Version 26.7.2 via Homebrew; verified 2026-07-04.

## Install

```sh
sudo av install brew:osrm-backend
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install osrm-backend
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#osrm-backend
```

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

## Package facts

- **Package key:** brew:osrm-backend
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/osrm-backend>
- **Version:** 26.7.2
- **Source summary:** High performance routing engine
- **Homepage:** <https://project-osrm.org/>
- **Repository:** <https://github.com/Project-OSRM/osrm-backend>
- **Upstream docs:** <https://github.com/Project-OSRM/osrm-backend#readme>
- **License:** BSD-2-Clause
- **Source archive:** <https://github.com/Project-OSRM/osrm-backend/archive/refs/tags/v26.7.2.tar.gz>
- **Last updated:** 2026-07-04T09:47:24Z
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- osrm-components (cli)
- osrm-contract (cli)
- osrm-customize (cli)
- osrm-datastore (cli)
- osrm-extract (cli)
- osrm-io-benchmark (cli)
- osrm-partition (cli)
- osrm-routed (cli)
- osrm-components (alias)
- osrm-contract (alias)
- osrm-customize (alias)
- osrm-datastore (alias)
- osrm-extract (alias)
- osrm-io-benchmark (alias)
- osrm-partition (alias)
- osrm-routed (alias)

## Dependencies

- boost
- libarchive
- lua
- tbb

## Build dependencies

- cmake
- flatbuffers
- fmt
- libosmium
- pkgconf
- protozero
- rapidjson
- sol2
- vtzero

## Uses from macOS

- bzip2
- expat

## 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: 26.7.2
- Package-manager updated: 2026-07-04
- Local data: ok
- Upstream repository: https://github.com/Project-OSRM/osrm-backend
- Upstream latest detected: v26.7.2 (current)
## Project history and usage

OSRM Backend is the C++ routing engine behind the Open Source Routing Machine project. It consumes OpenStreetMap road data, preprocesses it into routing graph files, and serves route, nearest, table, match, trip, and tile services over an HTTP API, a C++ interface, and Node.js bindings.

### Project history

OSRM began as Dennis Luxen's attempt to bring high-performance academic route-planning algorithms to OpenStreetMap data. Wired reported in November 2013 that Luxen started OSRM around 2010 while working as a PhD candidate at Karlsruhe Institute of Technology, after a discussion with OpenStreetMap contributor Frederik Ramm led him to apply his routing research to OSM.

The OpenStreetMap wiki records the initial public release on July 9, 2010, and an ACM GIS 2011 presentation by Dennis Luxen and Christian Vetter. The same history notes later project phases involving Mapbox's Directions team and a period of slower maintenance after Mapbox shifted routing investment toward Valhalla.

### Adoption history

OSRM's adoption came from its speed and self-hostability. The official site advertises continental-sized road networks served within milliseconds, while the README documents a Docker-first quick start for turning an OSM extract into a running HTTP routing server.

The OpenStreetMap wiki lists services and applications powered by OSRM, including FOSSGIS routing, Cycle.travel, Maps.Me, Mapbox Directions components, Geofabrik-hosted routing, and commercial hosted OSRM APIs. That makes osrm-backend one of the most visible OSM packages outside the data-processing niche because it sits directly behind user-facing routing applications.

### How it is used

Operators typically download an OSM PBF extract, run `osrm-extract` with a Lua profile such as car, bicycle, or foot, preprocess with the MLD pipeline using `osrm-partition` and `osrm-customize` or the CH pipeline using `osrm-contract`, then run `osrm-routed` to expose the API.

Application developers call OSRM for fastest-route geometry, nearest-road snapping, many-to-many duration or distance tables, noisy GPS trace matching, heuristic trip ordering, and vector tiles containing routing metadata. Profile customization is a key operational feature because it lets a deployment encode vehicle, bicycle, pedestrian, or custom routing rules.

### Why package nerds care

osrm-backend is package-nerd catnip because it is both a research-to-production story and a packaging stress test: modern C++, heavy preprocessing, Lua profiles, Docker images, Node bindings, and a public HTTP API wrapped around graph algorithms such as contraction hierarchies and multi-level Dijkstra.

### Timeline

- July 9, 2010: Dennis Luxen announced the initial public release on the OSM-dev mailing list. November 2011: Luxen and Christian Vetter presented real-time routing with OpenStreetMap data at ACM GIS. November 2013: Wired profiled OSRM as a self-hostable alternative routing stack. 2015 onward: project leadership and maintenance became more community and Mapbox influenced, with later maintenance transitions documented by the OSM wiki.

### Related projects

- The Project-OSRM organization also maintains osrm-frontend for the demo map, osrm-text-instructions for turn instructions, and Docker images for backend deployment. Valhalla is the other major open routing engine named in OSRM's maintenance history.

### Sources

- <https://formulae.brew.sh/formula/osrm-backend>
- <https://github.com/Project-OSRM/osrm-backend>
- <https://project-osrm.org/>
- <https://project-osrm.org/docs/v5.24.0/api/>
- <https://wiki.openstreetmap.org/wiki/Open_Source_Routing_Machine>
- <https://www.wired.com/2013/11/osrm/>


## Security Notes

No matching local secret-handling manifest was found for osrm-backend. Nucleus package metadata is still published here so future coverage has a stable package URL.


## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** osrm-backend
- **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

- Nix - osrm-backend: normalized package name match | nixpkgs package indexes: pkgs/by-name/os/osrm-backend/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## 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.
- [Web development packages](https://www.automicvault.com/pkg/web-dev-tools/) - Matched web development metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [libarchive](https://www.automicvault.com/pkg/brew/libarchive/) - Runtime dependency declared by Homebrew.
- [lua](https://www.automicvault.com/pkg/brew/lua/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [flatbuffers](https://www.automicvault.com/pkg/brew/flatbuffers/) - Build dependency declared by Homebrew.
- [babeld](https://www.automicvault.com/pkg/brew/babeld/) - Shares av.db curated category or tags: cli, networking, routing.
- [iproute2](https://www.automicvault.com/pkg/brew/iproute2/) - Shares av.db curated category or tags: cli, networking, routing.
- [iproute2mac](https://www.automicvault.com/pkg/brew/iproute2mac/) - Shares av.db curated category or tags: cli, networking, routing.
- [irrtoolset](https://www.automicvault.com/pkg/brew/irrtoolset/) - Shares av.db curated category or tags: cli, networking, routing.
- [olsrd](https://www.automicvault.com/pkg/brew/olsrd/) - Shares av.db curated category or tags: cli, networking, routing.
- [zebra](https://www.automicvault.com/pkg/brew/zebra/) - Shares av.db curated category or tags: cli, networking, routing.
- [asroute](https://www.automicvault.com/pkg/brew/asroute/) - Shares av.db curated category or tags: cli, networking, routing.
- [bgpdump](https://www.automicvault.com/pkg/brew/bgpdump/) - Shares av.db curated category or tags: cli, networking, routing.

## Combined YAML source

View the package source record on GitHub. [combined/osrm-backend.yml](https://github.com/automic-vault/db/blob/main/combined/osrm-backend.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
