22 lines
965 B
Bash
Executable File
22 lines
965 B
Bash
Executable File
#!/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.'
|