Skip to content

v0.7.0 - Automatic Windows media download via OSD

Choose a tag to compare

@markorr321 markorr321 released this 17 Aug 16:59
· 2 commits to main since this release

Install-Module VM-Pilot · PowerShell Gallery

Windows install media now downloads itself

VM-Pilot resolves media through David Segura's OSD module — the module behind OSDCloud. Its Get-FeatureUpdate returns Microsoft's official download URL, filename and SHA256 for a given release, channel and language.

The SETUP wizard's five manual steps — open Microsoft's download page, pick the edition, pick the language, save the ISO, come back and browse to it — collapse into one DOWNLOAD & BUILD button. USE EXISTING ISO remains for bring-your-own media or networks that block the download.

This retires the Fido resolver, which scraped Microsoft's public download page and failed with error 715-123130 whenever that page IP-blocked the caller.

Microsoft's catalog serves an .esd, which is already a Windows image container, so the download path hands the file straight to DISM and skips the ISO mount entirely. Supplied .iso still mounts as before, and .esd/.wim can now be supplied directly.

24H2 is selectable again

WIN RELEASE offers 25H2 (default) and 24H2, each with its own parent VHDX, so the two coexist and switching never rebuilds the other. A status dot under the selected release shows whether that release's parent exists, and SETUP names the release it will build. Media from the wrong release is rejected rather than quietly building a VHDX the GUI would never look for.

Download integrity — read this if you pick 24H2

Downloads are verified against the catalog's published SHA256 before the ~10-minute apply begins, and deleted on mismatch.

Microsoft publishes a SHA256 for 25H2 but not for 24H2, and the delivery CDN is HTTP-only (that host refuses TLS, so the URL cannot simply be upgraded). A 24H2 download is therefore checked for completeness by byte count but cannot be cryptographically verified. The builder says so explicitly rather than letting silence imply a passed check. Prefer 25H2, or supply your own 24H2 media, if that matters to you.

Fixes

  • SETUP wizard left CLOSE disabled after a successful build, stranding a finished wizard
  • A BITS transfer reporting BG_SIZE_UNKNOWN on its first poll overflowed an [int] and aborted the build before any progress appeared
  • Bottom button row measured 530px inside a 520px content area, pushing EXIT past the window margin

Licensing

LICENSE gains a THIRD-PARTY COMPONENTS section: the MIT grant covers VM-Pilot's own code only. OSD (GPL-3.0), HyperV.VMFactory (MIT), the in-VM import GUI, and Microsoft's media are each obtained at runtime, under their own licenses, and never bundled or redistributed here.

Full changelog: v0.6.0...v0.7.0