Use resolved bindir in cmd installer PATH
ci / test (push) Canceled after 0s
ci / fuzz-smoke (push) Canceled after 0s
ci / macos-client (macos-aarch64, macos-14) (push) Canceled after 0s
ci / macos-client (macos-x86_64, macos-13) (push) Canceled after 0s
ci / windows-client (push) Canceled after 0s
ci / package-release (linux-x86_64, ubuntu-latest, , , ) (push) Canceled after 0s
ci / package-release (macos-aarch64, macos-14, , , ) (push) Canceled after 0s
ci / package-release (macos-x86_64, macos-13, , , ) (push) Canceled after 0s
ci / package-release (windows-aarch64, windows-latest, aarch64, windows, aarch64-pc-windows-msvc) (push) Canceled after 0s
ci / package-release (windows-x86_64, windows-latest, , , ) (push) Canceled after 0s
ci / remote-bench (push) Canceled after 0s
ci / publish-gitea-release (push) Canceled after 0s

This commit is contained in:
DuProcess
2026-07-16 22:50:39 -04:00
parent 4ce1aa4e6d
commit 294014e93f
3 changed files with 27 additions and 6 deletions
+13 -3
View File
@@ -17,12 +17,15 @@ if not defined PS (
)
set "TMP_PS=%TEMP%\dosh-install-%RANDOM%-%RANDOM%.ps1"
set "TMP_BINDIR=%TEMP%\dosh-install-%RANDOM%-%RANDOM%.bindir"
set "DOSH_INSTALL_PS1_URL=%SCRIPT_URL%"
set "DOSH_INSTALL_PS1_PATH=%TMP_PS%"
set "DOSH_INSTALL_BINDIR_FILE=%TMP_BINDIR%"
"%PS%" -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='Stop'; $ProgressPreference='SilentlyContinue'; Invoke-WebRequest -UseBasicParsing -Uri $env:DOSH_INSTALL_PS1_URL -OutFile $env:DOSH_INSTALL_PS1_PATH"
if errorlevel 1 (
del "%TMP_PS%" >nul 2>nul
del "%TMP_BINDIR%" >nul 2>nul
exit /b 1
)
@@ -30,9 +33,16 @@ if errorlevel 1 (
set "RC=%ERRORLEVEL%"
del "%TMP_PS%" >nul 2>nul
set "DOSH_CMD_PREFIX=%PREFIX%"
if "%DOSH_CMD_PREFIX%"=="" set "DOSH_CMD_PREFIX=%USERPROFILE%\.local"
set "DOSH_CMD_BINDIR=%DOSH_CMD_PREFIX%\bin"
if "%RC%"=="0" if exist "%TMP_BINDIR%" (
for /f "usebackq delims=" %%D in ("%TMP_BINDIR%") do if not defined DOSH_CMD_BINDIR set "DOSH_CMD_BINDIR=%%D"
)
del "%TMP_BINDIR%" >nul 2>nul
if not defined DOSH_CMD_BINDIR (
set "DOSH_CMD_PREFIX=%PREFIX%"
if "%DOSH_CMD_PREFIX%"=="" set "DOSH_CMD_PREFIX=%USERPROFILE%\.local"
set "DOSH_CMD_BINDIR=%DOSH_CMD_PREFIX%\bin"
)
set "DOSH_NEXT_PATH=%PATH%"
if "%RC%"=="0" (
echo ;%PATH%; | find /I ";%DOSH_CMD_BINDIR%;" >nul 2>nul