|
@@ -1,14 +1,71 @@
|
|
-@echo off
|
|
|
|
|
|
+@SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
|
|
|
|
+@ECHO OFF
|
|
|
|
+SET CMDLINERUNSTR=%SystemRoot%\system32\cmd.exe
|
|
|
|
|
|
-reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /f /v Path /t REG_SZ /d "%path%;C:\MinGW\bin;C:\MinGW\msys\1.0\bin" > nul
|
|
|
|
-echo.
|
|
|
|
|
|
+SET NEWPATH1="C:\MinGW\msys\1.0\bin"
|
|
|
|
+SET NEWPATH2="C:\MinGW\bin"
|
|
|
|
|
|
-if NOT ["%errorlevel%"]==["0"] (
|
|
|
|
- echo FAILED. You probably just need to run the script with administrator privileges.
|
|
|
|
-) else (
|
|
|
|
- echo Success!
|
|
|
|
- setx QMK QMK > nul
|
|
|
|
-)
|
|
|
|
|
|
+:: Make sure paths exist
|
|
|
|
+IF NOT EXIST !NEWPATH1! (ECHO Path not found: %NEWPATH1% && GOTO ExitBatch)
|
|
|
|
+IF NOT EXIST !NEWPATH2! (ECHO Path not found: %NEWPATH2% && GOTO ExitBatch)
|
|
|
|
|
|
-echo.
|
|
|
|
-pause
|
|
|
|
|
|
+:: Add paths
|
|
|
|
+CALL :AddPath %NEWPATH1%
|
|
|
|
+CALL :AddPath %NEWPATH2%
|
|
|
|
+
|
|
|
|
+:: Branch to UpdateEnv if we need to update
|
|
|
|
+IF DEFINED UPDATE (GOTO UpdateEnv)
|
|
|
|
+
|
|
|
|
+GOTO ExitBatch
|
|
|
|
+
|
|
|
|
+:: -----------------------------------------------------------------------------
|
|
|
|
+
|
|
|
|
+:UpdateEnv
|
|
|
|
+ECHO Making updated PATH go live . . .
|
|
|
|
+REG delete HKCU\Environment /F /V TEMPVAR > nul 2>&1
|
|
|
|
+setx TEMPVAR 1 > nul 2>&1
|
|
|
|
+REG delete HKCU\Environment /F /V TEMPVAR > nul 2>&1
|
|
|
|
+IF NOT !cmdcmdline! == !CMDLINERUNSTR! (CALL :KillExplorer)
|
|
|
|
+GOTO ExitBatch
|
|
|
|
+
|
|
|
|
+:: -----------------------------------------------------------------------------
|
|
|
|
+
|
|
|
|
+:ExitBatch
|
|
|
|
+ENDLOCAL
|
|
|
|
+PAUSE
|
|
|
|
+EXIT /b
|
|
|
|
+
|
|
|
|
+:: -----------------------------------------------------------------------------
|
|
|
|
+
|
|
|
|
+:AddPath <pathToAdd>
|
|
|
|
+ECHO %PATH% | FINDSTR /C:"%~1" > nul
|
|
|
|
+IF ERRORLEVEL 1 (
|
|
|
|
+ REG add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /f /v PATH /t REG_SZ /d "%PATH%;%~1" > nul 2>&1
|
|
|
|
+ IF ERRORLEVEL 0 (
|
|
|
|
+ ECHO Adding %1 . . . Success!
|
|
|
|
+ SET "PATH=%PATH%;%~1"
|
|
|
|
+ SET UPDATE=1
|
|
|
|
+ ) ELSE (
|
|
|
|
+ ECHO Adding %1 . . . FAILED. Run this script with administrator privileges.
|
|
|
|
+ )
|
|
|
|
+) ELSE (
|
|
|
|
+ ECHO Skipping %1 - Already in PATH
|
|
|
|
+ )
|
|
|
|
+EXIT /b
|
|
|
|
+
|
|
|
|
+:: -----------------------------------------------------------------------------
|
|
|
|
+
|
|
|
|
+:KillExplorer
|
|
|
|
+
|
|
|
|
+ECHO Your desktop is being restarted, please wait. . .
|
|
|
|
+ping -n 5 127.0.0.1 > NUL 2>&1
|
|
|
|
+ECHO Killing process Explorer.exe. . .
|
|
|
|
+taskkill /f /im explorer.exe
|
|
|
|
+ECHO.
|
|
|
|
+ECHO Your desktop is now loading. . .
|
|
|
|
+ping -n 5 127.0.0.1 > NUL 2>&1
|
|
|
|
+ECHO.
|
|
|
|
+ping -n 5 127.0.0.1 > NUL 2>&1
|
|
|
|
+START explorer.exe
|
|
|
|
+START explorer.exe %CD%
|
|
|
|
+EXIT /b
|