From d3578e971134f2167d0ee33641bbf71e32df1b09 Mon Sep 17 00:00:00 2001 From: lns103 <49310852+lns103@users.noreply.github.com> Date: Tue, 11 Jul 2023 07:51:13 +0800 Subject: [PATCH] fix(installer): use the system proxy to download ViGEmBus if it is enabled (#1406) --- .../misc/vigembus/install-vigembus.bat | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src_assets/windows/misc/vigembus/install-vigembus.bat b/src_assets/windows/misc/vigembus/install-vigembus.bat index c4c4e67f..bd62a788 100644 --- a/src_assets/windows/misc/vigembus/install-vigembus.bat +++ b/src_assets/windows/misc/vigembus/install-vigembus.bat @@ -1,4 +1,5 @@ @echo off +setlocal enabledelayedexpansion rem Get temp directory set temp_dir=%temp%/Sunshine @@ -6,11 +7,27 @@ set temp_dir=%temp%/Sunshine rem Create temp directory if it doesn't exist if not exist "%temp_dir%" mkdir "%temp_dir%" +rem Get system proxy setting +set proxy= +for /f "tokens=3" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" ^| find /i "ProxyEnable"') do ( + set ProxyEnable=%%a + + if !ProxyEnable! equ 0x1 ( + for /f "tokens=3" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" ^| find /i "ProxyServer"') do ( + set proxy=%%a + echo Using system proxy !proxy! to download ViGEmBus + set proxy=-x !proxy! + ) + ) else ( + rem Proxy is not enabled. + ) +) + rem get browser_download_url from asset 0 of https://api.github.com/repos/vigem/vigembus/releases/latest set latest_release_url=https://api.github.com/repos/vigem/vigembus/releases/latest rem Use curl to get the api response, and find the browser_download_url -for /F "tokens=* USEBACKQ" %%F in (`curl -s -L %latest_release_url% ^| findstr browser_download_url`) do ( +for /F "tokens=* USEBACKQ" %%F in (`curl -s !proxy! -L %latest_release_url% ^| findstr browser_download_url`) do ( set browser_download_url=%%F ) @@ -23,7 +40,7 @@ set browser_download_url=%browser_download_url:browser_download_url: =% echo %browser_download_url% rem Download the exe -curl -s -L -o "%temp_dir%\vigembus.exe" %browser_download_url% +curl -s -L !proxy! -o "%temp_dir%\vigembus.exe" %browser_download_url% rem Install vigembus %temp_dir%\vigembus.exe /passive /promptrestart