#!/bin/bash
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
START_SCRIPT_PATH="/usr/local/bin/scop"
cat > "$START_SCRIPT_PATH" <<EOF
#!/bin/bash
EXECUTABLE_DIR="$SCRIPT_DIR"
EXECUTABLE="\$EXECUTABLE_DIR/share-copilot"
VERSION_FILE="\$EXECUTABLE_DIR/version"
CONFIG_FILE="\$EXECUTABLE_DIR/config.json"
REMOTE_VERSION_URL="https://gitee.com/chuangxxt/share-copilot/raw/master/version"
# 检查是否需要更新
if [ "\$1" != "st" ]; then
  if [ -f "\$VERSION_FILE" ]; then
    LOCAL_VERSION=\$(cat "\$VERSION_FILE")
    REMOTE_VERSION=\$(curl -sS "\$REMOTE_VERSION_URL")

    if [ "\$LOCAL_VERSION" != "\$REMOTE_VERSION" ]; then
      echo "A new version (\$REMOTE_VERSION) is available. Do you want to update? (y/n)"
      read -r ANSWER

      if [ "\$ANSWER" == "y" ]; then
        echo "Updating to version \$REMOTE_VERSION..."
        # 在这里执行更新操作,如 git clone
		pkill -f "\$EXECUTABLE"
		cp \$CONFIG_FILE /tmp/config.json.backup
		rm -rf \$EXECUTABLE_DIR/*
        git clone https://gitee.com/chuangxxt/share-copilot.git "\$EXECUTABLE_DIR" 
		mv /tmp/config.json.backup \$CONFIG_FILE
        echo "Update complete."
      else
        echo "Skipping update."
      fi
    else
      echo "version: (\$LOCAL_VERSION)"
    fi
  else
    echo "Local version file not found. Checking for updates..."
    # 如果本地没有版本文件,尝试下载
    curl -sS "\$REMOTE_VERSION_URL" -o "\$VERSION_FILE"
  fi
fi
case "\$1" in
  r)
    echo "Running share-copilot..."
    "\$EXECUTABLE"
    ;;
  rb)
    echo "Running share-copilot in the background..."
    "\$EXECUTABLE" >/dev/null 2>&1 &
    ;;
  st)
    echo "Stopping share-copilot..."
    pkill -f "\$EXECUTABLE"
    ;;
  v)
    if pgrep -f "\$EXECUTABLE" >/dev/null; then
      echo "share-copilot is running"
    else
      echo "share-copilot is not running"
    fi
    ;;
  *)
    echo "Usage: \$0 {r|rb|st|v}"
    exit 1
    ;;
esac



exit 0
EOF
chmod +x "$START_SCRIPT_PATH"
echo "-----------------
install success!
-----------------
scop r  --运行
scop rb --后台运行
scop st --停止
scop v  --查看状态
-----------------"