Hi. I've not really used Windows since the early 2000. Even then not much.
I have a single mini PC with windows on. And use it only for device firmware updates. As a ham radio nerd. You get many devices that can only be modified via windows.
Anyway it was set up with dual boot the normal way. Windows first as it came with it. Then make a real Linux partition to use the PC on my boat while travelling.
Now the issue is I am upgrading the Mini PC. Basically replacing memory and the tiny 128gb ssd. So need to install it all from scratch.
I have order a copy of windows 11 from ebay. (At a price I consider acceptable for the crap)
But its going to take several days to arrive. And I would like to be more efficient.
So I am hoping folks can advice me on the best way to set up the PC with Linux first then install Windows 11 later. Knowing windows has a habit of messing up grub etc.
Why wait for a copy of windows when you can just download the ISO from Microsoft?
Honestly, now a days USB pass through is so good that a virtual machine works well enough for firmware upgrades. Especially true if you have a separate usb controller and you pass the whole PCIe device! It's extremely rare I ever need bare metal.
You can use windows in indefinite trial version with Activate Windows watermark.
Grab a windows iso from the website. Put it on USB stick (I use Ventoy). And install. I would keep windows bootlaoder and grub on separate partitions.
There’s a lot of people saying not to pay for windows or not to use eBay or to download from Microsoft directly or to use massgrave instead but there are very few possibly no responses explaining why that’s a better option than buying from eBay.
First things first, and I know this is gonna get some people responding with the ol’ “nuh-uh”, but there’s compromised counterfeit install media for sale. You most likely don’t know how to tell the good from the bad. The bad can also look very, very good.
If you want to know you’re getting the good stuff straight from Microsoft, use uupdump to create an updated install media for whatever sku(version of windows) you want and use rufus to make the usb installer (you’ll need to be inside a windows vm or on your old version of windows). The reason I say use Rufus is because it gives you the opportunity to turn off some stuff like requiring a Microsoft account in the 11 install process.
Once that’s done and installed, you can activate however you like, either with massgrave or with a key for your sku purchased from Microsoft directly.
Installing Windows will always nuke the existing bootloadet with the Windows one. You can install Linux just fine now, then Windows, but you'll need go back and set the bootloader back to grub or whatever your distro prefers. If you don't know how to do this yet, just look it up. You'll need to know how to do it in the future, since Windows Updates will randomly do this again in the future.
Also make sure you leave empty space on the drive for the windows partition when partitioning for Windows. You can resize later in Linux, before installing Windows if that's easier.
If you're buying a new SSD, you probably won't need to worry about this. Just make sure to boot the installer in UEFI mode (usually the default). In the worst case, you'll need to go into the motherboard settings and put Linux above Windows in the boot menu.
Only in MBR mode. On computers less than 10 years old, you can go into the UEFI settings and put Grub above the Windows bootloader in the boot order list.
Some broken computers only boot the "flash got wiped, let's hope this one works" fallback bootloader. Windows and Grub will fight for that one, but that should only happen if your motherboard's UEFI settings got reset or if the firmware is buggy.
I also need some old app working only in Windows, I spent hours on wine trying to make them work, but no. So in the end, I installed Linux only, then set up a simple QEMU of WinXP SP3 image, just to install those programs (they need serial ports, and I can redirect the ttyUSB0 to QEMU as a COM1) and that's it, no more *real windows.
Omg, you may have saved me a future headache with FORSCAN. It has a similar issue, where it expects the device on a COM port (which Windows handles automatically), but finding and successfully assigning it is a monumental headache due to how the OBD II device works.
If windows was installed once on a motherboard if you install windows from USB again on the same motherboard even after wiping it will remember your purchase and not make you pay again
You can go through the activation troubleshooter and say you replaced the motherboard, I did this with my brother's computer and used a licence from a 5 year old netbook on a modern desktop. It might've needed a Microsoft account though.
Do you have room for 2 SSDs in the case? If so, install windows on one and Linux on the other. Then set the BIOS to boot from the Linux disk and grub will let you decide which OS to boot from. This way, windows won’t interfere with Linux.
I’ve been using this for months and it works well. Except when I hit a Debian bug that configured grub to not look for OSes on other drives! But that was fixed.
Don't buy windows from eBay! You can download an iso for free from microsoft. Flash that to a USB and install it that way (or as others have suggested, just use a VM). It won't be activated but you don't need that for what you're doing: https://www.microsoft.com/software-download/windows11
I have no experience with setting up Windows after Linux. I've always done it the other way around.
However, what version of Windows was it running before? If you haven't switched the components yet, you can use Windows to make a Windows boot flash drive or DVD officially using the "Windows Media creation Tool." It's a free download from an official Microsoft page. I don't think you needed to buy Windows 11 at all. Both windows 10 and 11 will recognize that your hardware (motherboard mostly, I believe) is registered with a license, and it will simply activate your Windows online, no hassle. It's like the one thing Microsoft got right.
Could always attempt firmware updates from within a Windows VM but I suspect your mileage may vary and there’s always the risk of bricking a device when updating firmware (and a VM may increase that risk, I don’t know).
I would echo the suggestion of others, simply add a second drive, don’t dual boot, just change the target device for boot in the UEFI settings when you need to load windows. Also, I wouldn’t bother buying windows if you will only boot it for firmware updates and that’s it — waste of money — and with what MS is doing with windows as of late (ads, Recall, etc), I have personally dumped windows altogether.
Stop using GRUB, it's a horrible legacy sprawling mess, most of which you don't need
Windows doesn't delete the bootloader with EFI boot, just make sure you have free partition space for it to create the system partition and a large enough EFI partition.