Support for larger install.wim, legacy boot, image selection #5

Merged
sb10q merged 1 commits from parthy/wfvm:large-image into master 2024-08-17 17:37:23 +08:00
Contributor

These changes accomplish the following:

  • Speed up the image creation by using xHCI instead of UHCI
  • Allow for installation images larger than 4 GiB (might happen with more recent Windows versions) by splitting them using wimsplit
  • Allow for image selection for installation media containing more than one (e.g., Windows 10 Pro, Windows 10 Home, ...)
  • Add support for creating legacy images in addition to UEFI ones
These changes accomplish the following: - Speed up the image creation by using xHCI instead of UHCI - Allow for installation images larger than 4 GiB (might happen with more recent Windows versions) by splitting them using wimsplit - Allow for image selection for installation media containing more than one (e.g., Windows 10 Pro, Windows 10 Home, ...) - Add support for creating legacy images in addition to UEFI ones
parthy force-pushed large-image from bc8495789f to 7da6dfb75d 2021-03-09 17:37:20 +08:00 Compare
parthy changed title from Support for larger install.wim, legacy boot, image selection to Draft: Support for larger install.wim, legacy boot, image selection 2021-03-09 17:45:45 +08:00
Author
Contributor

I'm seeing some failed automated tests in our local systems, I need to have another look.

I'm seeing some failed automated tests in our local systems, I need to have another look.
parthy force-pushed large-image from 7da6dfb75d to 1357f493bd 2021-03-09 18:09:19 +08:00 Compare
parthy changed title from Draft: Support for larger install.wim, legacy boot, image selection to Support for larger install.wim, legacy boot, image selection 2021-03-09 18:11:26 +08:00
Author
Contributor

Seems like the drive letters are not the same for legacy and efi, that might be worth a second set of eyes.

Seems like the drive letters are not the same for legacy and efi, that might be worth a second set of eyes.
astro requested changes 2021-03-10 01:34:51 +08:00
astro left a comment
Collaborator

Very nice, thank you!

I guess you tested both configurations (efi=false/true) thoroughly, or do you wish us to take 2-3 days for confirmation runs?

Very nice, thank you! I guess you tested both configurations (`efi=false`/`true`) thoroughly, or do you wish us to take 2-3 days for confirmation runs?
wfvm/win.nix Outdated
@ -84,3 +87,3 @@
# USB boot
"-drive"
"id=win-install,file=usbimage.img,if=none,format=raw,readonly=on"
"id=win-install,file=usbimage.img,if=none,format=raw,readonly=on,media=${if efi then "disk" else "cdrom"}"
Collaborator

The file could be named cdimage.img in the !efi case for clarity.

The file could be named `cdimage.img` in the `!efi` case for clarity.
parthy marked this conversation as resolved
wfvm/win.nix Outdated
@ -97,3 +100,3 @@
#!${pkgs.runtimeShell}
set -euxo pipefail
export PATH=${lib.makeBinPath [ p7zip utils.qemu libguestfs ]}:$PATH
export PATH=${lib.makeBinPath [ p7zip utils.qemu libguestfs pkgs.wimlib pkgs.cdrkit ]}:$PATH
Collaborator

pkgs.cdrkit is only required on !efi.

`pkgs.cdrkit` is only required on `!efi`.
parthy marked this conversation as resolved
wfvm/win.nix Outdated
@ -109,0 +120,4 @@
rm win/sources/install.wim
# Split image so it fits in FAT32 partition
wimsplit win/sources/install_selected.wim win/sources/install.swm 3072
Collaborator

This could be closer to 4096 MB.

This could be closer to `4096` MB.
parthy marked this conversation as resolved
parthy added 3 commits 2021-03-10 20:36:02 +08:00
Author
Contributor

Thanks for your speedy feedback! I've made some changes, let me know if there is anything else I should address.

Given that I had some trouble with the driveLetter, it would be best if you could verify the correct functionality internally too. Right now, all our internal CI pipelines (GitLab and Hydra) are successful, but I would love the confirmation from your side before merging.

Thanks for your speedy feedback! I've made some changes, let me know if there is anything else I should address. Given that I had some trouble with the driveLetter, it would be best if you could verify the correct functionality internally too. Right now, all our internal CI pipelines (GitLab and Hydra) are successful, but I would love the confirmation from your side before merging.
parthy requested review from astro 2021-03-10 20:40:05 +08:00
astro approved these changes 2021-03-13 07:07:57 +08:00
astro left a comment
Collaborator

Works On My Machine

Works On My Machine
sb10q merged commit f1b52c0da7 into master 2021-03-13 08:45:34 +08:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: M-Labs/wfvm#5
No description provided.