Uh oh!
There was an error while loading. Please reload this page.
Reusable workflow for publishing package to WinGet - #56
Conversation
Muhammad Danish (mdanish-kh)
commented
Oct 27, 2025
Since this doesn't trigger off the |
Anam Navied (anamnavi)
left a comment
There was a problem hiding this comment.
Had a question, but non-blocking and LGTM
Uh oh!
There was an error while loading. Please reload this page.
Anam Navied (anamnavi)
commented
Nov 11, 2025
I've created this issue #57 to track updating the manifest for preview, I have the logic from our existing workflow and will update this code with it once this PR gets in |
Also, the first time the msixbundle is to be added (i.e the manifest does not yet contain an entry for msix which it can update), the team can run the What would the architecture be? Would scope be user? It is and then in our existing winget manifest, where |
Muhammad Danish (mdanish-kh)
commented
Nov 11, 2025
Anam Navied (@anamnavi) IIRC WinGet validation pipelines require that all of the MSIXBundle architectures are specified in the manifest, not a single one. So, in this case the installer node looks good but you would have to specify it for all architectures as well (the ones included in the MSIXBundle). Scope will be |
that makes sense for scope, thanks for clarifying!
do you mean that while we support both msi and msix installers, there would be 4 installer nodes for msixbundle (for x64, x86, arm, arm64) plus 4 installer nodes for msi's (for x64, x86, arm, arm64)? OR 4 installer nodes for msi (as it currently is) plus 1 for msixbundle |
Anam Navied (@anamnavi) I ran the following command to see how the updated manifest should look like Output PackageIdentifier: Microsoft.PowerShellPackageVersion: 7.5.4.0Installers:
- Architecture: x64InstallerType: wixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4-win-x64.msiInstallerSha256: 84A39D39F113F884333686C4DF70BC6C517F5B5D3982D88B4A0139F10EBB3FCBProductCode: '{E8159677-ACF8-4D64-9D36-5C36B8BBEA39}'
- Architecture: x86InstallerType: wixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4-win-x86.msiInstallerSha256: 397126D6C186ECF0A5F6F572D920E87F8602B728BE5B299B3401F34FB168B507ProductCode: '{C0EB62EC-3584-4297-9585-00376F6598E6}'
- Architecture: arm64InstallerType: wixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4-win-arm64.msiInstallerSha256: B7757B4D2477CE3A4426D87B1B84D827B2272F83C75C1C0C9FBC21264DA3ADCEProductCode: '{65823C8A-B1A9-40BD-AB10-D8174890930C}'
- Architecture: armInstallerType: wixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4-win-arm64.msiInstallerSha256: B7757B4D2477CE3A4426D87B1B84D827B2272F83C75C1C0C9FBC21264DA3ADCEProductCode: '{65823C8A-B1A9-40BD-AB10-D8174890930C}'
- Platform:
- Windows.UniversalMinimumOSVersion: 10.0.17763.0Architecture: arm64InstallerType: msixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4.msixbundleInstallerSha256: B8EB615A572056659AE8F74F45DF8EF4B1C78524FC0F21A752D02A132EBD8C03SignatureSha256: 052B1C58B50874A055F288B86C8307FD45A5560A6BAE5B4D5C69810126F2C7B4PackageFamilyName: Microsoft.PowerShell_8wekyb3d8bbwe
- Platform:
- Windows.UniversalMinimumOSVersion: 10.0.17763.0Architecture: x64InstallerType: msixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4.msixbundleInstallerSha256: B8EB615A572056659AE8F74F45DF8EF4B1C78524FC0F21A752D02A132EBD8C03SignatureSha256: 052B1C58B50874A055F288B86C8307FD45A5560A6BAE5B4D5C69810126F2C7B4PackageFamilyName: Microsoft.PowerShell_8wekyb3d8bbwe
- Platform:
- Windows.UniversalMinimumOSVersion: 10.0.17763.0Architecture: x86InstallerType: msixInstallerUrl: https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4.msixbundleInstallerSha256: B8EB615A572056659AE8F74F45DF8EF4B1C78524FC0F21A752D02A132EBD8C03SignatureSha256: 052B1C58B50874A055F288B86C8307FD45A5560A6BAE5B4D5C69810126F2C7B4PackageFamilyName: Microsoft.PowerShell_8wekyb3d8bbweManifestType: installerManifestVersion: 1.10.0ReleaseDate: 2025-10-20WinGetCreate didn't add |
Muhammad Danish (mdanish-kh)
commented
Nov 11, 2025
Also, I'm not sure why we have |
Anam Navied (anamnavi)
commented
Nov 12, 2025
thanks for providing the command output and example, I'll use that command for the initial manifest creation when msix is added. And yes, PowerShell doesn't create a msi for arm32, so the intention was to provide the arm64 url which works for arm32 when |
Muhammad Danish (mdanish-kh)
commented
Jan 26, 2026
Anam Navied (@anamnavi)Travis Plunk (@TravisEz13) Looping back if this can be looked at |
Uh oh!
There was an error while loading. Please reload this page.
PR Summary
PR creates a GitHub action workflow to trigger on every stable release to publish
Microsoft.PowerShellpackage to WinGet repository. microsoft/winget-create is the tool used for creating and submitting the manifestSteps needed from maintainers
WINGET_CREATE_GITHUB_TOKENthat's a public access token (classic) withpublic_reposcope from the user account where the winget-pkgs fork will exist. Recommend using a bot account (PowerShell Team Bot (@pwshBot) ?) for this purpose.PR Context
Re-usable workflow version of PR: