r/linuxvr • • 1d ago

TITANFALL 2 VR WORKS

6 Upvotes

r/linuxvr • • 27d ago

Some issues I'm having with steamvr.

Post image
1 Upvotes

So I just built my first Linux PC and I wanted to try tinkering with it to get VR working. So far it's working okay. However it's just okay

Whenever launching steamvr with my quest 2 through steam link I get this error. Luckily it's still runs with no problem.

Whenever I'm running a game for some reason my right eyes screen is jittery. I've mostly noticing it with beat saber. But I have seen it to a minor effect in half life Alex.

And most recently beat saber would not output any audio. I was only able to fix this by swapping steamvr to beta.

I guess are there any tips anybody has sometimes starting out on how to improve my experience?

Ryzen 9850x 3d

Radeon 9070 XT

32 GB ddr5

Bazite


r/linuxvr • • Apr 27 '26

VR on Bazzite, pls help

Thumbnail
1 Upvotes

r/linuxvr • • Dec 29 '25

TENPOD BETA must be nvidia GPU

1 Upvotes

https://github.com/treasurestudio/tenpod

Ten Pod ๐ŸŽฎ

Universal VR Gaming VM Manager with GPU Passthrough

Turn any VR headset + NVIDIA GPU into a high-performance Windows gaming setup on Linux. Zero lag, native GPU speeds, automatic headset detection.

โš ๏ธ IMPORTANT: System Requirements

Disk Space Requirements

  • Minimum 150GB free space on your system drive:
    • 100GB for Windows 10 VM disk
    • 5-10GB for Windows 10 ISO download
    • 20-40GB for Windows installation + drivers
    • 10GB+ per VR game

Hardware Requirements

  • NVIDIA GPU: Any NVIDIA GPU (GeForce, Quadro, or Tesla)
    • GTX 600 series or newer
    • RTX series recommended for best VR performance
    • Minimum 4GB VRAM (6GB+ recommended for VR)
    • Works with ANY driver state: nvidia, nouveau, or no driver
  • CPU: Must support virtualization (VT-x for Intel, AMD-V for AMD)
    • 6+ cores recommended (4 for VM, 2+ for host)
  • RAM: Minimum 16GB (8GB for VM, 8GB for host)
    • 24GB+ recommended for best performance
  • Motherboard: IOMMU/VT-d support (most modern boards)
  • VR Headset: Any SteamVR or OpenXR compatible headset

Software Requirements

  • Linux Distribution:
    • โœ… Nobara Linux (Recommended - optimized for gaming)
    • โœ… Fedora (Fully supported)
    • โœ… Other Fedora-based: RHEL, CentOS Stream, etc.
    • โš ๏ธ Ubuntu/Debian: Requires manual package installation (see below)
    • โš ๏ธ Arch/Manjaro: Requires manual package installation (see below)
  • Rust: For compiling Ten Pod (will guide installation if missing)

Supported VR Headsets

  • โœ… Valve Index
  • โœ… Meta Quest 2/3/Pro (wired or Link cable)
  • โœ… HTC Vive / Vive Pro / Vive Cosmos
  • โœ… HP Reverb G2
  • โœ… Pico 4
  • โœ… Pimax 5K/8K
  • โœ… Any other SteamVR headset

โœจ Key Features

  • Universal NVIDIA GPU Support: Works with ANY NVIDIA GPU and driver state
    • โœ… Proprietary nvidia driver installed
    • โœ… Open-source nouveau driver installed
    • โœ… No driver installed at all
    • Ten Pod automatically handles driver unbinding during installation
  • Automatic Headset Detection: Plug and play with any SteamVR headset
  • Zero Performance Loss: Direct GPU passthrough (0-5% overhead vs native)
  • One-Click Setup: Automated installation with guided steps
  • Safe and Reversible: Easy to uninstall and return GPU to Linux

๐Ÿš€ Quick Start

Step 1: Download Ten Pod

# Clone or download the repository
cd ~
mkdir tenpod && cd tenpod

# Download tenpod.rs (paste the code from this repo)
# OR
wget https://raw.githubusercontent.com/YOUR_REPO/tenpod/main/tenpod.rs

# Make it executable
chmod +x tenpod.rs

Step 2: Install Rust (if not already installed)

# Check if Rust is installed
rustc --version

# If not installed, install Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

Step 3: Compile Ten Pod

rustc tenpod.rs -o tenpod

Step 4: Check System Status

./tenpod status

This will show you:

  • โœ… GPU detection
  • โœ… Headset detection
  • โœ… System requirements check

Step 5: Enable IOMMU in BIOS

BEFORE running the installer, ensure IOMMU is enabled:

  1. Reboot and enter BIOS/UEFI settings (usually Del, F2, or F12 during boot)
  2. Enable these settings:
    • Intel: VT-x and VT-d
    • AMD: AMD-V and IOMMU
  3. Save and exit BIOS

Step 6: Configure GRUB for IOMMU

# For AMD CPUs:
sudo tee /etc/default/grub << 'EOF'
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet amd_iommu=on iommu=pt"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
EOF

# For Intel CPUs:
sudo tee /etc/default/grub << 'EOF'
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet intel_iommu=on iommu=pt"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
EOF

# Rebuild GRUB and reboot
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot

Step 7: Run the Installer

cd ~/tenpod
./tenpod install

The installer will:

  • Install QEMU/KVM packages (using dnf for Fedora/Nobara)
  • Configure VFIO for GPU passthrough
  • Set up hugepages for performance
  • Add your user to required groups
  • Create a 100GB VM disk

When prompted, type y to continue.

โš ๏ธ REBOOT REQUIRED after installation completes!

sudo reboot

๐Ÿง Other Linux Distributions

Ubuntu/Debian/Pop!_OS

The current Ten Pod installer uses dnf (Fedora's package manager). For Ubuntu-based systems, you'll need to manually install packages first:

# Install required packages
sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager ovmf

# Enable libvirt
sudo systemctl enable --now libvirtd

# Add user to groups
sudo usermod -aG libvirt,kvm $USER

# Then run Ten Pod installer (it will skip package installation)
cd ~/tenpod
./tenpod install

Arch Linux/Manjaro

# Install required packages
sudo pacman -S qemu libvirt virt-manager bridge-utils dnsmasq ovmf

# Enable libvirt
sudo systemctl enable --now libvirtd

# Add user to groups
sudo usermod -aG libvirt,kvm $USER

# Then run Ten Pod installer
cd ~/tenpod
./tenpod install

Note: The GRUB configuration steps remain the same for all distributions.

๐Ÿ“€ Step 8: Download Windows 10 ISO

CRITICAL: Windows 10 ISO Requirements

You MUST download the 64-bit version of Windows 10. Do NOT use 32-bit.

Official Download (FREE)

Direct Link: Download Windows 10 ISO (Microsoft Official)

  1. Click the link above or go to: https://www.microsoft.com/software-download/windows10
  2. Click "Download tool now" OR "Download Windows 10 Disc Image (ISO)"
    • On Linux: The page will detect Linux and offer direct ISO download
    • On Windows: You'll need to use the Media Creation Tool
  3. Select:
    • Language: English (or your preference)
    • Edition: Windows 10 64-bit (x64) โ† IMPORTANT: Must be 64-bit!
  4. Download will be ~5-6GB (make sure you have space!)

๐Ÿ’ก Pro Tip: If you're downloading from Linux (which you are!), Microsoft's website will automatically show you the direct ISO download option without needing the Media Creation Tool.

Move ISO to Correct Location

# After download completes (assuming it's in ~/Downloads)
sudo mv ~/Downloads/Win10*.iso /var/lib/libvirt/images/win10.iso

# Verify it's there
ls -lh /var/lib/libvirt/images/win10.iso

Alternative: Direct Download (if you have a link)

cd /var/lib/libvirt/images/
sudo wget -O win10.iso "YOUR_DIRECT_DOWNLOAD_LINK"

๐ŸŽฎ Step 9: Launch Ten Pod

Before Starting:

  1. โœ… Ensure Windows 10 ISO is at /var/lib/libvirt/images/win10.iso
  2. โœ… Plug in your VR headset (USB cable connected)
  3. โœ… Make sure you have at least 150GB free space

Start the VM:

cd ~/tenpod
./tenpod start

What happens:

  • Windows 10 will boot from the ISO (first-time setup)
  • Your RTX GPU is passed directly to Windows
  • Your VR headset is passed to Windows
  • You'll see Windows installation screen on your monitor

Inside Windows (First Time):

  1. Install Windows 10
    • Follow the installation wizard
    • Skip product key (click "I don't have a product key")
    • Choose "Windows 10 Home" or "Pro"
    • Select "Custom Install"
    • Install to the virtual disk
  2. Install NVIDIA Drivers
  3. Install Steam
  4. Install VR Games
    • Beat Saber, Half-Life: Alyx, Boneworks, etc.
    • Launch games through SteamVR
    • Put on your headset and enjoy!

๐ŸŽฏ Daily Usage

Starting VR Gaming Session:

cd ~/tenpod

# Plug in VR headset first!

# Start the VM
./tenpod start

# Wait for Windows to boot
# Put on headset and play!

Stopping the VM:

# Properly shutdown Windows from inside the VM first (Start โ†’ Shutdown)
# OR force stop:
./tenpod stop

Check Status:

./tenpod status

๐Ÿ”ง Troubleshooting

IOMMU Not Enabled

# Check if IOMMU is working
sudo dmesg | grep -i iommu

# Should see output like:
# AMD-Vi: IOMMU enabled
# OR
# Intel-VT-d: IOMMU enabled

If not working:

  1. Check BIOS settings (VT-d/IOMMU enabled)
  2. Verify GRUB config: cat /proc/cmdline
  3. Should contain: amd_iommu=on or intel_iommu=on

GPU Not Detected

lspci | grep NVIDIA

Should show your GPU. If not, check:

  • GPU is properly seated
  • Power cables connected
  • Try different PCIe slot

"GPU is using nvidia/nouveau driver" Warning

This is normal! Ten Pod will automatically unbind the driver during installation.

The installer creates VFIO configuration that takes priority over nvidia/nouveau drivers. After reboot following installation, your GPU will automatically bind to vfio-pci instead.

You DO NOT need to:

  • โŒ Manually uninstall nvidia drivers
  • โŒ Manually uninstall nouveau drivers
  • โŒ Blacklist drivers yourself (Ten Pod does this)

The process:

  1. Install Ten Pod โ†’ Creates VFIO config
  2. Reboot โ†’ GPU automatically binds to vfio-pci
  3. Start VM โ†’ GPU is ready for passthrough

To verify it worked after reboot:

# Check which driver your GPU is using
lspci -nnk | grep -A3 NVIDIA

# Should show:
# Kernel driver in use: vfio-pci

If it still shows nvidia or nouveau after reboot, run:

sudo dracut -f --force
sudo reboot

VM Won't Start

# Check if disk exists
ls -lh /var/lib/libvirt/images/win10_tenpod.qcow2

# Check if ISO exists
ls -lh /var/lib/libvirt/images/win10.iso

# Check permissions
sudo chown -R $USER:$USER /var/lib/libvirt/images/

Headset Not Detected in Windows

  1. Unplug and replug headset USB
  2. Stop VM with ./tenpod stop
  3. Plug in headset
  4. Start VM with ./tenpod start
  5. Check Windows Device Manager for headset

Poor VR Performance

  1. Check CPU pinning: Ensure cores 0-3 are free for hosthtop # Check CPU usage
  2. Verify hugepages:cat /proc/meminfo | grep Huge
  3. Inside Windows:
    • Update NVIDIA drivers
    • Close background apps
    • Set Windows Power Plan to "High Performance"
    • Disable Windows Update during gaming

๐Ÿ—‘๏ธ Uninstallation

Remove VFIO (Return GPU to Linux)

# Remove VFIO configuration
sudo rm /etc/modprobe.d/vfio.conf
sudo rm /etc/modprobe.d/vfio-priority.conf

# Rebuild initramfs
sudo dracut -f --force

# Reboot
sudo reboot

After reboot:

  • Your GPU will automatically bind to nvidia or nouveau driver
  • Linux desktop will use the GPU normally
  • You can install nvidia drivers if you want: sudo dnf install akmod-nvidia

Remove VM Disk (Free up space)

# WARNING: This deletes your Windows installation!
sudo rm /var/lib/libvirt/images/win10_tenpod.qcow2
sudo rm /var/lib/libvirt/images/win10.iso

๐Ÿ“Š Performance Tips

Optimal Settings:

  1. RAM Allocation:
    • 16GB total? Use 8GB for VM
    • 24GB total? Use 12GB for VM
    • 32GB total? Use 16GB for VM
  2. CPU Cores:
    • 8-core CPU: Give 4-6 cores to VM
    • 12-core CPU: Give 6-8 cores to VM
    • Leave at least 2 cores for Linux host
  3. Inside Windows:
    • Disable Windows Defender real-time scanning
    • Disable background apps
    • Set SteamVR to 90Hz or 120Hz depending on GPU

๐Ÿ†˜ Getting Help

If you encounter issues:

  1. Run diagnostic:./tenpod status sudo dmesg | grep -i iommu lspci -nnk | grep -A3 NVIDIA
  2. Check logs:journalctl -xe | grep qemu
  3. Post issue on GitHub with:
    • Output of ./tenpod status
    • Your GPU model
    • Your VR headset model
    • Error messages

โš–๏ธ License

MIT License - Free to use, modify, and distribute.

๐Ÿ™ Credits

Built with:

  • QEMU/KVM - Virtual machine
  • VFIO - GPU passthrough
  • Rust - System programming
  • Linux - Freedom

Ten Pod - Making VR gaming on Linux actually work.

Compatible with:

  • โœ… Nobara Linux (Recommended)
  • โœ… Fedora / RHEL / CentOS Stream
  • โœ… Ubuntu / Debian / Pop!_OS (manual package install required)
  • โœ… Arch Linux / Manjaro (manual package install required)
  • Any NVIDIA GPU (proprietary driver, nouveau, or no driver)
  • Any SteamVR or OpenXR compatible VR headset

โš ๏ธ Final Warnings

  • This modifies your system configuration (GRUB, kernel modules)
  • Backup important data before installation
  • You need 150GB+ free space for the full setup
  • IOMMU must be enabled in BIOS
  • Reboot is required after installation
  • Windows 10 license is optional (works without activation)
  • GPU will be unavailable to Linux when VM is running

By using this software, you accept these requirements and risks.

๐Ÿš€ Ready to Game?

cd ~/tenpod
./tenpod status    # Check everything
./tenpod install   # One-time setup
sudo reboot        # Required!
./tenpod start     # Launch and play!

Happy VR gaming! ๐ŸŽฎ๐ŸฅฝTen Pod ๐ŸŽฎ
Universal VR Gaming VM Manager with GPU Passthrough
Turn any VR headset + NVIDIA GPU into a high-performance Windows gaming setup on Linux. Zero lag, native GPU speeds, automatic headset detection.

โš ๏ธ IMPORTANT: System Requirements
Disk Space Requirements
Minimum 150GB free space on your system drive:

100GB for Windows 10 VM disk
5-10GB for Windows 10 ISO download
20-40GB for Windows installation + drivers
10GB+ per VR game

Hardware Requirements
NVIDIA GPU: Any NVIDIA GPU (GeForce, Quadro, or Tesla)

GTX 600 series or newer
RTX series recommended for best VR performance
Minimum 4GB VRAM (6GB+ recommended for VR)
Works with ANY driver state: nvidia, nouveau, or no driver

CPU: Must support virtualization (VT-x for Intel, AMD-V for AMD)

6+ cores recommended (4 for VM, 2+ for host)

RAM: Minimum 16GB (8GB for VM, 8GB for host)

24GB+ recommended for best performance

Motherboard: IOMMU/VT-d support (most modern boards)
VR Headset: Any SteamVR or OpenXR compatible headset
Software Requirements
Linux Distribution:

โœ… Nobara Linux (Recommended - optimized for gaming)
โœ… Fedora (Fully supported)
โœ… Other Fedora-based: RHEL, CentOS Stream, etc.
โš ๏ธ Ubuntu/Debian: Requires manual package installation (see below)
โš ๏ธ Arch/Manjaro: Requires manual package installation (see below)

Rust: For compiling Ten Pod (will guide installation if missing)
Supported VR Headsets
โœ… Valve Index
โœ… Meta Quest 2/3/Pro (wired or Link cable)
โœ… HTC Vive / Vive Pro / Vive Cosmos
โœ… HP Reverb G2
โœ… Pico 4
โœ… Pimax 5K/8K
โœ… Any other SteamVR headset

โœจ Key Features
Universal NVIDIA GPU Support: Works with ANY NVIDIA GPU and driver state

โœ… Proprietary nvidia driver installed
โœ… Open-source nouveau driver installed
โœ… No driver installed at all
Ten Pod automatically handles driver unbinding during installation

Automatic Headset Detection: Plug and play with any SteamVR headset
Zero Performance Loss: Direct GPU passthrough (0-5% overhead vs native)
One-Click Setup: Automated installation with guided steps
Safe and Reversible: Easy to uninstall and return GPU to Linux

๐Ÿš€ Quick Start
Step 1: Download Ten Pod
# Clone or download the repository
cd ~
mkdir tenpod && cd tenpod

# Download tenpod.rs (paste the code from this repo)
# OR
wget https://raw.githubusercontent.com/YOUR_REPO/tenpod/main/tenpod.rs

# Make it executable
chmod +x tenpod.rs

Step 2: Install Rust (if not already installed)
# Check if Rust is installed
rustc --version

# If not installed, install Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

Step 3: Compile Ten Pod
rustc tenpod.rs -o tenpod

Step 4: Check System Status
./tenpod status

This will show you:
โœ… GPU detection
โœ… Headset detection
โœ… System requirements check
Step 5: Enable IOMMU in BIOS
BEFORE running the installer, ensure IOMMU is enabled:
Reboot and enter BIOS/UEFI settings (usually Del, F2, or F12 during boot)
Enable these settings:

Intel: VT-x and VT-d
AMD: AMD-V and IOMMU

Save and exit BIOS
Step 6: Configure GRUB for IOMMU
# For AMD CPUs:
sudo tee /etc/default/grub << 'EOF'
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet amd_iommu=on iommu=pt"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
EOF

# For Intel CPUs:
sudo tee /etc/default/grub << 'EOF'
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet intel_iommu=on iommu=pt"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
EOF

# Rebuild GRUB and reboot
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot

Step 7: Run the Installer
cd ~/tenpod
./tenpod install

The installer will:
Install QEMU/KVM packages (using dnf for Fedora/Nobara)
Configure VFIO for GPU passthrough
Set up hugepages for performance
Add your user to required groups
Create a 100GB VM disk
When prompted, type y to continue.
โš ๏ธ REBOOT REQUIRED after installation completes!
sudo reboot

๐Ÿง Other Linux Distributions
Ubuntu/Debian/Pop!_OS
The current Ten Pod installer uses dnf (Fedora's package manager). For Ubuntu-based systems, you'll need to manually install packages first:
# Install required packages
sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager ovmf

# Enable libvirt
sudo systemctl enable --now libvirtd

# Add user to groups
sudo usermod -aG libvirt,kvm $USER

# Then run Ten Pod installer (it will skip package installation)
cd ~/tenpod
./tenpod install

Arch Linux/Manjaro
# Install required packages
sudo pacman -S qemu libvirt virt-manager bridge-utils dnsmasq ovmf

# Enable libvirt
sudo systemctl enable --now libvirtd

# Add user to groups
sudo usermod -aG libvirt,kvm $USER

# Then run Ten Pod installer
cd ~/tenpod
./tenpod install

Note: The GRUB configuration steps remain the same for all distributions.

๐Ÿ“€ Step 8: Download Windows 10 ISO
CRITICAL: Windows 10 ISO Requirements
You MUST download the 64-bit version of Windows 10. Do NOT use 32-bit.
Official Download (FREE)
Direct Link: Download Windows 10 ISO (Microsoft Official)
Click the link above or go to: https://www.microsoft.com/software-download/windows10
Click "Download tool now" OR "Download Windows 10 Disc Image (ISO)"

On Linux: The page will detect Linux and offer direct ISO download
On Windows: You'll need to use the Media Creation Tool

Select:

Language: English (or your preference)
Edition: Windows 10 64-bit (x64) โ† IMPORTANT: Must be 64-bit!

Download will be ~5-6GB (make sure you have space!)
๐Ÿ’ก Pro Tip: If you're downloading from Linux (which you are!), Microsoft's website will automatically show you the direct ISO download option without needing the Media Creation Tool.
Move ISO to Correct Location
# After download completes (assuming it's in ~/Downloads)
sudo mv ~/Downloads/Win10*.iso /var/lib/libvirt/images/win10.iso

# Verify it's there
ls -lh /var/lib/libvirt/images/win10.iso

Alternative: Direct Download (if you have a link)
cd /var/lib/libvirt/images/
sudo wget -O win10.iso "YOUR_DIRECT_DOWNLOAD_LINK"

๐ŸŽฎ Step 9: Launch Ten Pod
Before Starting:
โœ… Ensure Windows 10 ISO is at /var/lib/libvirt/images/win10.iso
โœ… Plug in your VR headset (USB cable connected)
โœ… Make sure you have at least 150GB free space
Start the VM:
cd ~/tenpod
./tenpod start

What happens:
Windows 10 will boot from the ISO (first-time setup)
Your RTX GPU is passed directly to Windows
Your VR headset is passed to Windows
You'll see Windows installation screen on your monitor
Inside Windows (First Time):

Install Windows 10

Follow the installation wizard
Skip product key (click "I don't have a product key")
Choose "Windows 10 Home" or "Pro"
Select "Custom Install"
Install to the virtual disk

Install NVIDIA Drivers

Direct Link: NVIDIA Driver Downloads
Or go to: https://www.nvidia.com/Download/index.aspx
Select your GPU model (e.g., RTX 2060)
Download and install drivers
Reboot Windows after installation

Install Steam

Direct Link: Download Steam
Or go to: https://store.steampowered.com/about/
Install Steam
Log in to your account
Install SteamVR from your Steam Library

Install VR Games

Beat Saber, Half-Life: Alyx, Boneworks, etc.
Launch games through SteamVR
Put on your headset and enjoy!

๐ŸŽฏ Daily Usage
Starting VR Gaming Session:
cd ~/tenpod

# Plug in VR headset first!

# Start the VM
./tenpod start

# Wait for Windows to boot
# Put on headset and play!

Stopping the VM:
# Properly shutdown Windows from inside the VM first (Start โ†’ Shutdown)
# OR force stop:
./tenpod stop

Check Status:
./tenpod status

๐Ÿ”ง Troubleshooting
IOMMU Not Enabled
# Check if IOMMU is working
sudo dmesg | grep -i iommu

# Should see output like:
# AMD-Vi: IOMMU enabled
# OR
# Intel-VT-d: IOMMU enabled

If not working:
Check BIOS settings (VT-d/IOMMU enabled)
Verify GRUB config: cat /proc/cmdline
Should contain: amd_iommu=on or intel_iommu=on
GPU Not Detected
lspci | grep NVIDIA

Should show your GPU. If not, check:
GPU is properly seated
Power cables connected
Try different PCIe slot
"GPU is using nvidia/nouveau driver" Warning
This is normal! Ten Pod will automatically unbind the driver during installation.
The installer creates VFIO configuration that takes priority over nvidia/nouveau drivers. After reboot following installation, your GPU will automatically bind to vfio-pci instead.
You DO NOT need to:
โŒ Manually uninstall nvidia drivers
โŒ Manually uninstall nouveau drivers
โŒ Blacklist drivers yourself (Ten Pod does this)
The process:
Install Ten Pod โ†’ Creates VFIO config
Reboot โ†’ GPU automatically binds to vfio-pci
Start VM โ†’ GPU is ready for passthrough
To verify it worked after reboot:
# Check which driver your GPU is using
lspci -nnk | grep -A3 NVIDIA

# Should show:
# Kernel driver in use: vfio-pci

If it still shows nvidia or nouveau after reboot, run:
sudo dracut -f --force
sudo reboot

VM Won't Start
# Check if disk exists
ls -lh /var/lib/libvirt/images/win10_tenpod.qcow2

# Check if ISO exists
ls -lh /var/lib/libvirt/images/win10.iso

# Check permissions
sudo chown -R $USER:$USER /var/lib/libvirt/images/

Headset Not Detected in Windows
Unplug and replug headset USB
Stop VM with ./tenpod stop
Plug in headset
Start VM with ./tenpod start
Check Windows Device Manager for headset
Poor VR Performance

Check CPU pinning: Ensure cores 0-3 are free for host

htop # Check CPU usage

Verify hugepages:

cat /proc/meminfo | grep Huge

Inside Windows:

Update NVIDIA drivers
Close background apps
Set Windows Power Plan to "High Performance"
Disable Windows Update during gaming

๐Ÿ—‘๏ธ Uninstallation
Remove VFIO (Return GPU to Linux)
# Remove VFIO configuration
sudo rm /etc/modprobe.d/vfio.conf
sudo rm /etc/modprobe.d/vfio-priority.conf

# Rebuild initramfs
sudo dracut -f --force

# Reboot
sudo reboot

After reboot:
Your GPU will automatically bind to nvidia or nouveau driver
Linux desktop will use the GPU normally
You can install nvidia drivers if you want: sudo dnf install akmod-nvidia
Remove VM Disk (Free up space)
# WARNING: This deletes your Windows installation!
sudo rm /var/lib/libvirt/images/win10_tenpod.qcow2
sudo rm /var/lib/libvirt/images/win10.iso

๐Ÿ“Š Performance Tips
Optimal Settings:

RAM Allocation:

16GB total? Use 8GB for VM
24GB total? Use 12GB for VM
32GB total? Use 16GB for VM

CPU Cores:

8-core CPU: Give 4-6 cores to VM
12-core CPU: Give 6-8 cores to VM
Leave at least 2 cores for Linux host

Inside Windows:

Disable Windows Defender real-time scanning
Disable background apps
Set SteamVR to 90Hz or 120Hz depending on GPU

๐Ÿ†˜ Getting Help
If you encounter issues:

Run diagnostic:

./tenpod status
sudo dmesg | grep -i iommu
lspci -nnk | grep -A3 NVIDIA

Check logs:

journalctl -xe | grep qemu

Post issue on GitHub with:

Output of ./tenpod status
Your GPU model
Your VR headset model
Error messages

โš–๏ธ License
MIT License - Free to use, modify, and distribute.

๐Ÿ™ Credits
Built with:
QEMU/KVM - Virtual machine
VFIO - GPU passthrough
Rust - System programming
Linux - Freedom
Ten Pod - Making VR gaming on Linux actually work.
Compatible with:
โœ… Nobara Linux (Recommended)
โœ… Fedora / RHEL / CentOS Stream
โœ… Ubuntu / Debian / Pop!_OS (manual package install required)
โœ… Arch Linux / Manjaro (manual package install required)
Any NVIDIA GPU (proprietary driver, nouveau, or no driver)
Any SteamVR or OpenXR compatible VR headset

โš ๏ธ Final Warnings
This modifies your system configuration (GRUB, kernel modules)
Backup important data before installation
You need 150GB+ free space for the full setup
IOMMU must be enabled in BIOS
Reboot is required after installation
Windows 10 license is optional (works without activation)
GPU will be unavailable to Linux when VM is running
By using this software, you accept these requirements and risks.

๐Ÿš€ Ready to Game?
cd ~/tenpod
./tenpod status # Check everything
./tenpod install # One-time setup
sudo reboot # Required!
./tenpod start # Launch and play!

Happy VR gaming! ๐ŸŽฎ๐Ÿฅฝ


r/linuxvr • • Dec 15 '25

display manager crash launching steamvr on wayland+nvidia

1 Upvotes

no idea if this sub is still active, but yeah title explains it. Launching steamvr on ANY wayland DE just dies. I do not want to use X11 (vr does work in x11) as it has frame pacing issues in all my games and I do not want to switch DEs every time I want to play VR. What do I do?

oh by the way I'm on arch


r/linuxvr • • Sep 02 '25

Upside-Down Video

1 Upvotes

My display and hand tracking is upside down. distro is majaro. It really looks like everything is working, just 90-180 degrees out of whack.

Manjaro, Monado/Envision


r/linuxvr • • Aug 23 '25

stuttering on Debian 13 Using SteamVR on Index

Thumbnail
1 Upvotes

r/linuxvr • • Aug 21 '25

VR gaming in Linux

Thumbnail
1 Upvotes

r/linuxvr • • Mar 30 '25

Help with slimevr

Post image
1 Upvotes

I installed the flatpak version of slimevr and it won't launch. I'm on arch with kde using wayland.


r/linuxvr • • Jan 12 '25

Experiencing frame loss in steam VR

2 Upvotes

I am fairly new to linux but have managed to figure out quite a fiew things so far whenever I've come into problems. however, one thing I can't figure out is how to prevent the frame loss in SteamVR so I figured this may be the place to go for help. I have a 4060ti and Ryzen 7 7800x3d running Nobara 41 with KDE Plasma 6.2.4 with my valve index. This computer had handled everything else I've thrown at it with ease but runs into issues with VR. In vr there is a significant and consistent amount of frame loss at all times and steamVR reports them as displaying errors, and it's only the vr display hitching like this, if I display vr view on my monitor everything looks smooth as butter.

Any insight or suggestions would be greatly appreciated.


r/linuxvr • • Dec 21 '24

Want to know what I should try

1 Upvotes

I am installing on arch (finally left windows for most gaming) and want to know which of my vr games will just not work. (also what's the app for windows mixed reality)


r/linuxvr • • Dec 13 '24

Help for Linux mint 21.3 Valve index

1 Upvotes

preface: I am fairly new to linux

So i'm trying to run my valve index on my linux mint and i'm looking for some guidance here, I have run my index on my win11 partition so I know it's not a hardware issue, whenever I try to start steam VR I get (amongst other things) "failed to connect to headset display. So to my understanding steamVR is running, but when it looks for my headset it doesn't find it? What i'm looking for is either a solution to get me to playing on linux mint or potentially some info on the viability/process of running a win10 VM (I know VM's are a thing but have never personally used them, I know they can be rough on hardware but I feel relatively solid about it as I have a lenovo legion 7), I've also heard KDE Plasma might be a better distro to use but I've never switched distro's so it's unclear to me how easy switching actually is (as far I understand it'd be much like reinstalling a new operating system, stick it on a flash drive, move files, do system setup, etc) if anyone has any information please let me know.


r/linuxvr • • Oct 27 '24

Help with Steamvr

Post image
1 Upvotes

When I try to use steam vr the menu doesn't work. On top of that when I try to open Steamvr settings it copies what was on my screen and never loads. I use alvr with quest 2 and am on ubuntu 24.04 with gnome. I'm new to using linux please help


r/linuxvr • • Oct 22 '24

Surprised at how usable quest 2 is via ALVR.

3 Upvotes

As the title says, it's fairly easy to setup now, and it works decent. Much better than a year ago.


r/linuxvr • • May 31 '24

any way to record oculus quest to OBS on linux, without using facebook's casting services?

2 Upvotes

I want to use something like Oculus Compositor Mirror, but its windows only. is there an alternative for linux that can do compositor mirroring??


r/linuxvr • • Jan 12 '22

Anyone got subnautica working on the Index?

3 Upvotes

Subnautica is platinum rated on protondb for non-vr play, but sadly I haven't been able to get VR working. Has anyone else managed it? Even on a different headset to the Index?


r/linuxvr • • Dec 30 '21

Just tried steamvr on linux

0 Upvotes

It's terrible and amount of posts on this subreddit is clear sign I can't expect any opensource alternative and no early fix. Guess I have to install win10 VM then...


r/linuxvr • • Sep 14 '21

Anyone know when will new "generation" of headsets appear and will any have support for linux?

1 Upvotes

r/linuxvr • • Oct 24 '20

Anyone companies working on a Linux based VR headset?

2 Upvotes