Automic VaultAutomic Vault

brew

Install osm2pgsql with Homebrew, apt, dnf, MacPorts, Nix, pacman

OpenStreetMap data to PostgreSQL converter. Version 2.3.1 via Homebrew; verified 2026-07-05.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install osm2pgsql

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install osm2pgsql

MacPorts ports tree · gis/osm2pgsql/Portfile · source: api.github.com

Linux

Debian aptverified · 92%
sudo apt install osm2pgsql

Debian stable package indexes · osm2pgsql · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install osm2pgsql

Fedora Rawhide package metadata · osm2pgsql · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#osm2pgsql

nixpkgs package indexes · pkgs/by-name/os/osm2pgsql/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S osm2pgsql

Arch Linux sync databases · osm2pgsql · source: geo.mirror.pkgbuild.com

overview

Package summary

OpenStreetMap data to PostgreSQL converter

Commands and aliases

  • osm2pgsql
  • osm2pgsql-replication

history

Project history and usage

osm2pgsql is one of the central OpenStreetMap data-ingestion tools. It imports OSM data into PostgreSQL/PostGIS, where renderers, geocoders, analysis jobs, and custom SQL pipelines can work with planet-scale map data.

Project history

The osm2pgsql project began in 2006, started by Jon Burgess and written in C, making it nearly as old as OpenStreetMap itself. In 2007, after OSM moved to API 0.5 and added relations, osm2pgsql gained multipolygon relation support and multiple projection support.

In 2008, osm2pgsql added support for OSM change files. From 2009, the main OpenStreetMap map was regenerated from minutely changes using a toolchain that imported data with osm2pgsql into PostgreSQL/PostGIS and rendered tiles with Mapnik.

The project kept following OSM's growth. In 2011, it switched to 64-bit IDs as the OSM node count passed one billion, and Kai Krueger took over maintainership from Jon Burgess. In 2012, the flat-file persistent node cache for slim mode reduced disk usage and improved import/update performance.

A long modernization arc followed: parsing moved to libosmium in 2015, geometry generation moved to libosmium in 2017, LuaJIT support arrived in 2018, version 1.0 in 2019 removed old-style multipolygon processing, and the flex output introduced in 2020 made custom output-table design a first-class workflow.

The 2022 experimental `osm2pgsql-gen` command brought generalization into the project. In 2023, a JSONB-based middle database format made it possible to store all OSM data including tags, attributes, and relation-member information. In 2024, Nominatim switched to flex output, the old gazetteer output was removed, and osm2pgsql 2.0 shipped.

Adoption history

osm2pgsql became deeply embedded because it solved the hard practical problem of keeping PostgreSQL/PostGIS databases synchronized with OSM data at rendering scale. The project history explicitly ties it to the OpenStreetMap tile toolchain and to Nominatim, the geocoder powering search on openstreetmap.org and many other map sites.

The GitHub repository passed 1,000 stars in 2021 according to the project's own history page. The Homebrew formula and package-manager metadata show distribution through Homebrew, Debian, Fedora, MacPorts, Nix, Arch, Ubuntu, and openSUSE-family packaging.

How it is used

The manual describes osm2pgsql as a specialized ETL tool for OSM data. Users usually feed it regional extracts or planet files, tune memory and disk behavior, choose pgsql or flex output, and then connect downstream software for rendering, serving, geocoding, or analysis.

The manual also warns that whole-planet imports can run for hours or days and recommends trial runs on small extracts. That operational reality is part of osm2pgsql's identity: it is not just a converter, but a tool whose schema, cache, update, and style choices determine the shape and cost of an OSM database.

Why package nerds care

osm2pgsql is package-nerd gold because it sits at the junction of C++, libosmium, Lua/LuaJIT, PostgreSQL, PostGIS, and large public datasets. Small version changes can affect import speed, schema output, multipolygon behavior, replication workflows, and downstream projects such as Nominatim or map renderers.

Its history also mirrors the OpenStreetMap ecosystem's scaling story: from early XML imports, through minutely updates and 64-bit IDs, into flexible Lua-defined outputs and JSONB-backed middle storage.

