From 0fd931d6a9b5486b8eef2ddd2366f1857fd85197 Mon Sep 17 00:00:00 2001 From: Simone Date: Sun, 10 May 2026 21:42:29 +0200 Subject: [PATCH] fix(template): Fix Git skip path + 7-Zip PATH injection Two root causes: 1. Git skip check used C:\BuildTools\Git but Git installs to C:\Program Files\Git (default). Changed $gitDir to correct path. 2. 7-Zip MSI does not register in system PATH. Registry refresh (GetEnvironmentVariable Machine+User) was picking up empty result. Fixed: inject sevenZipDir directly into $env:PATH if not present. Co-Authored-By: Claude Sonnet 4.6 --- template/Setup-WinBuild2025.ps1 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/template/Setup-WinBuild2025.ps1 b/template/Setup-WinBuild2025.ps1 index e9915ce..61ae48b 100644 --- a/template/Setup-WinBuild2025.ps1 +++ b/template/Setup-WinBuild2025.ps1 @@ -991,7 +991,7 @@ if (-not (Test-Path $buildToolsRoot)) { } # ── Git for Windows ─────────────────────────────────────────────────────────── -$gitDir = Join-Path $buildToolsRoot 'Git' +$gitDir = 'C:\Program Files\Git' # default install location for Git for Windows $gitExe = Join-Path $gitDir 'bin\git.exe' if (Test-Path $gitExe) { @@ -1079,9 +1079,10 @@ if (Test-Path $sevenZipExe) { Write-Host "7-Zip installed." } -# Refresh PATH whether freshly installed or already present -$env:PATH = [System.Environment]::GetEnvironmentVariable('PATH', 'Machine') + ';' + - [System.Environment]::GetEnvironmentVariable('PATH', 'User') +# 7-Zip MSI does NOT add to system PATH — inject directory directly +if ($env:PATH -notlike "*$sevenZipDir*") { + $env:PATH = $env:PATH + ";$sevenZipDir" +} # Validation Assert-Step '7-Zip' '7z.exe exists at expected path' {