diff --git a/config-os-and-apps.sh b/config-os-and-apps.sh new file mode 100644 index 0000000..3a29992 --- /dev/null +++ b/config-os-and-apps.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +# 一键启动Project +# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +# 默认分支 +BRANCH="dev" + +# 使用getopts处理参数 +while getopts ":hb:" opt; do + case $opt in + b) BRANCH="$OPTARG" ;; + h) + echo "使用方法: $0 [-d] [-h]" + echo " -d 开发模式" + echo " -h 显示帮助" + exit 0 + ;; + \?) + echo "无效选项: -$OPTARG" >&2 + exit 1 + ;; + esac +done + +# = clone 到 tmp/.config 并加载profile入口 +test -f "$HOME/.config/.bin/.Runtime/local.env.ini" && { + echo "local.env.ini already exists, end the install. please remove it first if need re-install." + exit 1 +} +# = 移动原有配置 +[ -d "/tmp/.config" ] && rm -rf /tmp/.config # 如果存在, 删除 /tmp/.config +[ -d "$HOME/.config" ] && mv "$HOME/.config" /tmp/.config # 移动原有 $HOME/.config 配置到 /tmp/.config + +git clone --depth 1 --branch "$BRANCH" --single-branch https://gitea.yever.top/Hawkin/.config.git "$HOME"/.config +test $? -ne 0 && { + echo "git clone failed, please check your network." + exit 1 +} + +echo "git clone success, init project by script itself..." + +# = 通过目标仓库的初始化脚本进行初始化 +bash "$HOME"/.config/.bin/bin/Init.sh