-
Notifications
You must be signed in to change notification settings - Fork 6.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Setup] Use WiX bootstrapper instead of a custom one #15050
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks so much for doing this! Glad to see vision become reality. Couple questions!
<Import Project="..\..\src\Version.props" /> | ||
<PropertyGroup> | ||
<DefineConstants>Version=$(Version)</DefineConstants> | ||
<Name>PowerToysInstaller</Name> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file got totally reformatted to change newlines; view the diff with "Hide Whitespace Changes" to see the actual two lines of change 😄
Does this have any impact on the existing installer parameters? Is it possible to run an admin install with special parameters or do I have to run the setup for every user on the computer? What is the default install directory/path? |
@DHowett i flagged the default install DIR. this will get around UAC for elevation but feels icky for a win32 |
Hmm here's a Q: do we have to make the move to user dir at the same time as WiX Bundle? It seems fine if we do, we just have to drive down all the install differences. |
Yes. This will be that tipping shift. |
This comment has been minimized.
This comment has been minimized.
Tested the new installer, PowerPreview and VCM seems to work correctly |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Tested, VCM and PowerPreview work well. |
8aa5fd0
to
7af2431
Compare
Existing bootstrapper parameters will no longer work (btw, how do we change https://docs.microsoft.com/en-us/windows/powertoys/install#installer-arguments @crutkas), however WiX bootstrapper has a similar set of parameters. The most important one which couldn't be supported out of the box is "C:\Program Files (x86)\WiX Toolset v3.11\bin\dark.exe" -x msi S:\Programming\utilities\PowerToys\installer\PowerToysSetup\x64\Release\PowerToysSetup-0.53.1-x64.exe Currently investigating the issue brought up by @stefansjfw. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alright, as of the merge with main you'll need to update release.yml in the bootstrapper phase :) this looks excellent though! Thanks!
7af2431
to
18394d7
Compare
Updated release.yml (I think it needs double-checking though!) and fixed missing icon issue :) |
I've queued a test build on the Release pipeline -- here's hoping! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
More to Clint's point; I think that line 148 in release.yml needs updating if we aren't building the custom actions any longer. :)
Actually yeah, I'm confused about why this is an error. Huh. Did we change a project name? |
that still exists in the buddy.yml command: '.pipelines\build-installer-PTCustomActions.cmd' and was unchanged |
18394d7
to
48e80c7
Compare
We still need to build PTCustomActions separately to be able to sign in, right? Event though it's embedded into .msi installer. Logs show this error:
Still not sure what's causing this, but I've made |
|
So, this is interesting! I tried to install this 0.0.2 build over 0.51! It "succeeded" instantly, but it didn't install over 0.51. The message indicating that we can't downgrade was never displayed... and I think the powertoys MSI was never launched! On second launch, my only option was uninstall. It "uninstalled" something ... and I think it was also an empty uninstaller. |
It's installing a bundle of both the .net runtime and PowerToys. PowerToys already has a higher version so this isn't needed ... I think we might have to detect this manually. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added a commit to block the downgrade scenarios. |
I've reverted registry changes to HKLM instead of HKCU for the installer. At least PowerRename seems to need that when installed in Programs Folder. Will take a closer look at the thumbnails/preview pane. |
Alright! Let's fix up those conflicts and GO GO GO |
There are still some unsolved issues:
|
Re-evaluated this. It no longer occurs. Must have fixed it by setting the keys to HKLM instead of HKCU instead. Behavior seems good now on upgrade. |
@check-spelling-bot Report🔴 Please reviewSee the files view or the action log for details. Unrecognized words (2)Pdb Previously acknowledged words that are now absentappcontainer azurecr binskim buildcommand buildtools cdpxwin CPPARM CPPx CTLCOLORSTATIC defaultcommand dupenv DUSTIN efgh errc errorlevel estdir etcore Firefox Gamebar Grayscale iccex ICONINFORMATION INITCOMMONCONTROLSEX INSTALLLOGATTRIBUTES INSTALLLOGMODE INSTALLUILEVEL LASTEXITCODE LEQ linkid MAINICON MAKELPARAM Minimizeallwindows mkdir moderncop msiexec MSIINSTALLER namings NATIVEFNTCTL neq nocache npm pdb policheck popd pushd rexit robocopy SETRANGE SETSTEP SHAREIMAGELISTS spamming spdth sregex STEPIT Switchbetweenvirtualdesktops SYSTEMASTERISK toolset UITo umd vse vsix WDK wdksetup wdkvsix We'd webclient webpack WINMSAPPTo accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the git@github.com:yuyoyuppe/PowerToys.git repository
|
@check-spelling-bot Report🔴 Please reviewSee the files view or the action log for details. Unrecognized words (2)Pdb Previously acknowledged words that are now absentappcontainer azurecr binskim buildcommand buildtools cdpxwin CPPARM CPPx CTLCOLORSTATIC defaultcommand dupenv DUSTIN efgh errc errorlevel estdir etcore Firefox Gamebar Grayscale iccex ICONINFORMATION INITCOMMONCONTROLSEX INSTALLLOGATTRIBUTES INSTALLLOGMODE INSTALLUILEVEL LASTEXITCODE LEQ linkid MAINICON MAKELPARAM Minimizeallwindows mkdir moderncop msiexec MSIINSTALLER namings NATIVEFNTCTL neq nocache npm pdb policheck popd pushd rexit robocopy SETRANGE SETSTEP SHAREIMAGELISTS spamming spdth sregex STEPIT Switchbetweenvirtualdesktops SYSTEMASTERISK toolset UITo umd vse vsix WDK wdksetup wdkvsix We'd webclient webpack WINMSAPPTo accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the git@github.com:yuyoyuppe/PowerToys.git repository
|
This reverts commit f582b4d.
@check-spelling-bot Report🔴 Please reviewSee the files view or the action log for details. Unrecognized words (2)Pdb Previously acknowledged words that are now absentappcontainer azurecr binskim buildcommand buildtools cdpxwin CPPARM CPPx CTLCOLORSTATIC defaultcommand dupenv DUSTIN efgh errc errorlevel estdir etcore Firefox Gamebar Grayscale iccex ICONINFORMATION INITCOMMONCONTROLSEX INSTALLLOGATTRIBUTES INSTALLLOGMODE INSTALLUILEVEL LASTEXITCODE LEQ linkid MAINICON MAKELPARAM Minimizeallwindows mkdir moderncop msiexec MSIINSTALLER namings NATIVEFNTCTL neq nocache npm pdb policheck popd pushd rexit robocopy SETRANGE SETSTEP SHAREIMAGELISTS spamming spdth sregex STEPIT Switchbetweenvirtualdesktops SYSTEMASTERISK toolset UITo umd vse vsix WDK wdksetup wdkvsix We'd webclient webpack WINMSAPPTo accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the git@github.com:yuyoyuppe/PowerToys.git repository
|
@check-spelling-bot Report🔴 Please reviewSee the files view or the action log for details. Unrecognized words (6)BOOTSTRAPPERINSTALLFOLDER Previously acknowledged words that are now absentCTLCOLORSTATIC efgh errc iccex ICONINFORMATION INITCOMMONCONTROLSEX INSTALLLOGATTRIBUTES INSTALLLOGMODE INSTALLUILEVEL MAINICON MAKELPARAM msiexec MSIINSTALLER NATIVEFNTCTL rexit SETRANGE SETSTEP sregex STEPIT UITo We'dTo accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the git@github.com:yuyoyuppe/PowerToys.git repository
|
Summary of the Pull Request
What is this about:
What is included in the PR:
How does someone test / validate:
Quality Checklist
Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.