Files
20260512-skg-tk/scripts/install-huobao-upstream-watch.sh
2026-06-01 11:06:24 +08:00

30 lines
900 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
LABEL="com.skg.huobao-canvas.upstream-watch"
SOURCE_PLIST="$ROOT_DIR/scripts/launchd/$LABEL.plist"
INSTALL_DIR="$HOME/Library/LaunchAgents"
INSTALL_PLIST="$INSTALL_DIR/$LABEL.plist"
LAUNCHD_DOMAIN="gui/$(id -u)"
LOG_DIR="$ROOT_DIR/.logs/upstream-watch"
if [[ ! -f "$SOURCE_PLIST" ]]; then
echo "missing launchd plist: $SOURCE_PLIST" >&2
exit 1
fi
mkdir -p "$INSTALL_DIR" "$LOG_DIR"
cp "$SOURCE_PLIST" "$INSTALL_PLIST"
plutil -lint "$INSTALL_PLIST" >/dev/null
launchctl bootout "$LAUNCHD_DOMAIN/$LABEL" >/dev/null 2>&1 || true
launchctl bootstrap "$LAUNCHD_DOMAIN" "$INSTALL_PLIST"
launchctl kickstart -k "$LAUNCHD_DOMAIN/$LABEL"
echo "huobao-canvas upstream watch installed"
echo "label: $LABEL"
echo "schedule: daily 09:30 local time"
echo "plist: $INSTALL_PLIST"
echo "state/logs: $LOG_DIR"