-
Notifications
You must be signed in to change notification settings - Fork 1.7k
GPU passthrough and Windows VM with Looking Glass #3454
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
GPU passthrough and Windows VM with Looking Glass #3454
Conversation
|
Wow, this seems amazing! Thanks for making this! 🙌 The black-screen risk is real. I had to turn off GPU acceleration in Brave/Chromium because I got black screens during Google Meet meetings regularly. I assume this could be related (don't have to be). Do you think this is a one-off, or that could happen again? Or is that a misconfiguration or a bug in the latest packages? (I didn't have that before, so when I troubleshooted, I thought it could be because of a Mesa or similar update, but I'm not sure. |
|
The black screen risk I mentioned is specifically about the first boot after GPU passthrough setup - it happened to me during testing when something didn't configure correctly (kernel params or Hyprland trying to start on the wrong GPU). Your Brave/Chromium issue sounds different. |
|
This is truly amazing. I would never have believed I would see GPU-heavy tasks like playing Counter-Strike 2 in a Windows VM running via Docker on Linux, in a home setting. Good job! |
|
This is just awesome, hope this gets implemented into the main branch! |
Installation and launch of Looking Glass for low-latency VM display with IVSHMEM setup and permission management.
Dedicated GPU passthrough with automatic driver binding, IOMMU setup and state management. Mode switching, setup wizard and diagnostics.
GPU passthrough, Looking Glass support and hardware spoofing. Installation wizard and lifecycle management.
bcea735 to
ce25f49
Compare
SPICE socket 666 → 660+kvm. Use sg kvm for group refresh.
Detects if dockurr/windows image has SPICE support and auto-builds if missing. No manual workaround needed - transparent during installation.
ce0dc4c to
d7d975c
Compare
Replace echo with emoji (❌,⚠️ , ✓) with msg_* functions. Added msg_* to omarchy-looking-glass-install.
d7d975c to
72664d3
Compare
Reduces user friction during installation: consolidates sudo prompts, eliminates YAY/pacman interactive prompts, hides Docker build logs. Fixes desktop launcher bug. Adds snapshot integration for GPU passthrough.
GPU passthrough and Windows VM with Looking Glass
TL;DR: Run Windows 11 with dedicated GPU passthrough, Looking Glass for low-latency gaming and hardware spoofing for anti-cheat compatibility. Tested with Fortnite and Counter-Strike 2.
Demo: Omarchy: GPU passthrough + Windows 11 VM installation - Complete setup, gaming with Fortnite and Counter-Strike 2, benchmarks and switching GPU back to host for LM Studio.
See discussion thread for community testing and feedback: #3455
What's New
This PR adds GPU passthrough automation, Looking Glass integration and Windows VM enhancements:
GPU Passthrough Tools (omarchy-gpu-passthrough)
Automated GPU passthrough with mode switching between VM and host usage.
Commands:
What it does:
Files added:
omarchy-gpu-passthrough- Main dispatcheromarchy-gpu-passthrough-bind- Mode controlomarchy-gpu-passthrough-info- Diagnosticsomarchy-gpu-passthrough-setup- Setup wizardomarchy-gpu-passthrough-utils- Shared libraryLooking Glass Integration (omarchy-looking-glass-install, omarchy-looking-glass-launch)
Low-latency VM display using shared memory (IVSHMEM). Near-native gaming performance.
Commands:
What it does:
Note: Default escape key is Scroll Lock. If your keyboard lacks this key, configure a different key in
~/.config/looking-glass/client.inibefore launching (see Looking Glass documentation for key names).Files added:
omarchy-looking-glass-install- Installation scriptomarchy-looking-glass-launch- Client launcherWindows VM Management (omarchy-windows-vm)
Enhanced with GPU passthrough, Looking Glass support and hardware spoofing.
New commands:
Existing commands:
What's new:
show-composecommand for testing docker-compose generationInstallation options:
~/Windowsis never removed (preserved across reinstalls)Both installation and uninstall are idempotent (safe to run multiple times).
Files modified:
omarchy-windows-vmHardware Requirements
BIOS Settings (one-time):
Hardware:
Tested Hardware:
Known working: NVIDIA RTX 5070 (dedicated), AMD Ryzen 8700G (iGPU)
Not tested: Other NVIDIA/AMD models, Intel Arc GPUs
Quick Start
1. Install GPU Passthrough
2. Install Windows VM
omarchy-windows-vm install # Interactive wizard (~20 min)During installation you'll be prompted to install Looking Glass. Installation is automated if you choose yes. You can also install manually with
omarchy-looking-glass-install.3. Launch Windows VM
4. Switch GPU back to host (optional)
omarchy-windows-vm stop omarchy-gpu-passthrough mode host # Use GPU on host (CUDA, LM Studio, etc.)Known Limitations
Experimental Status
Only tested on one hardware configuration. No community testing yet. Backup your system before installation.
Black Screen Risk
Can occur after first GPU passthrough setup (first boot with blacklisted GPU). System blacklists dedicated GPU for VM passthrough. If Hyprland configuration fails, desktop won't start.
Recovery:
Ctrl+Alt+F2to switch to TTY2omarchy-gpu-passthrough setup(re-configure)OR:
omarchy-gpu-passthrough setup --uninstall(remove)Prevention: Set "Primary Display = IGD" in BIOS before setup.
Anti-Cheat Compatibility
Hardware spoofing included (SMBIOS, CPU flags).
Tested: Fortnite/EasyAntiCheat, Counter-Strike 2
Not tested: Valorant/Vanguard, BattlEye, other anti-cheat systems
Upstream Dependency (Temporary)
Waiting for new
dockurr/windowsrelease. SPICE support fix merged toqemus/qemu(PR #978) butdockurr/windowshasn't released new version yet.Workaround (for testing now):
This creates local
dockurr/windows:latestimage. Scripts will use this local image. Workaround won't be needed after new release.Other Limitations
omarchy-gpu-passthrough setup --uninstallRelated Discussion
This addresses the feature request from #3307
Community testing and feedback welcome in the discussion thread.
Credits
Thanks to @sspaeti for the original
omarchy-windows-vmimplementation and @dhh for Omarchy and inspiration.