24 lines
713 B
Bash
24 lines
713 B
Bash
#!/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"}
|
|
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"
|