Table of Contents

TODOs

Vulkan

winetricks renderer=vulkan

Wayland

DISPLAY=

Environment Variables

Global

sudo -e '/etc/profile.d/99-wine-tweaks.sh'
# Large Address Aware
export WINE_LARGE_ADDRESS_AWARE='1'

# Logging
export DXVK_LOG_LEVEL='none'
export WINEDEBUG='-all'
export VKD3D_DEBUG='none'
export VKD3D_SHADER_DEBUG='none'

# End

Tweaks

# Staging
export STAGING_RT_PRIORITY_SERVER='90'
export STAGING_RT_PRIORITY_BASE='90'
export STAGING_SHARED_MEMORY='1'
export STAGING_WRITECOPY='1'

# Large Address Aware
export PROTON_FORCE_LARGE_ADDRESS_AWARE='1'

# Esync and Fsync
export WINEESYNC='1'
export WINEFSYNC='1'
export WINEFSYNC_FUTEX2='1'

# VKD3D
export VKD3D_CONFIG='dxr'

# Proton-GE
export DXVK_ASYNC='1'

NVIDIA

# NVIDIA
export __GL_ALLOW_UNOFFICIAL_PROTOCOL='1'
export __GL_SHADER_DISK_CACHE='1'
export __GL_SHADER_DISK_CACHE_SKIP_CLEANUP='1'
export __GL_IGNORE_GLSL_EXT_REQS='1'
export __NV_SIGNED_LOAD_CHECK='none'
export __GL_THREADED_OPTIMIZATIONS='1'

# NVAPI
export DXVK_ENABLE_NVAPI='1'
export PROTON_ENABLE_NVAPI='1'

Other

__GL_YIELD='USLEEP'
__GL_SYNC_TO_VBLANK='0'
__GL_LOG_MAX_ANISO='4'
__GL_MaxFramesAllowed='1'

Permissions

RT Priority Permissions

groups
sudo mkdir -p '/etc/security/limits.d' && echo -e "@CHANGEME - rtprio 94\n@CHANGEME - nice -10" | sudo tee '/etc/security/limits.d/99-realtime.conf' > '/dev/null' && sudo sed -i 's/'CHANGEME'/'$USER'/g' '/etc/security/limits.d/99-realtime.conf' && cat '/etc/security/limits.d/99-realtime.conf'

Verify

ulimit -r

Increase Open Files Limit

sudo mkdir -p '/etc/systemd/system.conf.d' '/etc/systemd/user.conf.d' && echo -e "[Manager]\nDefaultLimitNOFILE=1048576" | sudo tee '/etc/systemd/system.conf.d/nofile.conf' > '/dev/null' && echo -e "[Manager]\nDefaultLimitNOFILE=1048576" | sudo tee '/etc/systemd/user.conf.d/nofile.conf' > '/dev/null' && cat '/etc/systemd/system.conf.d/nofile.conf' '/etc/systemd/user.conf.d/nofile.conf'

Verify

ulimit -Hn

DXVK

sudo -e '/etc/profile.d/wine-tweaks.sh'
#export mesa_glthread=true
export MESA_NO_ERROR=1
export DXVK_LOG_LEVEL=none
export DXVK_ASYNC=1
export DXVK_CONFIG_FILE=~/.config/dxvk/dxvk.conf
mkdir -p ~/'.config/dxvk' && nano ~/'.config/dxvk/dxvk.conf'
#dxvk.hud = full
dxvk.enableAsync = true
#d3d9.numBackBuffers = 3
#dxgi.numBackBuffers = 3
#d3d11.samplerAnisotropy = 16
#d3d9.samplerAnisotropy = 16
#dxgi.maxFrameLatency = 1
#d3d9.maxFrameLatency = 1
dxgi.nvapiHack = false
1)
if this becomes unavailable, it seems to be a source file for a DRI Conf tool
2)
2023: This is the case for Fedora 39, openSUSE TW, and Ubuntu 23.10