#!/bin/bash # GiteaHubSync 安装后初始化:建数据目录、默认开启自动同步、落一份 SSH 密钥、清理旧面板 SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" APPDEST="$(cd "$SCRIPT_DIR/.." && pwd)" DATA_DIR="${TRIM_PKGVAR:-}" if [ -n "$DATA_DIR" ] && [ -d "$DATA_DIR" ]; then mkdir -p "${DATA_DIR}/repos" "${DATA_DIR}/logs" [ -f "${DATA_DIR}/state.json" ] || printf '{"enabled":true}\n' > "${DATA_DIR}/state.json" # 把内置 GitHub 密钥复制到数据目录,属主跟随数据目录(应用用户),保证守护进程可读 if [ -f "${APPDEST}/ssh/id_ed25519" ] && [ ! -f "${DATA_DIR}/id_ed25519" ]; then cp "${APPDEST}/ssh/id_ed25519" "${DATA_DIR}/id_ed25519" 2>/dev/null chmod 600 "${DATA_DIR}/id_ed25519" 2>/dev/null chown --reference="${DATA_DIR}" "${DATA_DIR}/id_ed25519" 2>/dev/null fi fi # 停掉占用 8899 端口的旧面板进程(早期原生版或本应用旧实例),避免端口冲突 pkill -f 'panel\.py$' 2>/dev/null exit 0