Repository navigation
[installer][windows] Refactor WSL installation - #7393
Conversation
63be3b1 to
958ffc6
Compare
There was a problem hiding this comment.
All reported issues were addressed across 23 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
958ffc6 to
0150975
Compare
0150975 to
5ff1fd5
Compare
There was a problem hiding this comment.
All reported issues were addressed across 31 files
Tip: Get a Slack DM when cubic finishes reviewing your PRs. Connect Slack
View guided diff | Turn on auto-fix | Re-trigger cubic
5ff1fd5 to
069ff51
Compare
069ff51 to
6a2aafd
Compare
6a2aafd to
142f102
Compare
There was a problem hiding this comment.
All reported issues were addressed across 1 file (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
View guided diff | Turn on auto-fix | Re-trigger cubic
142f102 to
cd4c88a
Compare
There was a problem hiding this comment.
🟡 Changes recommended
Unresolved installer defects mask MSI and WSL failures and can trigger unintended post-install actions after failed installations, during administrative or silent installs, and after removal.
8 open issues
Treat the disabling override as false in MSI conditions · New Preserve Unicode installation paths when reading and launching · New Close or pump messages for the splash during MSI waits · New Check MSI exit code before starting WSL installation · New Return the WSL installer’s failure exit code · New Recognize uppercase /A to skip post-install actions · New Skip WSL and BOINC launches after removal · New Use MSI UI mode to control WSL and app launches · New
Review effort: Balanced
cd4c88a to
fbd997b
Compare
There was a problem hiding this comment.
🟡 Changes recommended
The bootstrapper ignores MSI and WSL installer exit codes, allowing failed or cancelled installations to trigger post-install actions and WSL failures to be reported as success.
1 open issue
8 resolved since last review
Use MSI UI mode to control WSL and app launches Skip WSL and BOINC launches after removal Recognize uppercase /A to skip post-install actions Return the WSL installer’s failure exit code Check MSI exit code before starting WSL installation Close or pump messages for the splash during MSI waits Preserve Unicode installation paths when reading and launching Treat the disabling override as false in MSI conditions
Review effort: Balanced
Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
fbd997b to
2ee40e9
Compare
There was a problem hiding this comment.
1 issue found across 5 files (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="win_build/installer_msi.vcxproj">
<violation number="1" location="win_build/installer_msi.vcxproj:19">
P1: A clean build now downloads the installer from the v3.0.5 release URL, but the repository’s releases page currently lists only v3.0.4. `DownloadBoincWslInstaller` therefore fails before compilation unless the v3.0.5 asset is published first; publish that release or point the version and checksum at an available asset.</violation>
</file>
Tip: Review your code locally with the cubic CLI to iterate faster.
View guided diff | Turn on auto-fix | Re-trigger cubic
| <PropertyGroup> | ||
| <BoincWslInstaller>$(OutDir)boinc-buda-runner-wsl-installer.exe</BoincWslInstaller> | ||
| <BoincWslInstallerVersion>2.3.2</BoincWslInstallerVersion> | ||
| <BoincWslInstallerVersion>3.0.5</BoincWslInstallerVersion> |
There was a problem hiding this comment.
P1: A clean build now downloads the installer from the v3.0.5 release URL, but the repository’s releases page currently lists only v3.0.4. DownloadBoincWslInstaller therefore fails before compilation unless the v3.0.5 asset is published first; publish that release or point the version and checksum at an available asset.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At win_build/installer_msi.vcxproj, line 19:
<comment>A clean build now downloads the installer from the v3.0.5 release URL, but the repository’s releases page currently lists only v3.0.4. `DownloadBoincWslInstaller` therefore fails before compilation unless the v3.0.5 asset is published first; publish that release or point the version and checksum at an available asset.</comment>
<file context>
@@ -16,7 +16,7 @@
<PropertyGroup>
<BoincWslInstaller>$(OutDir)boinc-buda-runner-wsl-installer.exe</BoincWslInstaller>
- <BoincWslInstallerVersion>3.0.4</BoincWslInstallerVersion>
+ <BoincWslInstallerVersion>3.0.5</BoincWslInstallerVersion>
<BoincWslInstallerGuardFile>$(BoincWslInstaller)_$(BoincWslInstallerVersion).lock</BoincWslInstallerGuardFile>
<BoincWslInstallerDownloadUrl>https://github.com/BOINC/boinc-buda-runner-wsl-installer/releases/download/v$(BoincWslInstallerVersion)/boinc-buda-runner-wsl-installer.exe</BoincWslInstallerDownloadUrl>
</file context>

Summary by cubic
Refactors the Windows installer so the WSL distro installer runs from the bootstrapper executable after the MSI installs BOINC, instead of from an MSI custom action.
CACheckWSLSupportandCALaunchBOINCWSLInstallercustom actions and their tests are removed; the bootstrapper now verifies the WSL installer's SHA256 checksum, runs it, and optionally launches the BOINC Manager and tray afterward.LAUNCHWSLIMAGEINSTALLERwas replaced byINSTALLWSLIMAGEINSTALLER.OVERRIDE_INSTALLWSLIMAGEINSTALLER, and the bundled WSL installer is updated to 3.0.5.Written for commit 2ee40e9. Summary will update on new commits.