add install git

This commit is contained in:
zj
2026-02-14 14:39:44 +08:00
parent d2f919c831
commit 2ae2837ddc
8 changed files with 560 additions and 23 deletions

View File

@@ -19,6 +19,7 @@
APP_NAME="Linux GRUB 引导修复工具"
APP_NAME_EN="BootRepairTool"
EXEC_FILE="LinuxGrubRepair"
EXEC_BIN_FILE="LinuxGrubRepair.bin"
ICON_FILE="boot-repair.png"
INSTALL_DIR="/opt/boot-repair-tool"
DESKTOP_FILE_NAME="boot-repair.desktop"
@@ -118,20 +119,25 @@ mkdir -p "${INSTALL_DIR}" || { echo -e "${RED}创建目录失败!${NC}"; exit
echo -e "${GREEN} 目录创建完成。${NC}"
echo -e "${GREEN}2. 安装可执行文件...${NC}"
# 首先尝试使用本地文件
if use_local_file "./dist/${EXEC_FILE}" "${INSTALL_DIR}/${EXEC_FILE}" "可执行文件"; then
# 首先尝试使用本地文件(包括启动器和 .bin 文件)
if [ -f "./dist/${EXEC_FILE}" ] && [ -f "./dist/${EXEC_BIN_FILE}" ]; then
use_local_file "./dist/${EXEC_FILE}" "${INSTALL_DIR}/${EXEC_FILE}" "启动器脚本"
use_local_file "./dist/${EXEC_BIN_FILE}" "${INSTALL_DIR}/${EXEC_BIN_FILE}" "程序文件"
echo -e "${GREEN} 本地可执行文件已复制。${NC}"
# 然后尝试从 URL 下载
# 然后尝试从 URL 下载(单文件模式,用于在线安装)
elif [ "${BASE_DOWNLOAD_URL}" != "https://your-domain.com/data/sh/boot-repair" ]; then
download_file "${EXEC_DOWNLOAD_URL}" "${INSTALL_DIR}/${EXEC_FILE}" "${EXEC_FILE}"
else
echo -e "${RED}错误:未找到可执行文件!${NC}"
echo -e "${YELLOW}请先将可执行文件放入 ./dist/${EXEC_FILE} 目录${NC}"
echo -e "${YELLOW}或修改 BASE_DOWNLOAD_URL 配置。${NC}"
echo -e "${YELLOW}请先将可执行文件放入 ./dist/ 目录${NC}"
echo -e "${YELLOW} - ${EXEC_FILE} (启动器脚本)${NC}"
echo -e "${YELLOW} - ${EXEC_BIN_FILE} (程序文件)${NC}"
echo -e "${YELLOW}或修改 BASE_DOWNLOAD_URL 配置用于在线安装。${NC}"
exit 1
fi
chmod +x "${INSTALL_DIR}/${EXEC_FILE}"
[ -f "${INSTALL_DIR}/${EXEC_BIN_FILE}" ] && chmod +x "${INSTALL_DIR}/${EXEC_BIN_FILE}"
echo -e "${GREEN} 可执行文件权限设置完成。${NC}"
echo -e "${GREEN}3. 安装图标...${NC}"
@@ -185,7 +191,7 @@ cat << EOF > "$POLICY_FILE"
<allow_inactive>no</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">${INSTALL_DIR}/${EXEC_FILE}</annotate>
<annotate key="org.freedesktop.policykit.exec.path">/bin/boot-repair</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
</action>
</policyconfig>