JosephM101/Force-Windows-11-Install

No ESD Support

Elshara opened this issue · 6 comments

So as you know, Windows 11 is being completely gay by not allowing computers with great specs (like my own - Alienware Area51 R7) machine to run the operating system.
Even though I have secure boot and TPM firmware support both enabled, plus exceeding the ram, storage and CPU requirements in addition to having a Windows insider account. They still say my PC cannot run Windows 11. Microsoft initially let me in to the preview June 24th. And now reverted me back to the release preview channel. And I've been in the Dev channel since Windows 8.1.
Suffice it to say, your script is the only one out there which will let me truly run a fresh copy of Windows 11 from boot. But I can't use it with ESD files. Which is the only way Rufus will let me create a bootable USB and run it in UEFI mode using fat32 with secure boot enabled.
Once you are able to add ESD support, I'll totally be able to recommend this to anyone. Thank you so much for building this tool. It's greatly appreciated. Win support works real well. I have a spare machine that can run those files without any problems.

I'll look into esd support. For testing, I used an open-source multiboot bootloader called Ventoy. Basically you install it onto a flash drive, and copy bootable ISO files to it. It supports Secure Boot and UEFI. Try it out, and let me know how it goes.

Hey Joseph,
Thanks for confirming that with me. I have tried doing what you ask with Ventoy.
Ventoy wouldn't load the USB device at all. I tried it with other ISO's and they loaded fine. But after clicking on the USB device after copying and installing Ventoy to it, well it just wouldn't go any further.
I used Ventoy with UEFI and Secure Boot enabled. And I even tried disabling both of them. The only time it would work is when I used Rufus and copied that specific ISO with secure boot turned off.
I would've thought that with Secure boot off, Ventoy would load the ISO image normally like how Rufus does it. But as it's a custom ISO, Ventoy is said to only work with specific ISO images. Which for Windows, I think they use the ESD files to verify them.
Which means that both Rufus and Ventoy would be happy with ESD support.
Right now as I type this, I'm on Windows 11 Enterprise Multi Session. Thanks to your script, and I've found it to be the fastest Windows out there. Only available through UUP Dump.
I'm not sure if you knew this, but I found a way to force the selection of Windows operating system editions during the initial install. You might find it useful to copy it to the ISO path.
https://www.intowindows.com/how-to-select-pro-edition-while-installing-windows-10/
This method works for Windows 11 clean install as well.
Thanks for the suggestion for Ventoy. I'll keep the package as I could see it being extremely useful for Linux machines. Which I suspect is where the majority of all requests for new ISO images get its user base from.
It also works with official Windows 10 images from my testing, just not the particular ISO that I built with your tool. Just to let you know.

I appreciate you letting me know that Ventoy compatibility was an issue for you. I'll look into it.

As of right now, I'm working on implementing an option in the script for converting the WIM image from the Windows 11 installer to ESD using DISM, before the images get merged. So far that's proving to be a bit challenging since DISM can be a bit finicky. We'll see what happens.

Thank you so very much.
As far as I know, Dism is the final step in making the image come together as an ISO. So it should work with ESD files maybe if the image was built using Wim originally, like it is now. Then have an option to convert the final Wim file to ESD in the script as an option before it's sent to Dism to perform final checks on the image before outputting the image to the iso file.
Another possible work around may be to have the original Windows 11 and 10 images downloaded from within the power shell script itself by incorporating UUP Dump configuration options into the script. Making the whole process more streamlined. That way so long as UUP dump has it, it's always official. Which if Dism gives any output errors, can reference or ignore the checks as needed.
I started promoting your script to a few developer friends of mine who are extremely interested in this project as well. I'm unsure if this helps, but there's a video I recently watched where Linus Tech Tips posted a video on all the different ways a Windows 11 image could be recreated. You may be able to take some inspiration from some of them to improve your script, as many haven't yet been reported elsewhere yet.
https://www.youtube.com/watch?v=NivpAiuh-s0
Perhaps a separate script altogether may be needed for ESD file configuration if it requires an independent list of files for Dism to work with to make a bootable ISO.
In the mean time, I'll keep trying with Ventoy as they keep updating that script as well.
You're doing fantastic.

Update: Instead of building the conversion routine into the script, I just grabbed another script from this GitHub repository, and added it to this repository, with instructions on how to do everything at the very bottom of the README. It seems to be working, so in a little bit I'll make the commit, and you can let me know how the process goes on your end. Instructions for conversion here

Thanks for building ESD support. It's too bad that it doesn't seem to be native. I'm hoping that with an ESD image I can bypass the edit mode altogether. It's great there's a convertion mode present when images are detected using Wim. All that really needs to be done is treating .wim files the same as ESD within the script. So as long as those work fine, so two should the install iso install file work just as well.
The work around script works as expected. But the native ESD support still fails to load if the image in both original iso files is an esd file. Not having to call it up in edit mode would be ideal if the original images are ESD to begin with. Otherwise this method works fantastic for native wim to ESD.