From fbd5b97d79ffdb7c36fe7d45ae2c20c750783567 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Partheym=C3=BCller?= Date: Thu, 11 Feb 2021 13:59:06 +0100 Subject: [PATCH] Split install.wim before creating USB image With newer Windows 10 versions, `install.wim` can become larger than 4GiB, which can't be placed in a FAT32 partition anymore. By splitting it into chunks with `wimsplit` and removing `install.wim`, the larger images work fine. --- wfvm/win.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/wfvm/win.nix b/wfvm/win.nix index 395ee8c..0a3193c 100644 --- a/wfvm/win.nix +++ b/wfvm/win.nix @@ -96,7 +96,7 @@ let '' #!${pkgs.runtimeShell} set -euxo pipefail - export PATH=${lib.makeBinPath [ p7zip utils.qemu libguestfs ]}:$PATH + export PATH=${lib.makeBinPath [ p7zip utils.qemu libguestfs pkgs.wimlib ]}:$PATH # Create a bootable "USB" image # Booting in USB mode circumvents the "press any key to boot from cdrom" prompt @@ -106,6 +106,10 @@ let mkdir -p win/nix-win 7z x -y ${windowsIso} -owin + # Split image so it fits in FAT32 partition + wimsplit win/sources/install.wim win/sources/install.swm 3072 + rm win/sources/install.wim + cp ${autounattend.autounattendXML} win/autounattend.xml virt-make-fs --partition --type=fat win/ usbimage.img