mirror of
https://github.com/lrnselfreliance/wrolpi.git
synced 2026-10-26 10:51:36 -04:00
- Add MapLibre GL JS viewer with light/dark themes, terrain layer, and embedded static map page for coordinate sharing - Add map pin support with persistent map_pins.yaml config - Add map region subscriptions and downloader with progress tracking, sourcing pre-extracted PMTiles from a cold CDN - Add map export to PNG and GPS coordinate copy via context menu - Add MapViewer React component alongside reworked Map page - Add map catalog and region-building script (build_map_regions.py) - Remove OSM import/render scripts, leaflet files, Apache configs, renderd service, and osm-map-dumper Docker container - Update Caddyfile to serve PMTiles and map static assets - Update build/install/repair scripts for Protomaps dependencies - Drop map_file table, add/drop map_subscription table (alembic) - Adding button to skip primary drive mounting during onboarding.
63 lines
1.9 KiB
Bash
Executable file
63 lines
1.9 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
echo "Raspberry Pi OS install start: $(date '+%Y-%m-%d %H:%M:%S')"
|
|
|
|
set -x
|
|
set -e
|
|
|
|
# Update if we haven't updated in the last day.
|
|
[ -z "$(find -H /var/lib/apt/lists -maxdepth 0 -mtime -1)" ] && apt update
|
|
# Install dependencies.
|
|
apt-get install -y $(cat /opt/wrolpi/pi-gen/stage2/04-wrolpi/01-packages)
|
|
|
|
# App dependencies were installed.
|
|
node -v
|
|
npm -v
|
|
|
|
# Install serve, and archiving tools.
|
|
single-file --version || sudo npm i -g serve@12.0.1 single-file-cli@2.0.73 readability-extractor@0.0.6
|
|
|
|
# Build React app in background job.
|
|
cd /opt/wrolpi/app || exit 5
|
|
npm install || npm install || npm install || npm install # try install multiple times :(
|
|
|
|
# Install python requirements in background job.
|
|
python3 -m venv /opt/wrolpi/venv
|
|
/opt/wrolpi/venv/bin/pip3 install --upgrade -r /opt/wrolpi/requirements.txt
|
|
|
|
# Create the WROLPi user
|
|
grep wrolpi: /etc/passwd || useradd -md /home/wrolpi wrolpi -s "$(command -v bash)"
|
|
|
|
# Install Caddy from official apt repo if not already installed.
|
|
if ! command -v caddy &>/dev/null; then
|
|
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
|
|
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
|
|
apt-get update
|
|
apt-get install -y caddy
|
|
fi
|
|
|
|
# Install WROLPi Help.
|
|
/opt/wrolpi/scripts/install_help_service.sh
|
|
|
|
# Repair will install configs and restart services.
|
|
/opt/wrolpi/repair.sh
|
|
|
|
set +x
|
|
|
|
echo "
|
|
|
|
WROLPi has successfully been installed!
|
|
|
|
Mount your external hard drive to /media/wrolpi if you have one. Change the
|
|
file permissions if necessary:
|
|
# sudo chown -R wrolpi:wrolpi /media/wrolpi
|
|
|
|
Start the WROLPi services using:
|
|
# sudo systemctl start wrolpi.target
|
|
|
|
then navigate to: https://$(hostname).local
|
|
|
|
Or, join to the Wifi hotspot:
|
|
SSID: WROLPi
|
|
Password: wrolpi hotspot
|
|
|
|
"
|