# Launch Args & Env Vars Reference ## Gamescope **Launch:** `gamescope [options] -- %command%` | Arg | Description | | ------------------------------- | -------------------------- | | `-W ` | Output window width | | `-H ` | Output window height | | `-w ` | Game viewport width | | `-h ` | Game viewport height | | `-S integer` | Integer scaling | | `-S stretch` | Stretch to fill window | | `-b` | Borderless window | | `-f` | Fullscreen window | | `-r ` | Frame rate limit | | `-o ` | Frame rate limit unfocused | | `-F fsr` | FSR upscaling | | `-F nis` | NVIDIA Image Scaling | | `--reshade-effect ` | Reshade effect | | `--reshade-technique-idx ` | Reshade technique index | **Env vars:** none (passes through to child) --- ## Proton (Valve Official) **Launch:** ``` STEAM_COMPAT_CLIENT_INSTALL_PATH="$HOME/.local/share/Steam" \ STEAM_COMPAT_DATA_PATH="$HOME/.steam/steam/steamapps/compatdata/$APPID" \ ~/.steam/steam/steamapps/common/Proton\ $VERSION/proton \ waitforexitandrun %command% ``` **Core env vars (set by Steam):** | Variable | Description | | ---------------------------------- | --------------------------------- | | `STEAM_COMPAT_CLIENT_INSTALL_PATH` | Steam install path | | `STEAM_COMPAT_DATA_PATH` | Game compatdata path | | `STEAM_COMPAT_APP_ID` | Game AppID | | `STEAM_COMPAT_INSTALL_PATH` | Game install path | | `STEAM_COMPAT_TOOL_PATHS` | Colon-separated Proton tool paths | | `STEAM_COMPAT_USER_CONFIG_PATH` | Per-game config override path | | `STEAM_RUNTIME` | `1` to enable Steam Runtime | | `STEAM_RUNTIME_DIR` | Steam Runtime path | | `STEAM_RUNTIME_LIBRARY_PATH` | Steam Runtime library path | | `WINEPREFIX` | Wine prefix path | | `WINEARCH` | Wine arch (`win64` or `win32`) | | `WINEDEBUG` | Wine debug string | | `DISPLAY` | Display server (`:0`) | | `XDG_SESSION_TYPE` | `x11` or `wayland` | **Proton launch option env vars:** | Compat config string | Env var | Description | | -------------------- | ---------------------------------- | --------------------------------------- | | | `PROTON_LOG` | Debug log to `$HOME/steam-$APPID.log` | | | `PROTON_WAIT_ATTACH` | Wait for debugger | | | `PROTON_CRASH_REPORT_DIR` | Crash log dir | | `wined3d` | `PROTON_USE_WINED3D` | OpenGL wined3d for d3d11/d3d10 | | `nod3d12` | `PROTON_NO_D3D12` | Disable DX12 | | `nod3d11` | `PROTON_NO_D3D11` | Disable DX11 | | `nod3d10` | `PROTON_NO_D3D10` | Disable DX10 | | `nod3d9` | `PROTON_NO_D3D9` | Disable DX9 | | `noesync` | `PROTON_NO_ESYNC` | Disable eventfd sync | | `nofsync` | `PROTON_NO_FSYNC` | Disable futex sync | | `nontsync` | `PROTON_NO_NTSYNC` | Disable ntsync module | | `forcelgadd` | `PROTON_FORCE_LARGE_ADDRESS_AWARE` | Force LARGE_ADDRESS_AWARE | | `heapdelayfree` | `PROTON_HEAP_DELAY_FREE` | Delay memory freeing | | `enablenvapi` | `PROTON_ENABLE_NVAPI` | Enable NVIDIA NVAPI | | `seccomp` | `PROTON_USE_SECCOMP` | Enable seccomp-bpf | | `nowritewatch` | `PROTON_NO_WRITE_WATCH` | Disable write watches | | `oldglstr` | `PROTON_OLD_GL_STRING` | Limit GL extension string | | `xalia` | `PROTON_USE_XALIA` | Enable Xalia | | `noxalia` | `PROTON_USE_XALIA=0` | Disable Xalia | | `cmdlineappend:` | _(none)_ | Append as game command arg (repeatable) | --- ## Proton-GE **Launch:** Same as Valve Proton, binary in `~/.steam/steam/compatibilitytools.d/GE-Proton-X.X/` **Proton launch option env vars:** | Compat config string | Env var | Description | | -------------------- | ----------------------------------------------- | --------------------------------------------------- | | | `PROTON_LOG` | Debug log | | | `PROTON_DUMP_DEBUG_COMMANDS` | Debug scripts to `$PROTON_DEBUG_DIR/proton_$USER/` | | | `PROTON_DEBUG_DIR` | Debug script root (default: `/tmp`) | | `wined3d` | `PROTON_USE_WINED3D` | OpenGL wined3d for d3d11/d3d10 | | `nod3d12` | `PROTON_NO_D3D12` | Disable DX12 | | `nod3d11` | `PROTON_NO_D3D11` | Disable DX11 | | `nod3d10` | `PROTON_NO_D3D10` | Disable DX10 | | `nod3d9` | `PROTON_NO_D3D9` | Disable DX9 | | `noesync` | `PROTON_NO_ESYNC` | Disable eventfd sync | | `nofsync` | `PROTON_NO_FSYNC` | Disable futex sync | | `nontsync` | `PROTON_NO_NTSYNC` | Disable ntsync module | | `forcelgadd` | `PROTON_FORCE_LARGE_ADDRESS_AWARE` | Force LARGE_ADDRESS_AWARE | | `heapdelayfree` | `PROTON_HEAP_DELAY_FREE` | Delay memory freeing | | | `HOST_LC_ALL` | Override system locale | | `enablenvapi` | `PROTON_ENABLE_NVAPI` | Enable NVIDIA NVAPI | | `oldglstr` | `PROTON_OLD_GL_STRING` | Limit GL extension string | | `cmdlineappend:` | _(none)_ | Append as game command arg | | `xalia` | `PROTON_USE_XALIA` | Enable Xalia | | `noxalia` | `PROTON_USE_XALIA=0` | Disable Xalia | | `seccomp` | `PROTON_USE_SECCOMP` | Enable seccomp-bpf | | `nowritewatch` | `PROTON_NO_WRITE_WATCH` | Disable write watches | | | `WINE_FULLSCREEN_FSR` | Enable FSR (Vulkan only) | | | `WINE_FULLSCREEN_FSR_STRENGTH` | FSR sharpening (0-5, default 2) | | | `WINE_FULLSCREEN_FSR_CUSTOM_MODE` | Fake resolution `WIDTHxHEIGHT` | | | `WINE_DO_NOT_CREATE_DXGI_DEVICE_MANAGER` | Fix miscolored video | | | `COPYPREFIX` | Copy prefix/shader cache if `-steamdeck` | | `fsr4` | `PROTON_FSR4_UPGRADE` | Auto-download FSR 4 DLL | | `fsr4hud` | `PROTON_FSR4_INDICATOR` | FSR4 watermark | | `fsr4rdna3` | `PROTON_FSR4_RDNA3_UPGRADE` | FSR4 for RDNA3 GPUs | | `fsr3` | `PROTON_FSR3_UPGRADE` | Auto-download FSR 3 DLL | | `dlss` | `PROTON_DLSS_UPGRADE` | Auto-download DLSS DLLs | | `dlsshud` | `PROTON_DLSS_INDICATOR` | DLSS overlay | | `xess` | `PROTON_XESS_UPGRADE` | Auto-download XESS | | `sdlinput` | `PROTON_USE_SDL` or `PROTON_PREFER_SDL` | SDL input instead of HIDRAW/Steam Input | | `wayland` | `PROTON_USE_WAYLAND` or `PROTON_ENABLE_WAYLAND` | Enable Wayland driver | | `wow64` | `PROTON_USE_WOW64` | Enable WoW64 | | | `WAYLANDDRV_PRIMARY_MONITOR` | Primary monitor (e.g. `eDP-1`) | | | `PROTON_ENABLE_MEDIACONV` | Enable winegstreamer media converter | | | `WAYLANDDRV_RAWINPUT` | Raw input sensitivity (0=off, positive=sensitivity) | --- ## Proton-CachyOS **Launch:** Same as Valve Proton, binary in CachyOS tool directory **Proton launch option env vars:** | Compat config string | Env var | Description | | -------------------- | ---------------------------------------- | ------------------------------------------------------------------- | | | `PROTON_LOG` | Debug log (use `"+mfplat,+quartz,+wmvcore,+wmadec,+dmo"` for media) | | | `PROTON_LOG_DIR` | Output log dir (default: `$HOME`) | | | `PROTON_WAIT_ATTACH` | Wait for debugger | | | `PROTON_CRASH_REPORT_DIR` | Crash log dir | | `wined3d` | `PROTON_USE_WINED3D` | OpenGL wined3d for d3d11/d3d10/d3d9 | | `nod3d11` | `PROTON_NO_D3D11` | Disable DX11 | | `nod3d10` | `PROTON_NO_D3D10` | Disable DX10/DXGI | | `dxvkd3d8` | `PROTON_DXVK_D3D8` | Use DXVK d3d8.dll | | `nofsync` | `PROTON_NO_FSYNC` | Disable futex sync | | | `HOST_LC_ALL` | Override system locale | | `disablenvapi` | `PROTON_DISABLE_NVAPI` | Disable NVIDIA NVAPI | | `nativevulkanloader` | _(none)_ | Use game's Vulkan loader (breaks VR) | | `forcelgadd` | `PROTON_FORCE_LARGE_ADDRESS_AWARE` | Force LARGE_ADDRESS_AWARE | | `heapdelayfree` | `PROTON_HEAP_DELAY_FREE` | Delay memory freeing | | `gamedrive` | `PROTON_SET_GAME_DRIVE` | Create S: drive to Steam library | | `noforcelgadd` | _(none)_ | Disable forcelgadd | | `oldglstr` | `PROTON_OLD_GL_STRING` | Limit GL extension string | | `vkd3dfl12` | _(none)_ | Force D3D12 feature level 12 | | `vkd3dbindlesstb` | _(none)_ | Force bindless texel buffer | | `nomfdxgiman` | `WINE_DO_NOT_CREATE_DXGI_DEVICE_MANAGER` | IMFDXGIDeviceManager workaround | | `noopwr` | `WINE_DISABLE_VULKAN_OPWR` | Disable Vulkan OPWR (Wayland) | | `hidenvgpu` | `PROTON_HIDE_NVIDIA_GPU` | Hide NVIDIA GPUs as AMD | | | `WINE_FULLSCREEN_INTEGER_SCALING` | Integer scaling | | | `WINE_USE_KWIN_HACKS` | KDE windowing hacks | | `cmdlineappend:` | _(none)_ | Append as game command arg | | `xalia` | `PROTON_USE_XALIA` | Enable Xalia | | `fnad3d11` | `FNA3D_FORCE_DRIVER=D3D11` | Force FNA D3D11 | | `seccomp` | `PROTON_USE_SECCOMP` | Enable seccomp-bpf | | `d9vk` | `PROTON_USE_D9VK` | Use D9VK for d3d9 (obsolete Proton 5.0+) | **Proton-CachyOS config env vars:** | Compat config string | Env var | Description | | -------------------- | --------------------------------------- | ------------------------------------------------- | | | `PROTON_DXVK_SAREK` | Use dxvk-sarek for older GPUs | | | `PROTON_DXVK_LOWLATENCY` | Enable dxvk-low-latency fork | | | `PROTON_D7VK_DDRAW` | Use D7VK for DX7-or-lower | | `fsr4` | `PROTON_FSR4_UPGRADE` | Auto-download FSR 4 DLL | | `fsr4hud` | `PROTON_FSR4_INDICATOR` | FSR4 watermark | | `mlfg` | `PROTON_MLFG_UPGRADE` | Enable MLFG with FSR4 >= 4.0.3 | | `dlss` | `PROTON_DLSS_UPGRADE` | Auto-download DLSS DLLs | | `dlsshud` | `PROTON_DLSS_INDICATOR` | DLSS overlay | | `xess` | `PROTON_XESS_UPGRADE` | Auto-download XESS | | `ffx3` | `PROTON_FFX3_UPGRADE` | Auto-download FFX III | | `ffx4` | `PROTON_FFX4_UPGRADE` | Auto-download FFX IV | | `nvidialibs` | `PROTON_NVIDIA_LIBS` | Enable nvidia-libs (nvcuda, nvenc, nvml, nvoptix) | | `nvidialibsno32` | `PROTON_NVIDIA_LIBS_NO_32BIT` | 64-bit nvidia libs only | | `nvcuda` | `PROTON_NVIDIA_NVCUDA` | Enable nvcuda.dll only | | `nvenc` | `PROTON_NVIDIA_NVENC` | Enable nvencodeapi.dll only | | `nvml` | `PROTON_NVIDIA_NVML` | Enable nvml.dll only | | `nvoptix` | `PROTON_NVIDIA_NVOPTIX` | Enable nvoptix.dll only | | `nowmdecoration` | `PROTON_NO_WM_DECORATION` | Disable WM window decorations | | `wayland` | `PROTON_ENABLE_WAYLAND` | Enable Wayland (experimental winewayland) | | `wayland` | `PROTON_USE_WAYLAND` | Alias of `PROTON_ENABLE_WAYLAND` | | `pipewire` | `PROTON_USE_PIPEWIRE` | Enable winepipewire audio driver | | | `DXVK_HDR` | Enable HDR (Nvidia < 595.x) | | | `DXVK_NO_HDR` | Force disable HDR | | `sdlinput` | `PROTON_PREFER_SDL` or `PROTON_USE_SDL` | Use SDL input | | | `PROTON_NO_STEAMINPUT` | Disable Steam Input | | `localshadercache` | `PROTON_LOCAL_SHADER_CACHE` | Per-game shader cache | | | `PROTON_ENABLE_MEDIACONV` | Enable media converter (debug) | | | `PROTON_MEDIA_FORCE_GST` | Fix video/audio playback | | | `PROTON_GST_VIDEO_ORIENTATION` | Video orientation (gstreamer videoflip) | | `vkreflex` | `DXVK_NVAPI_VKREFLEX` | Enable Vulkan Reflex via DXVK-NVAPI | | `lowlatencylayer` | `LOW_LATENCY_LAYER` | Enable low_latency_layer | | | `PROTON_USE_OPTISCALER` | Auto-inject OptiScaler | | | `PROTON_DISCORD_BRIDGE` | Enable rpc-bridge for Discord Rich Presence | **Other useful env vars:** | Env var | Description | | ------------------- | --------------------------------------------------------------------------- | | `WINE_BLOCK_HOSTS` | Hosts Wine won't connect to (comma/semicolon, max 16 hosts, 256 chars each) | | `WINEALSA_CHANNELS` | WineALSA speaker channels (2, 4, 6, 8) | | `WINEALSA_SPATIAL` | Spatial audio downmix (`1`/`0`) | | `WINE_AUDIO_DRIVER` | Audio drivers (default: `pipewire,pulse,alsa`) | | `GST_GL_WINDOW` | GStreamer GL window mode | --- ## OBS Game Capture (obs-gamecapture) **Launch:** `obs-gamecapture [options] -- %command%` | Arg | Description | | --------------- | --------------------- | | `--width ` | Capture width | | `--height ` | Capture height | | `--rate ` | Capture frame rate | | `--no-sound` | Disable audio capture | | `-h` / `--help` | Show help | **Env vars:** | Env var | Description | | ----------------------- | ---------------------------------- | | `OBS_NO_GAMECAPTURE` | Disable OBS game capture detection | | `OBS_FORCE_GAMECAPTURE` | Force OBS game capture | | `OBS_NO_XLIB` | Disable XLIB capture backend | | `OBS_NO_XSHM` | Disable XSHM capture backend | | `OBS_NO_VKCAPTURE` | Disable VK capture backend | --- ## gamemode / gamemoderun **Launch:** `gamemoderun %command%` **Env vars:** | Env var | Description | | ----------------- | ------------------------------ | | `GAMEMODE_CONFIG` | Override gamemode.ini location | **Steam compat env vars (set by Steam, visible to gamemode):** | Variable | Description | | ---------------------------------- | ------------------------------- | | `STEAM_COMPAT_APP_ID` | Game AppID | | `STEAM_COMPAT_DATA_PATH` | Game compatdata path | | `STEAM_COMPAT_CLIENT_INSTALL_PATH` | Steam install path | | `STEAM_COMPAT_INSTALL_PATH` | Game install path | | `STEAM_RUNTIME` | `1` if Steam Runtime active | | `WINEPREFIX` | Wine prefix (if through Proton) | --- ## Sources - [Gamescope README](https://github.com/ValveSoftware/gamescope/blob/main/README.md) - [Steam for Linux README](https://github.com/ValveSoftware/steam-for-linux/blob/main/steam/README.md) - [Proton-GE README](https://github.com/GloriousEggroll/proton-ge-custom/blob/main/README.md) - [Proton-CachyOS README](https://github.com/CachyOS/proton-cachyos/blob/cachyos_main/README.md) - [OBS Studio](https://github.com/obsproject/obs-studio) - [OBS Game Capture](https://github.com/obsproject/obs-gamecapture) - [gamemode](https://github.com/gamemodeorg/gamemode)