packaging/winget/README.md
This directory keeps the source draft for publishing microsandbox to the Windows Package Manager Community Repository.
The official winget package does not live in this repository. When a Windows release is ready, copy the rendered manifests from here into a fork of microsoft/winget-pkgs under:
manifests/s/SuperRadCompany/Microsandbox/<version>/
The package uses winget's zip + portable installer shape because the microsandbox Windows release bundle contains msb.exe next to libkrunfw.dll. The manifest sets ArchiveBinariesDependOnPath: true so the archive directory is placed on PATH and msb.exe can load its adjacent DLL.
microsandbox-windows-x86_64.zipmicrosandbox-windows-aarch64.zipchecksums.sha256$version = "0.5.9"
$tag = "v$version"
$dst = "C:\src\winget-pkgs\manifests\s\SuperRadCompany\Microsandbox\$version"
New-Item -ItemType Directory -Force -Path $dst | Out-Null
Copy-Item packaging\winget\SuperRadCompany.Microsandbox\*.yaml $dst
{{VERSION}} with the semver package version, for example 0.5.9{{TAG}} with the GitHub release tag, for example v0.5.9{{RELEASE_DATE}} with the release date in YYYY-MM-DD{{SHA256_X64}} with the checksum for microsandbox-windows-x86_64.zip{{SHA256_ARM64}} with the checksum for microsandbox-windows-aarch64.zipThe checksums are available from the release asset:
gh release download $tag --repo superradcompany/microsandbox --pattern checksums.sha256 --dir $env:TEMP --clobber
Select-String -Path "$env:TEMP\checksums.sha256" -Pattern "microsandbox-windows"
winget validate $dst
winget install --manifest $dst --accept-package-agreements --accept-source-agreements
msb doctor
winget uninstall SuperRadCompany.Microsandbox
microsoft/winget-pkgs.Do not submit these templates directly. The community repository requires concrete release URLs and SHA256 hashes.