Fully unattended Windows 11 Pro build using Autounattend.xml, swtpm for TPM 2.0 emulation, and VirtIO drivers. Five PowerShell provisioners strip bloatware, telemetry, unused services, and apply performance tuning for a resource-constrained host. Output is a compressed QCOW2 image. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
40 lines
1.6 KiB
Plaintext
40 lines
1.6 KiB
Plaintext
# Copy this file to variables.pkrvars.hcl and fill in the required values.
|
|
# Do NOT commit variables.pkrvars.hcl — it contains credentials.
|
|
|
|
# ── Required ─────────────────────────────────────────────────────────────────
|
|
|
|
# Absolute path to your Windows 11 Pro retail ISO
|
|
win_iso_path = "/path/to/Win11_23H2_English_x64v2.iso"
|
|
|
|
# SHA-256 checksum — generate with: sha256sum /path/to/Win11_*.iso
|
|
win_iso_checksum = "sha256:REPLACE_WITH_ACTUAL_CHECKSUM"
|
|
|
|
# ── Optional overrides (uncomment to change) ──────────────────────────────────
|
|
|
|
# Path to VirtIO drivers ISO (downloaded by 'make virtio-iso')
|
|
# virtio_iso_path = "virtio-win.iso"
|
|
|
|
# Output VM name
|
|
# vm_name = "windows11-lite"
|
|
|
|
# Virtual disk size in MB (50 GB minimum recommended for Windows 11 + debloat)
|
|
# disk_size = 51200
|
|
|
|
# RAM in MB assigned to the VM during the Packer build
|
|
# Increase if the build stalls; this does not affect the final VM's default RAM.
|
|
# memory = 4096
|
|
|
|
# vCPUs during build
|
|
# cpus = 2
|
|
|
|
# Output directory for the finished QCOW2 disk image
|
|
# output_directory = "output"
|
|
|
|
# WinRM password used by Packer to connect during provisioning.
|
|
# If changed here, update the matching <Value> fields in http/Autounattend.xml.
|
|
# winrm_password = "Packer1234!"
|
|
|
|
# OVMF firmware paths — these are the Fedora 43 defaults
|
|
# ovmf_code = "/usr/share/edk2/ovmf/OVMF_CODE.fd"
|
|
# ovmf_vars = "/usr/share/edk2/ovmf/OVMF_VARS.fd"
|