following the instructions of your "Unofficial Fusion 13 for Apple Silicon Companion Guide" to install Windows 11:
when I'm running./w11arm_esd2iso.sh -l (or anything else for that matter)I get this:ERROR: Required program wiminfo not foundERROR: Required program wimapply not foundERROR: Required program wimexport not foundERROR: One or more required programs are not found.
When all else fails, believe the diagnostic.
The script requires additional open source utilities to be installed. That's noted in both the README for the script, and the instructions in the Companion Guide.
Install aria2 and wimlib packages from HomeBrew or MacPorts, and ensure that either /opt/homebrew/bin or /opt/local/bin (for Homebrew and MacPorts respectively) is present on the $PATH variable in the command shell. If you've installed either Homebrew or MacPorts, that should be done for you automatically.
I've got brew and wimlib and aria2 installed
Trying variations of this command line:Downloads % ./w11arm_esd2iso.sh -b -a -r /Volumes/Macintosh\ HD/Users/corezerostudio/Downloads/w11arm_esd2iso-V2.0/Keep getting this:
Restart failed ESD download from a prior execution using work-dir
Thanks for any help!😄 Eric
You shouldn’t need the -b option unless you want Windows 11 Enterprise. The consumer download contains Windows Home and Pro, the “business” download you get with the -b option contains Pro and Enterprise.
In the work directory left behind by a failed download ( named esd2iso_temp.* ) there should be a file called restartOK. Could you post the contents of that file?
I’d also suggest starting fresh and run the command with the -v option added and capture both standard output and error
./w11arm_esd2iso.sh -a -v en-us > output.txt 2>output.err
Please zip up both output.txt and output.err and attach the zip file to a post in the main VMware Fusion forum.
@maxgain - it also looks like you may have a usage error in the command. That particular message is part of the usage output:
Usage:./w11arm_esd2iso.sh [-abhvV] esd-language./w11arm_esd2iso.sh [-vVh] -r work-dir./w11arm_esd2iso.sh [-vVh] -lArguments: esd-language Valid Windows 11 language tag work-dir Work directory for restarting failed downloadOptions: -a Use aria2c for ESD download instead of curl -b Download business (Pro/Enterprise) ESD instead of consumer (Home/Pro) -h Print usage and exit -v Enable verbose output -V Print script version and exit -r work-dir Restart failed download from a prior execution using work-dir
The usage text is displayed in 2 cases.
Assuming that you did not use the -h option. there should have been an error message preceding the usage text. What did that say?
worked for me... yuppie!
THANK YOU, man
This guide was awesome.
Thank you for taking the time to put this together.
I was able to install both RHE9.1 & W11 based on this ...
Thanks for the hard work on this, amazing effort.
One quick point, if you are having trouble getting the ESD to download, check your security gateway as many (including Unifi Dream Machine) will block the aira2 user agent.
You'll need to setup an exemption to get this to work.
I can't seem to get this to work. Can anyone provide a step by step process to get this working.
I extracted all from the zip and placed them all in a folder named w11. there is no .sh file
There is a pdf file included in the zip file that provides full documentation for the utility, including its command line syntax.
A step-by-step guide on how to use the utility can be found in the current version (version 17) of the Unofficial Fusion 13 for Apple Silicon Companion Guide.
Please take the time to read all the documentation provided by the utility and the Companion guide linked above. They should answer your questions.
In the event that you can't get it working after reading the documentation, please re-post with examples and output of what you tried and where it didn't work.
Using this Unofficial Fusion 13 Guide, and placing the uud on a windows 10 Pro, I am getting these kinds of messages and then it just hangs.
I get no ISO file anywhere.
The w11arm_esd2iso utility does not download UUPs. It downloads an ESD file from Microsoft. The utility only runs on an M1/M2 Mac and does not need a Windows system to build the ISO.
What instructions from what document are you following? The output that you posted does not look like what is expected if you followed the procedures as described in the Companion Guide version 17 or later to build an ISO.
The Companion Guide version 17 (latest one posted) is the one that matches up with the w11arm_esd2iso utility version posted here. Make sure you are downloading the file “Fusion 13 for Apple Silicon Companion v17.pdf” from the page linked above.
Note that building from ISOs from uupdump.net and installing a VM from Windows 11 ARM Insider Preview VHDX files are deprecated and should not be used. The instructions have been removed from the Companion Guide as of version 12. The document "Deprecated methods for Windows 11 ARM installation.pdf" contains these instructions if you really want them. There is no guarantee that those instruction still work as they have not been verified since the newer and more reliable procedures became available.
Sorry for all of the missed instructions. Actually, I was able to create the ISO, but not the first time on the Mac. I started to get the same errors as appears in my above image. But, the problem was NOT that I was doing it from Windows, but that I neglected the reason for the errors which turns out to be a ROUTER issue. I have my network so locked up that it is difficult for anything to come through from the outside. I turned one of my IP rules off and I was able to complete the ISO.
Thanks for the help.
@DKeim thanks for the update and glad you were able to find the issue. I'll put in a note in the instructions to check router configuration should you encounter a total failure to download (not simply a connection that starts and then is interrupted).
I just ran the script on an M2 MacBook Pro on macOS 13.4 and got the error message below. I don't have wimlib and aria2 installed, but the 4.0 Readme file seem to say that they aren't needed (Version 4.0 recognizes if the wimlib or aria2 open-source utilities from Homebrew or MacPorts are available via the users $PATH veriable, and will use them if they are found. If they aren't found, the bundled versions will be used).
Step 2 complete - ESD downloaded
Step 3: Building installation image from ESD distribution
Applying boot files to the image
Boot files successfully applied to image
Adding WinPE and Windows Setup to the image
[ERROR] Invalid chunk size in compressed resource!
ERROR: Exiting with error code 2:
The WIM contains invalid compressed data.
[ERROR] Add of WinPE failed
[ERROR] Installation image build failed with error code 2
Work directory ./esd2iso_temp.N1bDaz was not deleted, use for debugging
indicate what language you are trying to download? I’ll see if I can reproduce.
re-run the utility with the -v option and post the results.
Thank you for your reply! I chose en-us. To re-run the utility, do I start over from scratch with a new 'empty' 'Build' folder or can I start later in the instructions since it looks like I've already downloaded the Windows file? What's the command where I should add a -v option?
You can re-run the utility in the Build folder. You don't have to delete it. But I would recommend deleting the old work directory left over from the failed run.
My initial suspicion is that if you got those errors then the Windows download is corrupted somehow.
Run the following commands in Terminal from the Build folder to restart the build process:
rm -rf ./esd2iso_temp.*./w11arm_esd2iso -v
Also, do you have any anti-virus programs running on your Mac? If you do, can you turn it off temporarily while you perform the download or exclude the Build folder from its scans?
Sorry for not being particularly savvy with these things. The 'work' directory to delete, is that the whole 'esd2iso_temp.N1bDaz' folder where the downloaded .esd file is located?
No, I don't have any anti-virus programs running. It's mostly a new MacBook Pro install of 13.4. The only utility I have installed that's running in the background is a battery charging limiter called AlDente
You are correct in that you should delete the folder esd2iso_temp.N1bDaz' folder where the downloaded .esd file is located. Running the two commands I posted will do this, and re-run the w11arm_esd2iso with the desired -v option.
If the re-run gets the error, please also collect the output from the following 2 commands from the Terminal:
grep Sha1 ./esd2iso_temp.*/esd_edition.xmlshasum ./esd2iso_temp.*/*.esd
After following your instructions, the 2nd time I ran your utility it worked! 🙂 I then followed the excellent "Fusion 13 for Apple Silicon Companion v19" guide and the installation went well. I now finally have Windows 11 on my M2 Macbook Pro! Thanks again for your help and for the excellent guide. Now I won't have to move to Parallels. 🙂
@Doc69 Glad that it's finally working for you. It's strange that the downloaded file had some structural issues the first time you download it.
I do have to thank you because your experiences have led to an enhancement in the utility to perform a checksum verification of the downloaded ESD file. That way any corruption will be caught earlier in the process. The enhancement will be posted soon as version 4.0.1 of the utility.
@Technogeezer I'm glad that you also got something out of it! 🙂
Apart from no drag-and-drop or shared folders, I also found out that Dropbox could not be installed normally. But it asked me if I wanted to install some S version from the app store. Do you know what this is? If I do so, will it work like normal Dropbox?
I also found a quirk with the display resolution. First, the resolutions available do not allow me to use the native 1920x1080 of my monitor unless I go full screen. Since the macOS menu bar as well as the top of the Fusion window take up some pixels, I can't see the bottom of the window with that resolution. So I have had to choose a lower resolution, like 1280 x 1024 in order to get the native resolution without going full screen. In Fusion on my Intel Mac mini (that is connected to a 1920 x 1200 display), I can choose 1920 x 1137, which makes the native resolution possible without blocking any part of the window. Another weird thing is that even if I choose 1280 x 1024, if I do certain things, like moving the Fusion window, the window then shrinks a little and because of it, is scaling the resolution until I make the window the full 1024 height again. Do you know if there is any way to fix this, or do we have to wait for the official VMWare Tools?
As far as Dropbox goes, you'll have to ask Dropbox if they have a version that runs on Windows 11 ARM. In the Dropbox system requirements, they state:
Note: The Dropbox desktop app doesn’t support ARM processors on Windows operating systems, except for on Windows in S mode.
According to a post on the Dropbox community https://www.dropboxforum.com/t5/Apps-and-Installations/Desktop-app-with-syncing-for-devices-with-ARM..., the "S" version is no better than using their web interface.
As far as the screen resolution goes, that's a current limitation of the VMware video driver. The driver only has a defined number of resolutions available in the driver (the ones that you see in Windows when you make a change from Settings). People have been unsuccessful in making any changes to get the driver to provide more customized resolutions. And since there's no other VMware Tools available, the resizing of the screen by dragging the window or going full screen doesn't tell the VM that there's another resolution available.
We are anticipating that this will be addressed when VMware has more complete tools support for Windows 11 ARM.
I have a weird problem I can't find addressed anywhere.
tldr: I can't get past the language selection query while running the app. (It won't even print the language list.)
I am on a new M2 MacBook Pro running Ventura 13.4.1. I migrated my Intel MacBook Pro running Monterey 12.6.7 to this new machine.
First Mistake: in my enthusiasm, my eye skipped over the OBVIOUS warning and unzipped using Finder. I realized my mistake when the app failed at the language selection query (see output below) so I went back and deleted everything involved, emptied the Trash, restarted the machine and tried again starting from the download of the zip file (I turned off my vpn and turned off my Sophos anti-virus). Same result, can't get past the language selection query.
I wonder if at some point I installed an unzip that can't handle this operation? Or has my bone-headed mistake of first unzipping with Finder put me in a cave from which I cannot escape?
mike@osx-mbk23 Build % unzip -version
caution: both -n and -o specified; ignoring -o
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.
The full monty (I used the -o option after several attempts not using it which continually stopped me at language query):
mike@osx-mbk23 Build % unzip -o w11arm_esd2iso-V4.0.1.zipArchive: w11arm_esd2iso-V4.0.1.zipinflating: READMEinflating: w11arm_esd2isoinflating: w11arm_esd2iso_manpage.pdfcreating: doc/inflating: doc/CHANGELOGcreating: bin/inflating: bin/aria2cinflating: bin/wimlib-imagexcreating: lib/inflating: lib/libcrypto.3.dyliblinking: lib/libcrypto.dylib -> libcrypto.3.dylibinflating: lib/libgmp.10.dyliblinking: lib/libgmp.dylib -> libgmp.10.dylibinflating: lib/libgmpxx.4.dyliblinking: lib/libgmpxx.dylib -> libgmpxx.4.dylibinflating: lib/libiconv.2.dyliblinking: lib/libiconv.dylib -> libiconv.2.dylibinflating: lib/libicudata.73.2.dyliblinking: lib/libicudata.73.dylib -> libicudata.73.2.dyliblinking: lib/libicudata.dylib -> libicudata.73.2.dylibinflating: lib/libicui18n.73.2.dyliblinking: lib/libicui18n.73.dylib -> libicui18n.73.2.dyliblinking: lib/libicui18n.dylib -> libicui18n.73.2.dylibinflating: lib/libicuio.73.2.dyliblinking: lib/libicuio.73.dylib -> libicuio.73.2.dyliblinking: lib/libicuio.dylib -> libicuio.73.2.dylibinflating: lib/libicutest.73.2.dyliblinking: lib/libicutest.73.dylib -> libicutest.73.2.dyliblinking: lib/libicutest.dylib -> libicutest.73.2.dylibinflating: lib/libicutu.73.2.dyliblinking: lib/libicutu.73.dylib -> libicutu.73.2.dyliblinking: lib/libicutu.dylib -> libicutu.73.2.dylibinflating: lib/libicuuc.73.2.dyliblinking: lib/libicuuc.73.dylib -> libicuuc.73.2.dyliblinking: lib/libicuuc.dylib -> libicuuc.73.2.dylibinflating: lib/libintl.8.dyliblinking: lib/libintl.dylib -> libintl.8.dylibinflating: lib/liblzma.5.dyliblinking: lib/liblzma.dylib -> liblzma.5.dylibinflating: lib/libuv.1.dyliblinking: lib/libuv.dylib -> libuv.1.dylibinflating: lib/libwim.15.dyliblinking: lib/libwim.dylib -> libwim.15.dylibinflating: lib/libxml2.2.dyliblinking: lib/libxml2.dylib -> libxml2.2.dylibinflating: lib/libz.1.2.13.dyliblinking: lib/libz.1.dylib -> libz.1.2.13.dyliblinking: lib/libz.dylib -> libz.1.2.13.dylibinflating: lib/libzstd.1.5.5.dyliblinking: lib/libzstd.1.dylib -> libzstd.1.5.5.dyliblinking: lib/libzstd.dylib -> libzstd.1.5.5.dylibfinishing deferred symbolic links:lib/libcrypto.dylib -> libcrypto.3.dyliblib/libgmp.dylib -> libgmp.10.dyliblib/libgmpxx.dylib -> libgmpxx.4.dyliblib/libiconv.dylib -> libiconv.2.dyliblib/libicudata.73.dylib -> libicudata.73.2.dyliblib/libicudata.dylib -> libicudata.73.2.dyliblib/libicui18n.73.dylib -> libicui18n.73.2.dyliblib/libicui18n.dylib -> libicui18n.73.2.dyliblib/libicuio.73.dylib -> libicuio.73.2.dyliblib/libicuio.dylib -> libicuio.73.2.dyliblib/libicutest.73.dylib -> libicutest.73.2.dyliblib/libicutest.dylib -> libicutest.73.2.dyliblib/libicutu.73.dylib -> libicutu.73.2.dyliblib/libicutu.dylib -> libicutu.73.2.dyliblib/libicuuc.73.dylib -> libicuuc.73.2.dyliblib/libicuuc.dylib -> libicuuc.73.2.dyliblib/libintl.dylib -> libintl.8.dyliblib/liblzma.dylib -> liblzma.5.dyliblib/libuv.dylib -> libuv.1.dyliblib/libwim.dylib -> libwim.15.dyliblib/libxml2.dylib -> libxml2.2.dyliblib/libz.1.dylib -> libz.1.2.13.dyliblib/libz.dylib -> libz.1.2.13.dyliblib/libzstd.1.dylib -> libzstd.1.5.5.dyliblib/libzstd.dylib -> libzstd.1.5.5.dylibmike@osx-mbk23 Build % ls -altotal 37776drwxr-xr-x 9 mike staff 288 Jul 10 09:06 .drwx------@ 39 mike staff 1248 Jul 10 09:02 ..-rw-r--r-- 1 mike staff 9428 Jul 3 15:16 READMEdrwxr-xr-x 4 mike staff 128 Jul 3 15:16 bindrwxr-xr-x 3 mike staff 96 Jul 3 15:16 docdrwxr-xr-x 44 mike staff 1408 Jul 3 15:16 lib-rwxr-xr-x 1 mike staff 19122 Jul 3 15:16 w11arm_esd2iso-rw-r--r--@ 1 mike staff 19213653 Jul 10 09:03 w11arm_esd2iso-V4.0.1.zip-rw-r--r-- 1 mike staff 53740 Jul 3 15:16 w11arm_esd2iso_manpage.pdfmike@osx-mbk23 Build % ./w11arm_esd2iso -vw11arm_esd2iso 4.0.1 (03-July-2023)
[INFO] Using bundled utilities[DEBUG] PATH is now set to ./bin:/opt/sw/bin:/opt/sw/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/opt/X11/bin:/Library/Apple/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/usr/local/bin:/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin:/Users/mike/bin[DEBUG] DYLD_FALLBACK_LIBRARY_PATH is now set to ./lib[DEBUG] Free space is 292 GB
Do you want to create an ISO containing Windows 11 ARM Home/Professional editionsor Professional/Enterprise editions?
Enter 'h' to create a Home/Professional ISO'e' to create a Professional/Enterprise ISO'q' to exit the program without creating an ISO: h
Windows 11 ARM Home/Professional ISO will be created.
Please wait while information is being downloaded from Microsoft for the Home/Professional ESDs
07/10 09:07:38 [NOTICE] Downloading 1 item(s)
07/10 09:07:39 [NOTICE] CUID#7 - Redirecting to https://download.microsoft.com/download/b/1/9/b19bd7fd-78c4-4f88-8c40-3e52aee143c2/products_win11_20...
07/10 09:07:39 [NOTICE] Download complete: ./esd2iso_temp.qUZ33l/catalog.cabtar: This does not look like a tar archivetar: Skipping to next headertar: products.xml: Not found in archivetar: Exiting with failure status due to previous errorssed: products.xml: No such file or directoryCannot open file './esd2iso_temp.qUZ33l/products.xml' at /System/Library/Perl/Extras/5.30/XML/XPath.pm line 117.Processing complete
Please select a language for your Windows 11 ARM ISO.
Available Windows 11 ARM languages are:
Language tag Language------------ --------------------
Enter a language tag from the 'Language Tag' colummn of the list, or'list' to reprint the list of languages, or'quit' to exit the program without creating an ISO: listAvailable Windows 11 ARM languages are:
Enter a language tag from the 'Language Tag' colummn of the list, or'list' to reprint the list of languages, or'quit' to exit the program without creating an ISO: en-usen-us is not a valid language tag. Please try again
@mweholt this doesn’t appear to be to anything that you’ve done with unzipping the zip file at first glance. The utility downloads a catalog file from Microsoft that tells it what Windows 11 ESDs are available for download. There’s some kind of issue around that catalog file that’s causing the issue.
I’ve seen issues of downloads from Microsoft having issues on occasion. The first thing I can suggest is retrying the download after waiting a while. And making sure your working directory and any subdirectory are not being scanned by AV in case it’s throwing a false positive.
But ne other thought. Can you run the following command from the Terminal where you’re running w11arm_esd2iso
@Technogeezer I will try your suggestion of waiting a bit/checking AV, but in the meantime:
mike@osx-mbk23 Build % which tar
It’s likely that the utility is picking up the Homebrew version of tar and not the macOS version.
Try modifying your PATH variable to remove /opt/sw/bin and re-run the ‘which’ command. If that comes up with pointing to the released macOS version of tar, then re-run the utility.
If the version of tar is indeed the issue, I will fix this. I can either bundle the catalog, eliminating the need for the download from Microsoft (at the expense of hoping that Microsoft doesn’t change anything) or explicitly using the macOS tar version.
@Technogeezer Okay, cool. I removed /opt/sw/bin from the PATH variable and the app completed and produced
Which is a pretty impressive filename, but I assume it will work fine. Thanks!
@mweholt that’s great news that you were able to get it to complete. And thanks for the note which I’ll consider as a bug report. It’ll be fixed later this week.
Hello, I'm at the stage where I'm trying to install the VMware Tools but get this error message: "The driver package is not supported."
How can I get resolve this?
You have mistyped the command. There is no space between the “setup” and the “.ps1”. The correct command is
Oh geez, how careless of me. Thanks!Now I got Windows 11 up and running, but the resolution doesn't adjust to the size of the window and "Resize Virtual Machine to Fit" under the View menu is greyed out. What might be causing that?
What you’re seeing is a limitation of the video driver for Windows 11 ARM. The console resolution can be changed from within the VM (in Windows settings) and the window will change size based on the resolution you select.. Resizing the window (or going to full screen mode) does not currently trigger a change of resolution in the VM.
We are hoping that will be addressed as VMware provides more complete VMware Tools support. There’s an upcoming Tech Preview and we’re keeping a close eye on it.
Ah, ok. Thanks for clearing that up. I'll keep a close eye on it as well then.
FYI, I just discovered that now there is a new app with a GUI, quite similar to your great tool: CrystalFetch (by Turing Software, LLC: i.e., essentially the UTM developers) - interesting…
@SvenGus Thanks for the head-up. I would love to have the macOS app coding skills to have developed something like this. It's a nice job.
The only issue I have with CrystalFetch is that it's creating ISOs from uupdump. I've not been impressed with how well uupdump sourced builds work for Windows 11 ARM 22H2. But it's been an awhile. It looks like CrystalDump front-ends uupdump script generation, and that the uupdump authors may have fixed issues that prevented 22H2 from building on non-Windows systems, so that's a positive.
I'm going to test this out. I do expect that w11arm_esd2iso is quicker and less disk space intensive than CrystalFetch, I'll post what I find.
Initial tests of CrystalFetch vs. w11arm_esd2iso
Time: 12m40s for CrystalFetch vs 6m14s for w11arm_esd2iso
Disk space usage is about even, about 9GB for US English Home/Pro editions.
But... (and here's the issue in my mind)
The CrystalFetch ISO is 22621.1 with no further updates even though you pick the "latest" build that it displays. This may be because the macOS/Linux versions of the uupdump scripts do not support inclusion of Windows updates to the generated ISO.
The ISO created by w11arm_esd2iso is a 22621.1702 version. This is a much more recent version that includes updates that address some pretty severe security vulnerabilities in the servicing stack and winPE. Fewer updates will need to be applied to get Windows 11 current.
Definitely an advantage given how long windows updates take.
The ideal, thus, would be an app based on your w11arm_esd2iso script with the CrystalFetch GUI: the best of both worlds…
@SvenGus you are reading my mind. I downloaded the source and am preparing to bootstrap my macOS coding knowledge. No guarantees, though.
@Technogeezer, I'll just pipe up probably uselessly that once I solved my /opt/sw/bin PATH problem, your script worked seamlessly, quickly and effortlessly for me. But I understand some folks are more comfortable with GUI, so yeah.
… And if your script has twice the speed and downloads the most recent Windows 11 version available, ideally it should also officially replace the one in their app (if it cannot be improved).
… Also because there seems to be a serious problem with UUPDump on non-Windows platforms:
So, it really looks like your script could be a much better and perhaps the only viable solution for CrystalFetch and its open source forks, in the future: they almost need you, now! 😉 🙂
@SvenGus I was afraid that would be the case that CrystalFetch would inherit the issues with building Windows 11 22R2 on non-Windows platforms. And it's not surprising - looking into the code, they adopted the same script that the uupdump creators use to stitch together the cab files in the installer ISO from the individual uups. It's still noted on uupdump.net that their scripts will produce broken ISOs for Windows 11 22H2 on non-Windows platforms.
IMHO, both CrystalFetch and a future VMware Fusion built-in Windows 11 ISO downloader should adopt your scripts, instead of using the now obsolete macOS UUPDump ones: it would certainly be a cleaner and much more efficient solution.
BTW, CrystalFetch version 2.0.0 now uses the much better ESD to ISO method:
imagine that.. I looked at the source code, and funny thing.... there's a modified version of w11arm_esd2iso...
@Technogeezer first of all, hats off for all the amazing work you've done here, with the utility and the detailed guides! Regarding this utility have you published the source on github or anywhere else?
They explicitly mention your utility here (good):
Now, let’s hope that also Fusion will adopt a similar approach (ESD to ISO)…