Skip to content

Windows ISO Builder v1.0.0

Latest

Choose a tag to compare

@Regstar2 Regstar2 released this 26 Aug 07:33
· 11 commits to master since this release
ca5be80

Windows ISO Builder v1.0.0 — стабильный релиз

Главное

Windows ISO Builder v1.0.0 — первый стабильный релиз GUI и PowerShell-клиента для сборки Windows 10/11 ISO через UUP dump. Версия закрепляет проверенный pre-1.0 baseline и финальные исправления, найденные во время реального Windows 11 25H2 E2E.

Основные возможности

  • WPF GUI поверх существующего PowerShell backend;
  • динамический UUP dump catalog без зашитых Windows release/build catalogs;
  • Windows 10/11, recommended build и full Catalog;
  • выбор языка, редакций, multi-edition, WIM/ESD и converter options;
  • structured preflight до UAC;
  • elevated build, progress, cancellation, logs, result actions и SHA-256 результата;
  • RU/EN localization, English fallback, System/Light/Dark theme;
  • sanitized diagnostics bundle;
  • GitHub Issue Forms и in-app feedback;
  • Stable/Prerelease update discovery через официальный GitHub Releases;
  • global Network Policy: System, Direct, Custom HTTP, Custom SOCKS5;
  • DPAPI CurrentUser для saved proxy password;
  • fail-closed Custom proxy mode и loopback bridge для generated downloader/aria2.

Финальный release hardening

Реальное E2E выявило несколько проблем, исправленных перед stable release:

  • запрошенный ESD теперь действительно приводит к sources\install.esd; mismatch с WIM завершается ISO_VALIDATION_FAILED;
  • исправлена совместимость пяти-полевого form POST с Windows PowerShell 5.1;
  • Cleanup выключен по умолчанию, но остаётся доступен как явный opt-in;
  • интеграция обновлений также выключена по умолчанию после измеренного E2E на 1:42:45; она остаётся доступна в дополнительных параметрах и помечена как потенциально очень долгая операция;
  • добавлен activity indicator для длительных quiet phases без подмены реального determinate progress;
  • исправлен Win32 ICO resource и усилена его regression-проверка;
  • detailed converter log получил ISO-8601 timestamps для анализа производительности.

ApplicationVersion остаётся 1.0.0, PowerShell ModuleVersion — 0.3.0, Backend Contract SchemaVersion и BuildPlan SchemaVersion — 1.

Два варианта загрузки

Release публикуется в двух формах:

  1. windows-iso-builder-v1.0.0.zip — полный portable package с GUI, PowerShell CLI/backend и документацией. Это рекомендуемый вариант для диагностики, CLI и прозрачного доступа к содержимому пакета.
  2. windows-iso-builder-v1.0.0.exe — одиночный self-extracting launcher. Он содержит тот же проверенный portable payload, временно распаковывает его в %TEMP%, запускает GUI и выполняет best-effort cleanup после выхода.

Оба варианта используют один и тот же PowerShell backend; отдельной реализации build pipeline для EXE нет.

Требования

  • Windows 10/11 x64;
  • доступ к UUP dump и Microsoft CDN;
  • достаточно места на диске для UUP cache, work directory и ISO;
  • UAC только для privileged build stage;
  • отдельный .NET Runtime для portable ZIP не требуется;
  • для сборки проекта из source нужен .NET 10 SDK.

Быстрый запуск

Отдельный EXE

  1. Скачайте windows-iso-builder-v1.0.0.exe и соответствующий .sha256.
  2. Проверьте SHA-256.
  3. Запустите EXE обычным пользователем.

ZIP с GUI + CLI

  1. Скачайте windows-iso-builder-v1.0.0.zip и соответствующий .sha256.
  2. Проверьте SHA-256 и полностью распакуйте ZIP.
  3. Для GUI запустите WindowsISOBuilder.exe обычным пользователем.
  4. Для CLI используйте Start-Builder.cmd или PowerShell entrypoint из пакета.

В GUI выберите Windows, язык, редакции, WIM/ESD и output directory, запустите preflight, затем «Создать ISO». Интеграция обновлений находится в дополнительных параметрах и по умолчанию выключена.

Network / proxy

Настройки сети находятся в Настройки -> Сеть.

  • System использует системное proxy-поведение Windows/.NET.
  • Direct явно обходит proxy.
  • Custom HTTP использует указанный HTTP proxy.
  • Custom SOCKS5 использует SOCKS5 через локальный loopback bridge.

Custom mode fail-closed: ошибка конфигурации, credential или подключения не превращается в silent Direct fallback. Для generated downloader/aria2 upstream proxy host/user/password не передаются в command line.

Безопасность

Приложение не содержит GitHub PAT/OAuth token, не отключает UAC/antivirus и не выполняет self-update. Diagnostics создаются вручную, используют allowlist и sanitizer; перед публикацией diagnostic ZIP всё равно нужно просмотреть.

Proxy password не хранится в network.json, BuildPlan, backend request, command line, logs, diagnostics или release artifact. Saved credential защищается Windows DPAPI CurrentUser.

Проверка checksum

$files = @(
    '.\windows-iso-builder-v1.0.0.zip',
    '.\windows-iso-builder-v1.0.0.exe'
)

foreach ($file in $files) {
    $artifact = Resolve-Path $file
    $checksumFile = Resolve-Path "$file.sha256"
    $actual = (Get-FileHash -Algorithm SHA256 -LiteralPath $artifact).Hash.ToUpperInvariant()
    $expected = ((Get-Content -LiteralPath $checksumFile -Raw).Trim() -split '\s+')[0].ToUpperInvariant()
    if ($actual -ne $expected) { throw "Release SHA-256 mismatch: $file" }
}

Известные ограничения

  • Автоматического self-update нет: приложение только открывает official GitHub release page.
  • Интеграция обновлений может существенно увеличить время сборки, особенно для ESD; поэтому она является opt-in.
  • Single EXE временно распаковывает embedded portable runtime при запуске; это launcher, а не отдельный backend.
  • Installer/MSIX, USB writer/Rufus integration, History/Profiles, customization, debloat, unattended setup, driver injection, TPM bypass, activation, accounts/cloud sync, telemetry и plugins не входят в v1.0.0.

Обратная связь и обновления

В О приложении доступны GitHub Issue Forms для bug report и feature request. Настройки -> Обновления выполняет ручную проверку официальных GitHub Releases по выбранной Network Policy.

English documentation: README_EN.md and English release notes.


Финальные исправления перед публикацией

После основного release hardening дополнительно исправлено:

  • отображение результатов Каталога в Dark theme;
  • восстановление после повреждённого settings.json;
  • диагностирование необработанных GUI-ошибок;
  • single-file self-contained GUI внутри portable ZIP;
  • удаление россыпи framework/runtime DLL рядом с WindowsISOBuilder.exe;
  • финальное оформление README и скриншоты.

GUI и CLI

windows-iso-builder-v1.0.0.exe — основной standalone-вариант для GUI.

windows-iso-builder-v1.0.0.zip — полный portable package, содержащий:

  • GUI;
  • Start-Builder.cmd;
  • Start-Builder.ps1;
  • Invoke-WibBackend.ps1;
  • PowerShell module WindowsISOBuilder;
  • документацию.

Если нужен PowerShell CLI или автоматизация — используйте ZIP.