This may just become my next most favorite project on GitHub!
For anyone who would create their own OS, or just experiment with other OS'es, this could be a godsend!
The set of ideas which gives rise to this tool are brilliant, and while I haven't reviewed all of the code for potential security implications (as I would want to if I were deploying it to a production server in a business environment) -- it looks very well thought out at first glance!
Extra kudos for having a flake.nix (for us Nix users!)
And extra extra kudos for having Alpine, Nix, ReactOS, TinyCore and OpenBSD as downloadable OS choices!
In the future, I'd love to see Windows XP, Windows 2000, and Windows NT too (assuming that Microsoft would permit that!) -- but that would just be the icing on the cake!
Short review: There's potentially something for everyone here! (Well, any OS person! Could Minix 3 be added in the future? :-) )
Long review: Will definitely have to watch this project in the future, to see where it goes!
My first reaction was: Fuck! Terrible timing!! I just spent the last few days (during some time off from work) manually setting up macOS and Windows qemu VMs on my homelab running Proxmox, just to see if I could do it. And navigating all the janky, old tutorials, forums full of "try this" junk, hitting roadblock after roadblock (ProTip: macOS versions > Monterey will NOT run on Ivy Bridge processors in a virtualized environment) and trying to filter out and dodge AI garbage advice, was a real slog. Why didn't I see this article the first time it made the rounds on HN???
My second reaction was in line with yours. This is awesome. Bookmarked already. +1 for the suggestion of doing more ancient Windows versions.
I installed Sequoia but it’s painfully slow on a 4 core 3ghz something or other. I previously did the one after high sierra and it’s reasonably snappy, but APFS outdated for my situation
I've been trying to do something similar to set up Windows VMs with developer tools. This would be awesome if there was a way to inject a `ps1` script where we could go through the awkwardness of installing choco and various dev tools.
For anyone interested, the magic incantation in the autoattend.xml is:
Redirecting to COM1 is a fun hack I discovered that allows you to remotely monitor these from build scripts.
Even better would be figuring out how to slipstream the choco packages into the ISO - it's not super reliable to install these packages in my recent experience.
I thought that macOS was proprietary, and that apple only allowed it to be run on apple hardware. Just last month, I used incus to test a software package in 6 Linux distributions. I want to also test the package in macOS. Must I get a license from apple to do that with Quickemu?
Encouraged by the replies here, I tried to get quickemu to setup macOS on my AMD based desktop. The emulated machine crashed trying to boot macOS, and I gave up after a couple of hours.
Is UTM buggy on Apple Si? I have been running an aarch64 Ubuntu VM on my M4 Mini for a while without any problems. Haven't tried macOS or Win guests though.
I'm not even sure it supports aarch64 hosts. There doesn't seem to be anything in there re: Arch ARM which sucks because that's a bit of a pain to set up.
For something that is a bash wrapper over qemu these limitations are surprising.
I have to try this. All my previous attempts to get to grips with qemu left me with the impression that it’s strictly for rocket scientists. This might ease the learning curve for me.
This type of thing always makes me think about an alternate timeline where Docker never got popular because VM runtimes and tooling did everything Docker can do, better.
I'll keep it in mind but honestly learning the basics of QEMU is probably a safe bet. It's a bit like bash, you might like it or not but decades later it's still there, on most devices. Plenty of tools rely on it and getting the basics right is really a matter of following a 15min tutorial.
25 comments
[ 1.2 ms ] story [ 47.3 ms ] threadLXD manages qemu VMs and supports snapshotting, live migration, and a number of storage drivers: https://news.ycombinator.com/item?id=45270468
virtio-gpu-rutabaga works with Android VMs on qemu, but does it work with Win/Mac/Lin: https://news.ycombinator.com/item?id=42921315
This may just become my next most favorite project on GitHub!
For anyone who would create their own OS, or just experiment with other OS'es, this could be a godsend!
The set of ideas which gives rise to this tool are brilliant, and while I haven't reviewed all of the code for potential security implications (as I would want to if I were deploying it to a production server in a business environment) -- it looks very well thought out at first glance!
Extra kudos for having a flake.nix (for us Nix users!)
(If you're using NixOS or the Nix package manager, you can download it here https://search.nixos.org/packages?channel=25.11&query=quicke... , i.e., "$ nix-shell -p quickemu")
And extra extra kudos for having Alpine, Nix, ReactOS, TinyCore and OpenBSD as downloadable OS choices!
In the future, I'd love to see Windows XP, Windows 2000, and Windows NT too (assuming that Microsoft would permit that!) -- but that would just be the icing on the cake!
Short review: There's potentially something for everyone here! (Well, any OS person! Could Minix 3 be added in the future? :-) )
Long review: Will definitely have to watch this project in the future, to see where it goes!
My second reaction was in line with yours. This is awesome. Bookmarked already. +1 for the suggestion of doing more ancient Windows versions.
Proxmox was a good start but I don’t need it (I think)
I installed Sequoia but it’s painfully slow on a 4 core 3ghz something or other. I previously did the one after high sierra and it’s reasonably snappy, but APFS outdated for my situation
Quickemu: Quickly run optimised Windows, macOS and Linux virtual machines - https://news.ycombinator.com/item?id=39188432 - Jan 2024 (133 comments)
For anyone interested, the magic incantation in the autoattend.xml is:
Redirecting to COM1 is a fun hack I discovered that allows you to remotely monitor these from build scripts.Even better would be figuring out how to slipstream the choco packages into the ISO - it's not super reliable to install these packages in my recent experience.
For something that is a bash wrapper over qemu these limitations are surprising.
Doing stuff like this, and integrating it into the main project puts the whole thing at risk.
The only real reason to MacOS is it's tight integration with Mac hardware.
Weird flex...
To start your Windows virtual machine run: quickemu --vm windows-10.conf
> quickemu --vm windows-10.conf ERROR! QEMU 6.0.0 or newer is required, detected 10.1.2.