Show HN: VM-curator – a TUI alternative to libvirt and virt-manager
I've long wanted to harness QEMU/KVM for my desktop virtual machines, but I'm befuddled by virt-manager's lack of support for working NVIDIA 3D acceleration, dogmatic embrace of ugly XML, and the puzzling UI decision of having to click what seems like 15 buttons to attach an ISO to a VM image. When I further learned that NVIDIA's broken 3D acceleration is the fault of libvirt as opposed to QEMU's virtio driver, I had an idea...

Behold, vm-curator! A fast and friendly VM management TUI written in Rust. You can create, configure, organize, and manage VMs directly with QEMU. No libvert. No XML. No wonky UI's. Just the right level of friendliness, customization, and speed to be really really useful.

The best part? 3D para-virtualization works with NVIDIA cards (via virtio-vga-gl!) No jumping through hoops to get GPU passthrough working!

(Disclaimer: This works great with other guest Linux VMs, but is not suitable for Windows gaming. If you want to game on Windows within a VM, passthrough is a must. vm-curator will have fast and friendly support soon.)

Looking for contributors (especially to help with the ascii art,) and donations are welcome. (Claude was a big help, but this was not a vibe-coded affair. We pair-programmed approx. 10,000 lines of code here. It was a great way to learn Rust, actually!)

How is this possible? I remember reading something about 3D para-virtualization not being supported on NVIDIA consumer GPUs.
Does it fetch the hardrive inages for all these preconfigured ones from somewhere? That would be a huge timesaver.
From https://news.ycombinator.com/item?id=46433355 re: quickemu, LXD snapshots and live migration, virtio-gpu-rutabaga:

> IOMMU GPU passthrough with device selection would be a helpful feature: https://www.google.com/search?q=gpu+passthrough+qemu

rutabaga_gfx does GPU paravirtualization: https://github.com/magma-gpu/rutabaga_gfx

IOMMU pass-through is the next feature I'm working on, but I felt it was now time to release the V1. Currently, vm-curator supports:

- VM creation with over 100 different OS profiles, built for KVM and emulation - 3D para-virtualization support using virtio-vga-gl (virgl) - UEFI and TPM support (auto-configured for OSes that need it, like Windows 11) - QCOWS2 Snapshot support. - USB Pass-through support and management.

There is also a rich metadata library with ascii art, descriptions of OSes, and fun-facts.

VM Creation with IOMMU will require the following for GPU pass-through: - a motherboard capable of proper IOMMU support. - 2+ GPUs, plus a dummy HDMI or DP1.4 plug for the passed-through GPU - Looking-Glass for display

VM-curator can host and manage other gpu-passthrough configurations, as the application supports editing each VM's launch script, but the above profile is what I'm planning to put into the creator system.

I have a TRX40 (Threadripper) motherboard, which will serve as an ample test-bed, but I still need to acquire a second GPU.