Since I have gone through the process once (27 April 2025) I still have the files, therefore maybe it can be done without a second operational Windows machine. However, I did need one and maybe if the Windows USB and/or Linux Rapid Storage Technology drivers update and no longer work, you will need one as well. Edit for Gitea: if you e-mail tea@cubes.link, I can get the latest files for you to eliminate the need for another Windows machine.
Get a Windows 11 .iso from here
You can't just grab the .iso and install it with Balena or Rufus. There is no bootloader like there is in Linux and other .iso operating systems. It will write to the USB but it will complain about the lack of bootloader when you try to get started with the drive.
There is a way to configure Rufus in Windows, but I just used woeusb in Linux and it is really easy. Here's the guide in full
First, I would recommend removing all other USB storage devices except the one you wish to write. It would be a shame if you accidentally wiped the wrong device.
sudo add-apt-repository ppa:tomtomtom/woeusb
sudo apt update
sudo apt install woeusb
It will be sda (/dev/sda) or something like that
lsblk
sudo umount /dev/sda*
Make sure to open terminal where the .iso is then run:
sudo woeusb --device Win11_23H2_EnglishInternational_x64.iso /dev/sda
Be sure to use the correct filename, it may not be the same as here, and the correct path, there's a chance that it isn't /dev/sda if you have other devices. Woeusb will let you know when it is done.
Load the blank nvmE and insert the Windows 11 USB. The setup will load, and you will probably not have any drivers at all. You will need to use the keyboard to navigate, unless you have a bluetooth mouse on hand. Tab works fine enough, return to confirm a choice. Spacebar to select checkboxes. Left/right arrow keys to browse for files in the file browser tree.
There's a probability that installing Windows from scratch generates an issue where Windows cannot see your m.2 SSD. This is because Intel has some drivers you need for Windows to recognise it. Luckily, you can install these in the setup screen.
I have the files I generated for this on a 64 GB Cruzer San Disk. First I will explain how to obtain/generate these files in a fully operational Windows machine with access to the internet. There's a chance that my files are out of date to be re-used.
Download SetupRST.exe from here.
In Windows, open a Powershell/cmd in the folder where you saved SetupRST.exe. Run:
./SetupRST.exe -extractdrivers SetupRST_extracted
Put the new SetupRST_extracted folder on a USB, you will need this when installing Windows. When in setup, Browse for drivers and keep clicking on folder in SetupRST_extracted until you get to VMD, then confirm this folder. Windows will find the driver and add it to a list, you can then just go ahead and confirm this. Once installed, the m.2 will show up in the list and you can continue with Windows 11 setup.
There will be no drivers installed, including no network drivers. You need to run a command to skip network setup, if you want to avoid being forced to use ethernet and set up a Microsoft account. If your laptop has a key or switch to disable network interface completely, this will work too. My current MSI Cyborg does not, so I have to run this command.
Hit shift + F10 to bring up a command prompt window. Enter OOBE\BYPASSNRO and the setup will restart, this time without forcing you to have an internet connection to continue. You will be able to set your own username and password.