lavabit / robox

The tools needed to robotically create/configure/provision a large number of operating systems, for a variety of hypervisors, using packer.
620 stars 139 forks source link

Request more architectures for Windows #222

Closed mcandre closed 2 years ago

mcandre commented 2 years ago

Tinkerers have found it possible to install Windows on alternate architectures, such as ARM, PowerPC and MIPS, via qemu / libvirt.

We could expand the supported guest environments this way, which helps developers to test applications on embedded devices.

https://gamozolabs.github.io/fuzzing/2021/11/16/rust_on_nt_mips.html

timschumi commented 2 years ago

I'd say that Windows NT 4.0 is more of a support burden than what it actually provides in usefulness, especially since we haven't even figured out how to put normal Windows or alternative architectures into a box in a way that fits into the existing roboxes infrastructure.

That said, redistributing prebuilt Windows images sounds like a legal landmine that might go off at any moment.

ladar commented 2 years ago

@timschumi is absolutely right. I already know how to create Windows base images, for both VMs and physical machines. I was doing it long before I ever heard of Vagrant. I avoided it because a) it's a legal quagmire, b) I personally don't have the need, and c) there are other priorities should I find myself looking for a task.

It's also worth mentioning that Windows doesn't fit the current Robox profile ... in the sense that the project is focused on creating CLI environments for testing software, and deploying services.

I've heard rumors that it might be possible to install Windows Server without it's GUI, but since I've moved all my stuff off Windows, I can't speak to it, nor would I know how to manage a Windows server strictly via the CLI. My guess is it requires heavy duty Power Shell skills that I lack.

A headless MacOS box is a better fit, with its BSD core. But it's tricky, and would be time consuming to maintain. And like Windows, I don't have a personal need.

As for alternate architectures, that is definitely something I want to support. It feels like libvirt and Parallels on arm64 are the most pressing, but I don't have the hardware to make it happen. My only arm devices are tablets, and wouldn't be well suited to run a VM, let alone handle building the work build the images. So until someone steps forth with a Mac Mini (we use an Intel Mac Mini to build the current Parallels boxes) with sufficient RAM, disk space, and an M1 processor I can't build Parallels boxes for arm. Likewise, unless someone can provide a a server with an arm CPU, I won't be able to add libivirt images for arm either.

If anyone has contacts at Apple/Parallels, or Ampere to get these donated, it would certainly be appreciated. Otherwise I'll have to wait till I can find this hardware at bargain basement prices on ebay. Keep in mind, this project doesn't have an annual budget.

As an aside, the ebay alert I setup a couple years ago for an Ampere server was triggered for the time ever just 10 days ago. But the prices are still a bit high.