GPU Passthrough that actually works. Direct QEMU control without unnecessary complexity. Built for Linux power users who demand excellence.
⚡ Single & Multi-GPU Passthrough
🎯 Direct QEMU Control
🚀 Modern Desktop Virtualization
Modern Desktop Virtualization
🎯
GPU Passthrough Focus
Purpose-built for GPU passthrough with single GPU support, multi-GPU support, and automatic display manager handling.
⚡
Direct QEMU Control
No abstraction layers. Direct QEMU management with full control over your VM configuration and performance.
🖥️
Desktop-First Design
Optimized for desktop and workstation use cases. A Clean TUI with vim-style navigation built for power users.
vm-curator is focused
Designed as a modern alternative for desktop virtualization.
Runs in QEMU/KVM user mode (non-root), with GPU passthrough that actually works.
Designed for desktop use. For servers, try Proxmox. This is for your workstation, by someone who gets it.
GPU Passthrough: The Killer Feature
Two modes. One goal: Native GPU performance in VMs. No compromises.
The magic: Automatically disconnects your GPU from Linux display manager (SDDM, GDM, etc.), passes it to the VM for native performance, then reverses everything on VM shutdown.
✅ Display goes directly to physical monitors
✅ No Looking Glass needed
✅ Native GPU performance
✅ Automatic display manager restart
✅ Script generation and validation
Perfect for: Gaming VMs, 3D workloads, when you only have one GPU

RTX 4090 single GPU setup with SDDM detection
The setup: Dedicated GPU for VM, host keeps its GPU. Uses Looking Glass for viewing VM display while maintaining host graphics.
✅ Host graphics always available
✅ Looking Glass integration
✅ Full VFIO device passthrough
✅ IOMMU group management
✅ Zero host disruption
Perfect for: Multi-monitor setups, when you have multiple GPUs

PCI passthrough with full IOMMU group visualization
🎨
Paravirtualized 3D (virgl)
Don't need full GPU passthrough? vm-curator supports paravirtualized 3D acceleration via virgl — with equal support for NVIDIA and AMD cards. Great for Linux guests that need 3D acceleration without the complexity of VFIO passthrough.
✅ Works with NVIDIA and AMD equally ✅ No VFIO configuration needed ✅ Excellent Linux guest support
Note: virgl works well with Linux guests. Windows guest support depends on upstream driver availability.
Everything Else You Need
🗂️
120+ OS Profiles
Pre-configured settings for everything from DOS to modern Linux distributions. No more guessing QEMU flags.
🔌
USB & PCI Passthrough
Device enumeration and persistent configuration. Your gaming controllers, webcams, and USB devices just work.
🌐
Network Backends
Bridge, NAT via SLIRP, and passt support. Choose the right network mode for your use case.
📁
Shared Folders
virtio-9p integration for seamless host directory sharing.
👤
Headless Support
display=none with process monitoring. Perfect for servers and background VMs.
📸
Snapshot Management
Create, restore, and delete qcow2 snapshots with progress feedback. Time travel for your VMs.
⌨️
Vim-Style Navigation
Keyboard shortcuts that make sense. Mouse support when you want it. Built for efficiency.
🔧
Launch Script Editor
Syntax-aware display of generated QEMU commands. See exactly what's running, tweak as needed.
🚫
No libvirt Dependency
Direct QEMU control means no XML wrestling, no daemon complexity, no permission nightmares.
See It In Action

Main TUI with VM library showing 21 VMs organized by OS family
Main Interface
Single GPU
PCI Passthrough
USB Devices
Settings
Get Started
Quick Install
Requires Rust 1.70+ and QEMU installed
Alternative Methods
From Source
git clone https://github.com/mroboff/vm-curator.git
cd vm-curator
cargo build --release
Package Managers
- Arch Linux: Available on AUR
- Binary releases: DEB, RPM, AppImage on GitHub Releases
Prerequisites
QEMU qemu-system-* binaries
libudev libudev-dev (Debian/Ubuntu) or libudev (Arch/Fedora)
Rust 1.70+ (for building from source)
First Run
1
Run vm-curator
Configure your VM library location
2
Press 'c' to create
Launch the guided VM creation wizard
3
Set up GPU passthrough
Configure single or multi-GPU mode in settings