### Install Intel GPU drivers on openSUSE Tumbleweed Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs Intel GPU driver packages on openSUSE Tumbleweed using zypper. This is for systems using open-source Mesa drivers. It installs kernel firmware for Intel, libdrm packages, and Vulkan support for both 64-bit and 32-bit. ```bash sudo zypper in kernel-firmware-intel libdrm_intel1 libdrm_intel1-32bit libvulkan1 libvulkan1-32bit libvulkan_intel libvulkan_intel-32bit ``` -------------------------------- ### Install NVIDIA Drivers and Vulkan on Ubuntu Derivatives Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs the latest NVIDIA proprietary drivers (version 535) and Vulkan API support for 32-bit and 64-bit systems on Ubuntu and its derivatives. This involves adding a PPA, enabling 32-bit architecture, updating package lists, and installing the necessary driver and Vulkan packages. A reboot is required after installation. ```bash sudo add-apt-repository ppa:graphics-drivers/ppa && sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install -y nvidia-driver-535 libvulkan1 libvulkan1:i386 ``` -------------------------------- ### Battle.net Launcher Setup and Troubleshooting Source: https://context7.com/lutris/docs/llms.txt Instructions for installing and troubleshooting the Battle.net launcher. It emphasizes installing on Ext4 partitions, prerequisites like Wine dependencies and graphics drivers, and fixes for common issues such as slow login, cache problems, login screen glitches, black screens, and AMD GPU Vulkan ICD loader configuration. ```bash # CRITICAL: Do not install on NTFS partition - use Ext4 only # Prerequisites - Install Wine dependencies first # See WineDependencies.md for complete list # Install current graphics drivers with Vulkan support # See InstallingDrivers.md section above # Troubleshooting slow login - Fix hostname resolution # Check hostname hostname # Edit /etc/hosts with sudo sudo nano /etc/hosts # First line should be: # 127.0.0.1 localhost yourhostname.localdomain yourhostname # Clear Battle.net cache if experiencing "Sleeping Agent" issues # Terminate all processes first killall Agent.exe Battle.net.exe wineserver # Navigate to wine prefix (usually ~/.wine or game-specific prefix) # Delete: drive_c/ProgramData/Battle.net # Restart Battle.net launcher # Restore existing game installations # In Battle.net: Settings > Game Install/Update > Scan for Games # Fix "spinning icon, no login buttons" # In Battle.net options: Disable hardware acceleration # Fix black screen when starting game # In Battle.net options: Disable streaming # Switch executable if launcher won't start # In Lutris game configuration, change executable from: # Battle.net Launcher.exe # to: # Battle.net.exe # AMD GPU - Set Vulkan ICD loader # Lutris > Show advanced options # System preferences > System options > Vulkan ICD loader # Set to: radeon_icd.x86_64.json ``` -------------------------------- ### Install Vulkan API and 32-bit support on Arch Linux Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs the necessary packages for Vulkan API support and 32-bit games on Arch-based systems. This requires a Vulkan-capable GPU. The command uses pacman to install mesa drivers, Vulkan intel drivers, and the Vulkan loader. ```bash sudo pacman -S --needed lib32-mesa vulkan-intel lib32-vulkan-intel vulkan-icd-loader lib32-vulkan-icd-loader ``` -------------------------------- ### Install Vulkan support on NVIDIA drivers (openSUSE Tumbleweed) Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs Vulkan support packages for NVIDIA proprietary drivers on openSUSE Tumbleweed using zypper. This command ensures that the system has the necessary Vulkan libraries for both 64-bit and 32-bit applications. ```bash sudo zypper in libvulkan1 libvulkan1-32bit ``` -------------------------------- ### Enable XServer on NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Enables the Xorg Xserver on NixOS. This configuration snippet is typically added to the main NixOS configuration file and is a prerequisite for using graphical environments and drivers. ```nix services.xserver.enable = true; ``` -------------------------------- ### Install AMD/Intel Drivers and Vulkan on Ubuntu Derivatives Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs the latest Mesa drivers with Vulkan API support for AMD and Intel graphics cards on Ubuntu and its derivatives. This process includes adding the kisak-mesa PPA, enabling 32-bit architecture, updating and upgrading the system, and installing 32-bit game support and Vulkan Mesa drivers. A reboot is necessary to apply changes. This is supported on Ubuntu 18.04 and higher, with specific notes on Intel CPU support for Vulkan. ```bash sudo add-apt-repository ppa:kisak/kisak-mesa && sudo dpkg --add-architecture i386 && sudo apt update && sudo apt upgrade && sudo apt install libgl1-mesa-dri:i386 mesa-vulkan-drivers mesa-vulkan-drivers:i386 ``` -------------------------------- ### Enable AMDGPU driver for XServer on NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Enables the XServer and configures it to use the amdgpu video driver on NixOS. This snippet is added to the main NixOS configuration file and should be customized as needed. ```nix services.xserver.enable = true; services.xserver.videoDrivers = [ "amdgpu" ]; ``` -------------------------------- ### Configure Multilib and Install NVIDIA Drivers on Arch Linux Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs proprietary NVIDIA drivers and Vulkan API support on Arch Linux and its derivatives. This involves enabling the multilib repository in `/etc/pacman.conf` for 32-bit support, upgrading the system, and then installing the necessary NVIDIA driver packages, utilities, and Vulkan ICD loader for both 64-bit and 32-bit architectures. ```bash /etc/pacman.conf -------------------------------------------------------------------------------------- [multilib] Include = /etc/pacman.d/mirrorlist ``` ```bash sudo pacman -Syu ``` ```bash sudo pacman -S --needed nvidia-dkms nvidia-utils lib32-nvidia-utils nvidia-settings vulkan-icd-loader lib32-vulkan-icd-loader ``` -------------------------------- ### Select NVIDIA Driver Package in NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md This snippet demonstrates how to select different NVIDIA driver packages available in NixOS. Options range from stable and beta to production and legacy drivers, allowing users to choose the most suitable version for their specific GPU. ```nix hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.production (installs 535) hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.vulkan_beta hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.legacy_390 hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.legacy_340 ``` -------------------------------- ### Install .NET 4.7.2 using Winetricks Source: https://github.com/lutris/docs/blob/master/ProvidingLogs&SystemInfo.md This snippet demonstrates how to install the .NET 4.7.2 framework, often required for certain applications or games running through Wine. It utilizes the `winetricks` command with the `app` and `prefix` parameters. Replace `$GAMEDIR` with the appropriate Wine prefix path. ```yaml - task: app: dotnet472 name: winetricks prefix: $GAMEDIR ``` -------------------------------- ### Install AMD GPU drivers on openSUSE Tumbleweed Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs AMD GPU driver packages on openSUSE Tumbleweed using zypper. This is typically for systems using open-source Mesa drivers. It installs kernel firmware for AMD, libdrm packages, and Vulkan support for both 64-bit and 32-bit. ```bash sudo zypper in kernel-firmware-amdgpu libdrm_amdgpu1 libdrm_amdgpu1-32bit libdrm_radeon1 libdrm_radeon1-32bit libvulkan_radeon libvulkan_radeon-32bit libvulkan1 libvulkan1-32bit ``` -------------------------------- ### Install Dependencies for Pressure Vessel Source: https://github.com/lutris/docs/blob/master/PressureVesselResearch.md Installs necessary development libraries required for building the Steam Runtime Tools and Pressure Vessel. This command lists several packages that need to be installed via apt. ```bash apt install pandoc libcap-dev libjson-glib-dev libelf-dev libva-dev libvdpau-dev gtk-doc-tools ``` -------------------------------- ### Enable AMDGPU kernel module on NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Configures NixOS to use the AMDGPU kernel module. This snippet is added to the hardware configuration file and ensures the amdgpu module is loaded during the initrd process. ```nix boot.initrd.kernelModules = [ "amdgpu" ]; ``` -------------------------------- ### Install AMD Drivers and Vulkan on Arch Linux Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Installs Vulkan API support and 32-bit game compatibility for AMD graphics on Arch Linux and its derivatives. This command installs the Mesa drivers for AMD, the Vulkan-radeon drivers, and the Vulkan ICD loader for both 64-bit and 32-bit architectures. ```bash sudo pacman -S --needed lib32-mesa vulkan-radeon lib32-vulkan-radeon vulkan-icd-loader lib32-vulkan-icd-loader ``` -------------------------------- ### Enable OpenGL and Vulkan Support in NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md This snippet enables generic graphics hardware acceleration for OpenGL and Vulkan support in NixOS. It includes options for enabling 32-bit application support and specifying extra graphics packages, such as ROCm for AMD GPUs. ```nix hardware.graphics.enable = true; # Before 24.11: hardware.opengl.driSupport # For 32 bit applications hardware.graphics.enable32Bit = true; # Before 24.11: hardware.opengl.driSupport32Bit hardware.graphics.extraPackages = with pkgs; [ rocmPackages.clr ]; ``` -------------------------------- ### Build Steam Runtime Tools and Pressure Vessel Source: https://github.com/lutris/docs/blob/master/PressureVesselResearch.md Builds the Steam runtime tools, including Pressure Vessel, after cloning the repository. This involves running a series of setup, build, and install commands using the provided script. ```bash cd steam-runtime-tools ./build-aux/many-builds.py setup ./build-aux/many-builds.py build ./build-aux/many-builds.py install ``` -------------------------------- ### Configure Hosts File for Battle.Net (Shell) Source: https://github.com/lutris/docs/blob/master/Battle.Net.md This command edits the system's hosts file to ensure the local hostname resolves correctly to 127.0.0.1. This is crucial for Battle.Net to function properly, especially when experiencing slow login or connectivity issues. It requires root privileges and should be done with caution to avoid system instability. ```shell sudo nano /etc/hosts ``` -------------------------------- ### Enable NVIDIA kernel modules on NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md Configures NixOS to use the NVIDIA kernel modules and blacklist the nouveau driver. This snippet is added to the hardware configuration file and ensures the correct NVIDIA modules are loaded and conflicting ones are prevented. ```nix boot.initrd.kernelModules = [ "nvidia" ]; boot.blacklistedKernelModules = ["nouveau"]; ``` -------------------------------- ### Terminate Battle.Net Processes (Shell) Source: https://github.com/lutris/docs/blob/master/Battle.Net.md This command terminates all running processes associated with Battle.Net, its agent, and the Wine server. It's often used as a preliminary step before clearing cache or attempting a restart to ensure a clean state. ```shell killall Agent.exe Battle.net.exe wineserver ``` -------------------------------- ### Install Graphics Drivers on Ubuntu/Arch/openSUSE Source: https://context7.com/lutris/docs/llms.txt Installs necessary graphics drivers and Vulkan support for NVIDIA, AMD, and Intel GPUs on Ubuntu, Arch Linux, and openSUSE Tumbleweed. Requires root privileges and may necessitate a system reboot. ```bash # Ubuntu/KDE Neon - NVIDIA Driver Installation sudo add-apt-repository ppa:graphics-drivers/ppa sudo dpkg --add-architecture i386 sudo apt update sudo apt install -y nvidia-driver-535 libvulkan1 libvulkan1:i386 # Reboot required after installation sudo reboot # Ubuntu/KDE Neon - AMD/Intel Driver Installation sudo add-apt-repository ppa:kisak/kisak-mesa sudo dpkg --add-architecture i386 sudo apt update && sudo apt upgrade sudo apt install libgl1-mesa-dri:i386 mesa-vulkan-drivers mesa-vulkan-drivers:i386 # Arch Linux - Enable multilib first # Edit /etc/pacman.conf and uncomment: # [multilib] # Include = /etc/pacman.d/mirrorlist sudo pacman -Syu # Arch Linux - NVIDIA Installation sudo pacman -S --needed nvidia-dkms nvidia-utils lib32-nvidia-utils nvidia-settings vulkan-icd-loader lib32-vulkan-icd-loader # Arch Linux - AMD Installation sudo pacman -S --needed lib32-mesa vulkan-radeon lib32-vulkan-radeon vulkan-icd-loader lib32-vulkan-icd-loader # Arch Linux - Intel Installation sudo pacman -S --needed lib32-mesa vulkan-intel lib32-vulkan-intel vulkan-icd-loader lib32-vulkan-icd-loader # openSUSE Tumbleweed - AMD Installation sudo zypper in kernel-firmware-amdgpu libdrm_amdgpu1 libdrm_amdgpu1-32bit libdrm_radeon1 libdrm_radeon1-32bit libvulkan_radeon libvulkan_radeon-32bit libvulkan1 libvulkan1-32bit # openSUSE Tumbleweed - Intel Installation sudo zypper in kernel-firmware-intel libdrm_intel1 libdrm_intel1-32bit libvulkan1 libvulkan1-32bit libvulkan_intel libvulkan_intel-32bit ``` -------------------------------- ### Optimizing World of Warcraft Configuration (Bash/INI) Source: https://context7.com/lutris/docs/llms.txt Provides commands and configuration snippets for optimizing World of Warcraft on Linux. This includes installing the game outside the Wine prefix, modifying the Config.wtf file for performance, and fixing common issues like cursor reset and blurry text. ```bash # IMPORTANT: Install WoW outside Wine prefix to preserve game data # During installation, specify separate directory for game files # Example: ~/Games/WoW instead of ~/.wine/drive_c/Program Files/ # Optimize Config.wtf settings # Locate Config.wtf in WoW directory cd "~/.wine/drive_c/Program Files (x86)/World of Warcraft/WTF/" nano Config.wtf # Add performance optimization SET worldPreloadNonCritical "0" # Reduces loading times when switching zones # In-game console commands # Fix cursor reset issue /console rawMouseEnable 1 # Then enable in Interface > Mouse > Lock Cursor to Window # Fix streaming error WOW51900322 (corrupted cache) # Backup current cache mv "~/.wine/drive_c/Program Files (x86)/World of Warcraft/Cache" ~/wow_cache_backup # Option 1: Copy from Windows installation # Option 2: Download clean cache from https://github.com/Bromeego/WoW-Cache git clone https://github.com/Bromeego/WoW-Cache.git cp -r WoW-Cache/Cache "~/.wine/drive_c/Program Files (x86)/World of Warcraft/" # Fix blurry text in Battle.net launcher # Install Arial font via winetricks winetricks arial ``` -------------------------------- ### Install Gamemode for CPU Optimization Source: https://context7.com/lutris/docs/llms.txt Installs the 'gamemode' package, which automatically optimizes CPU governors for gaming. This requires using either apt or pacman package managers depending on the distribution. Gamemode is automatically enabled for games launched through Lutris version 0.4.23 and later. ```bash # Ubuntu/Debian: sudo apt install gamemode lib32-gamemode # Arch Linux: sudo pacman -S gamemode lib32-gamemode ``` -------------------------------- ### Run Application with Pressure Vessel Source: https://github.com/lutris/docs/blob/master/PressureVesselResearch.md Launches a specific application (doom.x86 in this example) using Pressure Vessel in the second terminal. This command requires the D-Bus name to be set and navigates to the binary directory. ```bash export dbusname="com.steampowered.PressureVessel.Test" cd _build/containers/pressure-vessel/bin/ ./pressure-vessel-launch --bus-name "$dbusname" ~/Games/linux/doom-3/doom.x86 ``` -------------------------------- ### Configure AMDVLK for Older AMD Hardware in NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md This snippet configures the AMDVLK driver for older AMD hardware in NixOS. It enables basic graphics support, includes an option for 32-bit applications, and specifically adds the `amdvlk` package for the Vulkan driver. ```nix hardware.graphics.enable = true; # For 32 bit applications hardware.graphics.enable32Bit = true; hardware.graphics.extraPackages = with pkgs; [ amdvlk ]; ``` -------------------------------- ### Configure NVIDIA Driver for Xorg and Wayland in NixOS Source: https://github.com/lutris/docs/blob/master/InstallingDrivers.md This snippet configures the NVIDIA driver for use with Xorg and Wayland on NixOS. It enables modesetting, allows configuration of power management features, and supports the open-source kernel module for compatible GPUs. Users can select specific driver packages based on their hardware. ```nix services.xserver.videoDrivers = ["nvidia"]; hardware.nvidia = { # Modesetting is required. modesetting.enable = true; # Nvidia power management. Experimental, and can cause sleep/suspend to fail. powerManagement.enable = false; # Fine-grained power management. Turns off GPU when not in use. # Experimental and only works on modern Nvidia GPUs (Turing or newer). powerManagement.finegrained = false; # Use the NVidia open source kernel module (not to be confused with the # independent third-party "nouveau" open source driver). # Support is limited to the Turing and later architectures. Full list of # supported GPUs is at: # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus # Only available from driver 515.43.04+ # Do not disable this unless your GPU is unsupported or if you have a good reason to. open = true; # Enable the Nvidia settings menu, # accessible via `nvidia-settings`. nvidiaSettings = true; # Optionally, you may need to select the appropriate driver version for your specific GPU. package = config.boot.kernelPackages.nvidiaPackages.stable; }; ``` -------------------------------- ### Copying Trace Libraries to Game Directory (Bash) Source: https://context7.com/lutris/docs/llms.txt Copies necessary d3d9, d3d11, dxgi, and dxgitrace DLLs from an APITrace installation to a game's directory for 64-bit systems. This is often a prerequisite for game tracing. ```bash cp apitrace-10.0-win64/lib/wrappers/d3d9.dll /path/to/game/ cp apitrace-10.0-win64/lib/wrappers/d3d11.dll /path/to/game/ cp apitrace-10.0-win64/lib/wrappers/dxgi.dll /path/to/game/ cp apitrace-10.0-win64/lib/wrappers/dxgitrace.dll /path/to/game/ ``` -------------------------------- ### Launch Pressure Vessel Launcher Source: https://github.com/lutris/docs/blob/master/PressureVesselResearch.md Starts the Pressure Vessel launcher in the first terminal. This command exports a D-Bus name and then executes the launcher, preparing the environment for running applications. ```bash export dbusname="com.steampowered.PressureVessel.Test" cd _build/containers/pressure-vessel/bin/ ./pressure-vessel-launcher --bus-name "$dbusname" ``` -------------------------------- ### Create API Traces for Debugging Graphics Issues Source: https://context7.com/lutris/docs/llms.txt Guides on generating apitrace captures to debug graphics rendering problems. This involves determining if a game is 32-bit or 64-bit, downloading the appropriate apitrace version, configuring Wine to use native DLL overrides for d3d9, d3d11, and dxgi, and copying the apitrace DLLs to the game directory. ```bash # Determine if game is 32-bit or 64-bit (Linux) file /path/to/game/program.exe # Output for 32-bit: PE32 executable (GUI) Intel 80386 # Output for 64-bit: PE32+ executable (GUI) x86-64 # Download apitrace # For 32-bit games: wget https://github.com/apitrace/apitrace/releases/download/10.0/apitrace-10.0-win32.7z 7z x apitrace-10.0-win32.7z # For 64-bit games: wget https://github.com/apitrace/apitrace/releases/download/10.0/apitrace-10.0-win64.7z 7z x apitrace-10.0-win64.7z # Configure Wine to use native DLL overrides # Open winecfg (for your game's prefix) wine winecfg # In Libraries tab, add overrides for: # - d3d9 (set to native,builtin) # - d3d11 (set to native,builtin) # - dxgi (set to native,builtin) # Copy apitrace DLLs to game directory # For 32-bit: cp apitrace-10.0-win32/lib/wrappers/d3d9.dll /path/to/game/ cp apitrace-10.0-win32/lib/wrappers/d3d11.dll /path/to/game/ cp apitrace-10.0-win32/lib/wrappers/dxgi.dll /path/to/game/ cp apitrace-10.0-win32/lib/wrappers/dxgitrace.dll /path/to/game/ ``` -------------------------------- ### Manage Lutris Runtime Libraries Source: https://context7.com/lutris/docs/llms.txt Guides on managing the Lutris runtime, which provides game libraries for cross-distribution compatibility. It covers checking runtime location, automatic updates, disabling the runtime for specific games or globally via environment variables, and a bisecting method to identify problematic runtime libraries. ```bash # Runtime location ls ~/.local/share/lutris/runtime # Disable runtime for a specific game # Right-click game > Configure > System options > Disable Lutris runtime # Disable runtime for a runner # Lutris > Preferences > Runners > Select runner > System options > Disable Lutris runtime # Disable runtime globally via environment variable export LUTRIS_RUNTIME=0 # Debug runtime issues - identify problematic libraries cd ~/.local/share/lutris/runtime # Step 1: Rename runtime component to test mv lib32 lib32.bak # Launch game to test if this component causes issues # Step 2: Restore and bisect libraries mv lib32.bak lib32 cd lib32 # Remove half of the libraries, test game # Repeat until problematic library is identified ``` -------------------------------- ### Install Game Mode for CPU Governor Optimization Source: https://github.com/lutris/docs/blob/master/Performance-Tweaks.md Game Mode optimizes CPU governor to 'max performance' during gameplay, potentially improving FPS. Ensure 'gamemode' and 'lib32-gamemode' are installed and your system supports multiarch/multilib. Requires Lutris 0.4.23 or higher. ```markdown Game Mode set your CPU governor to max performance while you are playing, and can improve FPS in some cases. It's automatically enabled for all your games when you have game mode installed on your system. The only thing to have in consideration is that you must install gamemode, and lib32-gamemode. If you can't install this libraries, make sure your operating system has multiarch (ubuntu) or multilib (arch linux) enabled. You need Lutris 0.4.23 or upper. More information available [here](https://github.com/FeralInteractive/gamemode). ``` -------------------------------- ### Enable DXVK for DX11 to Vulkan Translation Source: https://github.com/lutris/docs/blob/master/Performance-Tweaks.md DXVK is a translation layer that allows DirectX 11 games to run on Vulkan. Enable this for better performance in compatible games. Refer to the linked documentation for detailed setup. ```markdown DX11 translated into Vulkan, see [How to: DXVK](https://github.com/lutris/docs/blob/master/HowToDXVK.md). ``` -------------------------------- ### Disable Network for Flatpak Games with flatpak-spawn Source: https://github.com/lutris/docs/blob/master/DisableNetworkAccess.md This method is specific to games installed via Flatpak. It uses the `flatpak-spawn` command with the `--no-network` flag to prevent network access. This is configured as a command prefix within Lutris game settings. ```bash flatpak-spawn --no-network ``` -------------------------------- ### Configuring RetroArch for PlayStation BIOS (Bash) Source: https://context7.com/lutris/docs/llms.txt Details the process of setting up PlayStation BIOS files for RetroArch emulation. It specifies the system directory location and provides MD5 checksums for verifying the integrity of common BIOS files (JP, US, EU). ```bash # RetroArch system directory location cd ~/.config/retroarch/system # Download PlayStation BIOS files (not provided - user must obtain legally) # Place BIOS files in system directory with exact names and verify checksums # Verify BIOS integrity md5sum scph5500.bin # Expected: 8dd7d5296a650fac7319bce665a6a53c (JP BIOS) md5sum scph5501.bin # Expected: 490f666e1afb15b7362b406ed1cea246 (US BIOS) md5sum scph5502.bin # Expected: 32736f17079d0b2b7024407c39bd3050 (EU BIOS) ``` -------------------------------- ### Clone Steam Runtime Tools Project Source: https://github.com/lutris/docs/blob/master/PressureVesselResearch.md Clones the Steam Runtime Tools project from its GitLab repository. This is the first step in obtaining the source code for Pressure Vessel. ```bash git clone https://gitlab.steamos.cloud/steamrt/steam-runtime-tools.git ``` -------------------------------- ### Compressing and Sharing Trace Files (Bash) Source: https://context7.com/lutris/docs/llms.txt Compresses a game trace file using tar and xz for efficient sharing. The compressed file is suitable for uploading to cloud storage services for support or analysis. ```bash tar -cJf program.trace.tar.xz program.exe.trace ``` -------------------------------- ### Configure GPU Settings in Settings_v0.ini - INI Source: https://github.com/lutris/docs/blob/master/Overwatch.md This INI configuration snippet shows how to manually set GPU-specific parameters within the Overwatch settings file (`Settings_v0.ini`). It includes fields for Device ID, GPU Name, Scaler, and Vendor ID, primarily used for Intel iGPU workarounds. ```ini [GPU.6] GPUDeviceID = "22806" GPUName = "Intel(R) HD Graphics 620" GPUScaler = "70.000000" GPUVendorID = "32902" ``` -------------------------------- ### Enable DXVK for Windows Games in Lutris Source: https://context7.com/lutris/docs/llms.txt Configures Lutris to use DXVK for translating Direct3D calls to Vulkan, improving performance for Windows games on Linux. DXVK is typically enabled automatically in recent Lutris versions. ```bash # Requirements verification # Check if GPU supports Vulkan (Skylake or newer for Intel) vulkaninfo | grep "GPU" # DXVK is automatically enabled in Lutris for supported Wine versions # No manual installation required with Lutris 0.5.9+ # Verify DXVK is working - set environment variable for your game # In Lutris: Configure > System Options > Environment variables # Add: DXVK_HUD=devinfo # To disable DXVK for a specific game: # Right-click game > Configure > Runner options > Disable DXVK ``` -------------------------------- ### Generate Lutris Debug Issue Report Source: https://github.com/lutris/docs/blob/master/ProvidingLogs&SystemInfo.md This command generates a comprehensive report to help diagnose issues with Lutris. It requires running Lutris from the terminal with the `--submit-issue` flag. The output should be shared for assistance. ```bash lutris --submit-issue ``` -------------------------------- ### NVIDIA Performance Optimization Settings Source: https://context7.com/lutris/docs/llms.txt Applies environment variables for NVIDIA graphics cards to enhance game performance and reduce stuttering. Includes settings for threaded optimization and shader cache. ```bash # Enable frametime monitoring with DXVK # Add to game environment variables in Lutris DXVK_HUD=frametimes # NVIDIA-specific optimizations (add to game environment variables) # Enable threaded optimization __GL_THREADED_OPTIMIZATION=1 # Configure shader cache per-game (prevents stuttering) __GL_SHADER_DISK_CACHE=1 __GL_SHADER_DISK_CACHE_PATH=/path/to/game/shader_cache # Example: Complete NVIDIA configuration for a game # In Lutris: Configure > System Options > Environment variables # Add these variables: ``` -------------------------------- ### Convert Hex to Decimal - Linux Shell Source: https://github.com/lutris/docs/blob/master/Overwatch.md This snippet demonstrates how to convert hexadecimal values (GPU vendor and device IDs) to their decimal equivalents using bash arithmetic expansion. This is useful for configuration files that require decimal input. ```shell echo $((0x8086)) $((0x5916)) 32902 22806 ``` -------------------------------- ### Generating Lutris Debug Information (Bash) Source: https://context7.com/lutris/docs/llms.txt Provides commands to gather debugging information for Lutris, including submitting a system report, running Lutris in debug mode, and accessing game-specific logs. This is crucial for troubleshooting. ```bash # Generate system information report lutris --submit-issue # Run Lutris in debug mode # Kill existing Lutris process first killall lutris # Start Lutris with debug output lutris -d # Reproduce the issue # Copy terminal output to https://paste.ubuntu.com # Get game-specific logs # 1. Launch game in Lutris # 2. Reproduce issue # 3. Click log button in right sidebar # 4. Upload log content to https://paste.ubuntu.com # Enable Wine debug output for Wine games # Right-click game > Configure > Runner options # Check "Output debugging info" # Re-run game to generate complete Wine logs ``` -------------------------------- ### Run Lutris with Debug Logging Enabled Source: https://github.com/lutris/docs/blob/master/ProvidingLogs&SystemInfo.md To capture detailed debugging output from Lutris, run the application with the `-d` flag from a terminal. This is crucial for identifying the root cause of problems. Ensure Lutris is not running before executing this command. ```bash lutris -d ``` -------------------------------- ### Set vblank_mode for Nvidia Input Lag Reduction - Shell Source: https://github.com/lutris/docs/blob/master/Overwatch.md This command adds an environment variable `vblank_mode` with a value of `0` to system options. This is a common technique to reduce input lag on Nvidia graphics cards by disabling vertical synchronization. ```shell vblank_mode=0 ``` -------------------------------- ### NVIDIA Environment Variables for Game Optimization Source: https://github.com/lutris/docs/blob/master/Performance-Tweaks.md Set environment variables per game in Lutris to optimize NVIDIA GPU performance. Latest drivers are recommended. Be cautious of potential freezes with high FPS and enabled flipping without V-Sync. ```bash Environment variables can be set per game in Configure > System Options > Environment variables. ``` -------------------------------- ### Verifying Trace File Quality (Bash) Source: https://context7.com/lutris/docs/llms.txt Checks the size and integrity of a generated game trace file using 'ls -lh'. Valid traces are typically large (hundreds of MB to several GB), while small files indicate insufficient data capture. ```bash ls -lh program.exe.trace ``` -------------------------------- ### Configure Esync for Improved Game Performance Source: https://context7.com/lutris/docs/llms.txt Enables Esync to reduce synchronization overhead for better multithreaded game performance on Linux. This involves modifying system limits for open file descriptors, applicable to systemd-based and pam-limits systems. ```bash # Check if system is esync compatible ulimit -Hn # Should return 524288 or higher # Method 1: Configure systemd (Ubuntu and systemd-based systems) # Edit with root privileges: /etc/systemd/system.conf and /etc/systemd/user.conf # Add or modify: DefaultLimitNOFILE=524288 # Uncomment the line if it exists (remove leading #) # Restart computer after changes sudo reboot # Verify the change took effect ulimit -Hn # Method 2: Configure pam-limits (Arch, Fedora, Solus) # Edit /etc/security/limits.conf with root privileges # Add (replace 'username' with your actual username): username hard nofile 524288 # Restart computer and verify sudo reboot ulimit -Hn # Esync is automatically enabled in Lutris 0.5.9+ with compatible Wine versions # To disable esync for a specific game: # Right-click game > Configure > Runner options > Disable Esync ``` -------------------------------- ### Configure DXVK_HUD for Frametime Monitoring Source: https://github.com/lutris/docs/blob/master/Performance-Tweaks.md Set the DXVK_HUD environment variable to 'frametimes' to visualize frametime performance. This helps in adjusting in-game settings like V-Sync and FPS limit for smoother gameplay. Works with games running via DXVK. ```bash DXVK_HUD=frametimes ``` -------------------------------- ### Manage NVIDIA Shader Cache Source: https://github.com/lutris/docs/blob/master/Performance-Tweaks.md Optimize shader loading performance on NVIDIA GPUs by managing the shader cache. Use `GL_SHADER_DISK_CACHE` to enable/disable and `GL_SHADER_DISK_CACHE_PATH` to set a per-game cache location. The default cache size is 128MB. ```bash GL_SHADER_DISK_CACHE=0 ``` ```bash GL_SHADER_DISK_CACHE=1 ``` ```bash GL_SHADER_DISK_CACHE_PATH=/path/to/location ``` -------------------------------- ### Disable Network Access for Games Source: https://context7.com/lutris/docs/llms.txt Provides methods to block network connectivity for games while maintaining local functionality. Options include using 'flatpak-spawn --no-network' for Flatpak applications, configuring OpenSnitch firewall rules, or using Firejail with '--net=none' for native packages. ```bash # Method 1: Flatpak (Flatpak package only) # Right-click game > Configure > System options > Command prefix flatpak-spawn --no-network # Method 2: Firewall using OpenSnitch (All packages) # Install OpenSnitch sudo pacman -S opensnitch # Arch sudo apt install opensnitch # Ubuntu # Configure OpenSnitch rule: # 1. Action: Reject # 2. Checkbox: From this executable # 3. Path: /path/to/wine/runner (e.g., ~/.local/share/lutris/runners/wine/ge-proton) # 4. Duration: Always # 5. Save # Method 3: Firejail (Native package only) # Install firejail sudo pacman -S firejail # Arch sudo apt install firejail # Ubuntu # Add as command prefix in game configuration firejail --noprofile --net=none ``` -------------------------------- ### Disable Network for Native Games with Firejail Source: https://github.com/lutris/docs/blob/master/DisableNetworkAccess.md This approach is suitable for native Lutris packages. It utilizes Firejail, a security sandbox, to restrict network access. The command `firejail --noprofile --net=none` is added as a command prefix in Lutris game settings to enforce network isolation. ```bash firejail --noprofile --net=none ``` -------------------------------- ### Control NVIDIA Threaded Optimization Source: https://github.com/lutris/docs/blob/master/Performance-Tweaks.md Control NVIDIA's threaded optimization using the `__GL_THREADED_OPTIMIZATION` environment variable. Set to '1' to force enable, '0' to disable. Note: This has no effect on Vulkan games and may lower FPS if the CPU is maxed out. ```bash __GL_THREADED_OPTIMIZATION=1 ``` ```bash __GL_THREADED_OPTIMIZATION=0 ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.