#!/usr/bin/env sh set -eu ROOT_DIR="$(CDPATH= cd -- "$(dirname "$0")/../.." && pwd)" CALENDAR_DIR="$ROOT_DIR/calendar" DIST_DIR="$CALENDAR_DIR/dist" PORT=${PORT:-4173} URL=${1:-"http://127.0.0.1:$PORT/?mode=background&theme=default&orientation=portrait"} OUT_PNG=${2:-"$DIST_DIR/kindlebg.png"} OUT_REGION=${3:-"$DIST_DIR/clock-region.json"} cd "$CALENDAR_DIR" npm run build >/dev/null python3 -m http.server "$PORT" -d "$DIST_DIR" >/tmp/kindle-calendar-http.log 2>&1 & SERVER_PID=$! trap 'kill "$SERVER_PID" 2>/dev/null || true' EXIT INT TERM sleep 1 /usr/bin/swift "$CALENDAR_DIR/scripts/export-kindle-background.swift" "$URL" "$OUT_PNG" "$OUT_REGION" node "$CALENDAR_DIR/scripts/generate-dashboard-manifest.mjs" >/dev/null cat "$OUT_REGION"