A Desktop VM Manager
Built Right

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
vm-curator - Main Interface
vm-curator main interface showing VM library with 21 VMs organized by OS family

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.

🎯

Single GPU Passthrough

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

Single GPU passthrough setup showing RTX 4090 configuration

RTX 4090 single GPU setup with SDDM detection

🖥️

Multi-GPU Passthrough

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 device passthrough dialog showing IOMMU groups

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.

Get Started

Quick Install

cargo install vm-curator

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

Community & Support

vm-curator is a passion project built to bring modern desktop virtualization to Linux. Contributions welcome from anyone who shares the vision.

Help Wanted

  • GPU Testing: Different hardware configurations
  • OS Profiles: More distributions and versions
  • Documentation: Usage guides and tutorials
  • Package Maintenance: Distribution-specific packages
  • ASCII Art: Cool terminal banners and OS logos

Show Appreciation

If vm-curator improved your virtualization workflow or got your gaming VM working:

Donations support existing work, not future feature guarantees.