#!/bin/bash
# ============================================================================
#  deploy-polish.sh —— 大屏观感升级：宿主机 Glances 环形仪表 + 渐变背景 + 时区
#   1) 起 glances-web.service（宿主机指标 API，127.0.0.1:61208）
#   2) 写入新的 widgets.yaml / custom.css
#   3) 重启 Homepage 容器，重启 kiosk
# ============================================================================
set -u
PW='yueling408'
SUDO() { printf '%s\n' "$PW" | sudo -S -p '' "$@"; }
CFG="$HOME/homepage/config"

echo "== 1/3 Glances web 服务 =="
SUDO install -m 0644 /tmp/glances-web.service /etc/systemd/system/glances-web.service
SUDO systemctl daemon-reload
SUDO systemctl enable --now glances-web >/dev/null 2>&1
sleep 5
echo -n "  glances API: "; curl -s --noproxy '*' -o /dev/null -w "%{http_code}\n" http://127.0.0.1:61208/api/3/cpu
echo -n "  CPU 温度项: "; curl -s --noproxy '*' http://127.0.0.1:61208/api/3/sensors 2>/dev/null | head -c 120; echo

echo "== 2/3 写入大屏配置 =="
install -m 0644 /tmp/homepage-widgets.yaml "$CFG/widgets.yaml"
install -m 0644 /tmp/homepage-custom.css   "$CFG/custom.css"
install -m 0644 /tmp/homepage-settings.yaml "$CFG/settings.yaml"
ls -1 "$CFG"

echo "== 3/3 重启容器与 kiosk =="
SUDO docker restart homepage >/dev/null 2>&1
for i in $(seq 1 20); do
    code=$(curl -s --noproxy '*' -o /dev/null -w '%{http_code}' http://127.0.0.1:3000 2>/dev/null)
    [ "$code" = "200" ] && break
    sleep 3
done
echo "  Homepage -> ${code:-无响应}"

pkill -x cage 2>/dev/null
rm -f /tmp/kiosk-tty1.png
touch /tmp/kiosk-shot-once
SUDO systemctl restart getty@tty1
sleep 90
echo "  截图: $(ls -l /tmp/kiosk-tty1.png 2>/dev/null | awk '{print $5" 字节"}')"
