fix: v0.12.5 —— NSIS 的 /D 参数别被 Git Bash 当路径转换
安装包 / Linux aarch64 (push) Canceled after 0s
安装包 / Linux x86_64 (push) Canceled after 0s
安装包 / Windows x86_64 (push) Canceled after 0s
安装包 / macOS arm64 (Apple Silicon) (push) Canceled after 0s
安装包 / macOS x86_64 (Intel) (push) Canceled after 0s
安装包 / 发布到 Release (push) Canceled after 0s

Git Bash(MSYS)会把以 / 开头的参数当成 Unix 路径,
/DAPP_VERSION=0.12.5 被换成 C:/Program Files/Git/DAPP_VERSION=0.12.5,
makensis 以为那是脚本名就报 Can't open script。

调用 makensis 时设 MSYS2_ARG_CONV_EXCL='*',参数原样传给 NSIS。
This commit is contained in:
2026-10-23 14:55:02 +08:00
parent 86a9af73ae
commit cf3c109c36
+3 -1
View File
@@ -189,7 +189,9 @@ jobs:
icon=$(cygpath -w "$PWD/packaging/voiletmark.ico")
script=$(cygpath -w "$PWD/packaging/windows/installer.nsi")
"$makensis" \
# Git Bash(MSYS)会把 /D... 当成 Unix 路径,转换成
# C:/Program Files/Git/DAPP_VERSION=...;这里关掉参数转换
MSYS2_ARG_CONV_EXCL='*' "$makensis" \
"/DAPP_VERSION=$APP_VERSION" \
"/DDEPLOY_DIR=$deploy" \
"/DICON_FILE=$icon" \