Skip to content

osm-pmtiles

Vector-tile maps of your OpenStreetMap regions, for the offline browser map

What it does

Builds one PMTiles file of vector tiles per region osm-regions downloaded, with the archive's tilemaker and tilemaker's own OpenMapTiles profile, as the operator in a staging directory. The files land under /usr/local/share/hammunition/data/osm-pmtiles/, and hammunition reference serve shows them as a map in a browser at http://127.0.0.1:8480/map/, drawn with the OSM Bright style, with your position from hammunition maps gps-tether. Since D-075 the profile adds one infra layer at street zoom (power lines and plants, masts, pipelines, water works, hydrants: about 2.5 % more on Delaware), drawn with power coloured by voltage after Open Infrastructure Map; a region built before it is rebuilt once at the next install.

Why you would want it

A map anyone can open in a browser, with no program to learn, and no network: streets, labels, water, parks and buildings to zoom 14 of every region you chose, drawn on this machine. It is the offline stand-in for an online web map, and a tile source the rest of the station can read later. Navit and QMapShack stay the navigators; this is the map to glance at.

Before it will work

osm-regions with at least one region set in station config, vector-map-kit, and the archive's tilemaker 3.0 or newer and gdal-bin; all install first. With no regions set this unit is deferred by name. Ubuntu 24.04 and the releases built on it carry tilemaker 2.4, which cannot write PMTiles; the plan defers this unit there by name.

How it installs

  • converted from osm-regions by tilemaker-pmtiles (ODbL-1.0, https://www.openstreetmap.org/copyright)

Known problems

Measured by the spike on one region, Delaware (22 MB download), on 2026-09-29, with osmdata's simplified water polygons as the ocean: 10 to 37 s, 0.49 GB of memory with tilemaker's --store (which the engine passes) against 2.8 GB without it, and a PMTiles file 0.91 times the download, zooms 0 to 14. The engine's own run, with Natural Earth's ocean, has not been run with a real tilemaker yet (none was installed on the development host); the scratch that --store writes was not measured, so the plan allows three times the download. Coasts at street zoom follow Natural Earth's 1:10m line. tilemaker writes one output per run, so no .mbtiles is made: AIS-catcher reads .mbtiles itself and is not served by this. The file carries the Open Database License obligations of the data, and the page draws the credit the OpenMapTiles schema's CC-BY licence requires.

Keeping it current

  • probe: none
  • strategy: reinstall
  • Follows osm-regions: a region whose downloaded file changed is built again on the next install, and one that did not is skipped.

Where to get help with the software itself

tilemaker's GitHub issues (https://github.com/systemed/tilemaker/issues) for the conversion; problems in the map data are fixed in OpenStreetMap (https://www.openstreetmap.org/fixthemap).

Source: catalog/packages/osm-pmtiles.yaml