Timeline

  • 2006: Jon Burgess starts osm2pgsql in C.
  • 2007: relation, multipolygon, and projection support expand after OSM API 0.5.
  • 2008-2009: change-file support enables minutely-update rendering workflows.
  • 2009: Nominatim begins using osm2pgsql with special gazetteer output.
  • 2011: 64-bit IDs land, and Kai Krueger becomes maintainer.
  • 2012: the flat-file persistent node cache improves slim-mode import and update performance.
  • 2015-2017: libosmium takes over parsing and geometry generation.
  • 2019-2020: version 1.0 and flex output modernize the processing pipeline.
  • 2022-2024: generalization, JSONB middle storage, Nominatim's flex-output migration, and osm2pgsql 2.0 reshape the project.

Related projects

  • PostgreSQL and PostGIS are the target database stack. Mapnik is historically tied to the OSM tile-rendering toolchain. Nominatim uses osm2pgsql-derived import paths for geocoding data. libosmium underpins OSM parsing and geometry handling in modern osm2pgsql.

security posture

Risk level: yellow

broad file, network, media, or database tool signal. generalized runtime or code generation signal.

Risk classifier

yellow risk · medium confidence · runtime

Why

  • broad file, network, media, or database tool signal
  • generalized runtime or code generation signal

Signals

  • text:repl
  • text:sql

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 3 runtime dependencies.
  • Build metadata lists 8 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.

executables

Installed executables

CommandKindExposureNote
osm2pgsqlcliglobal executable
osm2pgsql-replicationcliglobal 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 version2.3.1
manager updated2026-07-05
local dataok
upstreamcurrent
latest detected2.3.1

https://github.com/osm2pgsql-dev/osm2pgsql

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:osm2pgsql
Version2.3.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/osm2pgsql
Homepagehttps://osm2pgsql.org
Repositoryhttps://github.com/osm2pgsql-dev/osm2pgsql
Upstream docshttps://osm2pgsql.org/doc
LicenseGPL-2.0-or-later
Source archivehttps://github.com/osm2pgsql-dev/osm2pgsql/archive/refs/tags/2.3.1.tar.gz
Last updated2026-07-05T16:19:51Z
Pulseupdated
Dependencieslibpq, luajit, proj
Build dependenciesboost, cli11, cmake, fmt, libosmium, lua, nlohmann-json, protozero
Uses from macOSbzip2, expat
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameosm2pgsql
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

osm2pgsql 2.1.1+ds-1

OpenStreetMap data to PostgreSQL converter

https://osm2pgsql.org/

sudo apt install osm2pgsql
  • Section: utils
  • Architecture: amd64
  • 16 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Osm2pgsql
Debian stable package indexes · deb.debian.org · Debian stable package indexes: osm2pgsql from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

osm2pgsql

nix profile install nixpkgs#osm2pgsql
  • normalized package name match
  • Matched by: Osm2pgsql
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/os/osm2pgsql/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

osm2pgsql 1.11.0+ds-1

OpenStreetMap data to PostgreSQL converter

https://osm2pgsql.org/

sudo apt install osm2pgsql
  • Section: universe/utils
  • Architecture: amd64
  • 13 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Osm2pgsql
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: osm2pgsql from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
dnf95%

osm2pgsql 2.2.0-4.fc45

Import map data from OpenStreetMap to a PostgreSQL database

https://osm2pgsql.org/

sudo dnf install osm2pgsql
  • License: GPL-2.0-or-later
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: osm2pgsql
  • 12 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Osm2pgsql
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: osm2pgsql from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

osm2pgsql 2.2.0-2

tool for loading OpenStreetMap data into a PostgreSQL / PostGIS database

https://osm2pgsql.org/

sudo pacman -S osm2pgsql
  • License: GPL-2.0-only
  • Architecture: x86_64
  • 8 dependencies
  • 2 optional deps
  • normalized package name match
  • Matched by: Osm2pgsql
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: osm2pgsql from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
MacPorts95%

osm2pgsql

sudo port install osm2pgsql
  • normalized package name match
  • Matched by: Osm2pgsql
MacPorts ports tree · api.github.com · MacPorts ports tree: gis/osm2pgsql/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

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 package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment