Steam in an unprivileged LXC container with GPU passthrough
Find a file
2024-12-07 11:12:01 +05:30
install-steam-lxc.sh Add install-steam-lxc.sh 2024-12-07 11:07:33 +05:30
LICENSE Initial commit 2024-12-07 11:06:46 +05:30
README.md Update README.md 2024-12-07 11:12:01 +05:30

Steam LXC Installation Script

This script automates the installation of Steam within an unprivileged LXC container in Proxmox with GPU passthrough. It sets up a complete environment including a MATE desktop environment and KasmVNC for remote access.

Prerequisites

  • Proxmox 7.4 or later
  • Unprivileged LXC container with Debian 12
  • GPU passthrough already configured in your LXC container
  • Working internet connection
  • Root access to the LXC container

GPU Passthrough Setup

Before running this script, ensure you have properly configured GPU passthrough for your LXC container. This involves:

  1. Getting the GID of the 'render' group in your container
  2. Modifying the LXC configuration on the Proxmox host
  3. Verifying the GPU is properly passed through

For detailed GPU passthrough setup instructions, refer to the original guide.

Installation

  1. Download the installation script:
wget https://git.hhf.technology/hhf/proxmox-install-steam-lxc/raw/branch/main/install-steam-lxc.sh
  1. Make the script executable:
chmod +x install-steam-lxc.sh
  1. Run the script as root:
sudo ./install-steam-lxc.sh
  1. Follow the prompts to create a new user account.

Post-Installation

After the installation completes:

  1. Switch to the new user account created during installation
  2. Start KasmVNC with GPU passthrough:
vncserver -hw3d -drinode /dev/dri/renderD128
  1. Access your desktop through the KasmVNC web interface
  2. Launch Steam from the desktop menu or by running the steam command

Notes

  • Always use the specified vncserver command with -hw3d and -drinode flags to ensure GPU passthrough is enabled
  • It's recommended to disable desktop compositing for better performance
  • If the KasmVNC website doesn't load correctly at first, try refreshing a few times

Support

For issues and questions, please open an issue on the forums or refer to the original documentation on the forum.

License

Apache 2.0 License