Files

22 lines
965 B
Bash
Raw Permalink Normal View History

#!/usr/bin/env bash
# Build free local address data for Mississippi, including Jackson to the coast.
set -euo pipefail
for dependency in curl osmium go; do
if ! command -v "$dependency" >/dev/null 2>&1; then
echo "Missing $dependency. Install curl, Go, and osmium-tool (osmium on Arch)." >&2
exit 1
fi
done
repo_dir="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$repo_dir"
work_dir="$(mktemp -d)"
trap 'rm -rf -- "$work_dir"' EXIT
curl --fail --location --retry 3 --output "$work_dir/mississippi.osm.pbf" \
https://download.geofabrik.de/north-america/us/mississippi-latest.osm.pbf
# Referenced nodes are retained by default; required for building footprints.
osmium tags-filter "$work_dir/mississippi.osm.pbf" nw/addr:housenumber \
--output "$work_dir/addresses.osm"
go run ./server -import-osm "$work_dir/addresses.osm" \
-addresses "${1:-data/mississippi-addresses.json}"
echo 'Address data ready. Restart the server to load it.'