How to Set Up DXVK in Wine on Linux

To set up DXVK in Wine on Linux, download its official release, copy the DLLs into your game’s Wine prefix, and add native overrides in winecfg. DXVK translates Direct3D 8–11 calls to Vulkan; it does not install Wine.

Check Wine and Vulkan first

Use Wine 7.1 or newer and a current graphics driver. DXVK 3.x requires a Vulkan 1.4-capable driver with the features in its driver support guide; a version number alone is not enough. For 32-bit games on 64-bit Linux, install 32-bit Vulkan libraries too.

Check Wine with wine --version. Run vulkaninfo --summary to inspect devices and API version; install your distribution’s Vulkan tools package if missing. Update drivers through your distribution or GPU vendor.

Example Linux terminal showing Wine and Vulkan version checks before DXVK setup
The device and driver details in a Vulkan summary vary by computer; confirm that your installed driver meets DXVK’s current requirements.

Step 1: Download and extract DXVK

Download the latest stable archive from the official DXVK releases page. The page currently lists 3.1.1 as latest. If a newer release is available, use it and change the version in the folder path below. Upstream’s current method installs the release DLLs into a Wine prefix.

Extract the archive. Its folder contains separate x64 and x32 directories.

Extracted DXVK 3.1.1 archive with separate x64 and x32 DLL folders
DXVK’s release archive separates 64-bit and 32-bit DLLs into the x64 and x32 folders.

Step 2: Install DXVK into the game’s Wine prefix

A Wine prefix holds a game’s Windows files, registry, and settings. Install DXVK and launch the game from the same prefix. This example creates ~/Games/dxvk-prefix; adjust the archive path if needed.

export WINEPREFIX="$HOME/Games/dxvk-prefix"
DXVK_DIR="$HOME/Downloads/dxvk-3.1.1"
mkdir -p "$WINEPREFIX"
wineboot -u
cp "$DXVK_DIR"/x64/*.dll "$WINEPREFIX/drive_c/windows/system32/"
cp "$DXVK_DIR"/x32/*.dll "$WINEPREFIX/drive_c/windows/syswow64/"

In a standard 64-bit prefix, Wine stores 64-bit DLLs in system32 and 32-bit DLLs in syswow64. In a pure 32-bit prefix, put only x32 files in system32. Do not run Wine as root or copy DLLs into Linux system directories.

Terminal commands copying DXVK x64 and x32 DLLs into the matching Wine prefix folders
Install both DLL sets in a 64-bit prefix so it can run either 64-bit or 32-bit Windows programs.

Step 3: Add the Wine DLL overrides

Open the configuration window for that exact prefix:

WINEPREFIX="$HOME/Games/dxvk-prefix" winecfg

In Libraries, add native overrides for d3d8, d3d9, d3d10core, d3d11, and dxgi, following the DXVK README. Put native first if Wine offers a load-order choice, then apply and close winecfg.

Step 4: Launch the game and verify DXVK

Start the game from its executable using the same prefix. Temporarily enable the DXVK HUD to confirm that the game loaded the translation layer:

DXVK_HUD=devinfo,fps WINEPREFIX="$HOME/Games/dxvk-prefix" wine "/path/to/Game.exe"

Replace /path/to/Game.exe with the executable’s path. A HUD showing the device and frame rate confirms DXVK is active. Remove the DXVK_HUD setting to hide it. DXVK writes diagnostics to the terminal; set DXVK_LOG_PATH to save log files in a folder.

Generic game window with the DXVK HUD showing version, graphics device, driver, and frame rate
The DXVK HUD can display the active DXVK version, graphics device, driver, and FPS.

If the game does not start

  • No HUD appears: confirm the executable uses the prefix where you copied the DLLs and set the overrides. The game may also be using a different graphics API.
  • Vulkan initialization fails: check the driver support guide, update the GPU driver, and confirm that both 64-bit and 32-bit Vulkan components are installed when needed.
  • The game uses Direct3D 12: DXVK covers Direct3D 8 through 11. Direct3D 12 titles need a separate translation layer such as VKD3D-Proton; DXVK alone will not handle them.
  • Online game: some multiplayer titles treat replacement Direct3D libraries as prohibited modifications. The DXVK project warns that using them can lead to an account ban, so check the game publisher’s rules before proceeding.

To remove DXVK from a prefix, remove the DXVK DLLs you copied, delete the corresponding overrides in winecfg, and run WINEPREFIX="$HOME/Games/dxvk-prefix" wineboot -u to restore Wine’s built-in DLLs. For games managed by Lutris, Bottles, Heroic, or Steam/Proton, use the launcher’s DXVK setting instead; those tools manage their own prefixes.

Official references

See the DXVK project for release files and manual installation steps, the driver support guide for current Vulkan requirements, and WineHQ’s download guide for distribution-specific Wine packages.

Leave a Comment

How to Record Speaker Output on Linux with Audacity

How to Record Speaker Output on Linux with Audacity

Capture Linux desktop audio in Audacity by routing its recording stream to your output device’s monitor source. Follow PulseAudio and PipeWire steps, export tips, and fixes for silent tracks.

How to Use Dropbox on Linux: Install and Sync Your Files

How to Use Dropbox on Linux: Install and Sync Your Files

Install Dropbox on Linux from the official package, sign in, sync a local folder, manage selective sync, and check status from the command line.

How to Install Inkscape on Linux: Ubuntu, Fedora, Arch, and More

How to Install Inkscape on Linux: Ubuntu, Fedora, Arch, and More

Install Inkscape from your Linux distribution’s repositories, the Ubuntu stable PPA, Snap, or Flathub, with current commands and notes for choosing a package source.

How to Find and Remove Duplicate Files on Linux With FSlint

How to Find and Remove Duplicate Files on Linux With FSlint

Use FSlint to scan selected Linux folders, review duplicate groups, and safely delete redundant files or learn when hard-link merging is appropriate.

How to Install SABnzbd on Linux and Configure It

How to Install SABnzbd on Linux and Configure It

Install SABnzbd on Ubuntu or Debian, or run it in Docker on another Linux host. Then open the web interface and configure your provider and download folders.

How to Install the Paper GTK Theme on Linux

How to Install the Paper GTK Theme on Linux

Install the Paper GTK theme from supported Linux repositories, enable it for GTK apps in GNOME Tweaks, and see what the legacy theme can and cannot change.

How to Install and Set Up Plex on OpenMediaVault with Compose

How to Install and Set Up Plex on OpenMediaVault with Compose

The old OpenMediaVault Plex plugin is archived. Set up Plex on OMV 8 with OMV-Extras, the Compose plugin, persistent storage, and Plex’s official container.

How to Clean and Speed Up Ubuntu Safely

How to Clean and Speed Up Ubuntu Safely

Clean and speed up Ubuntu with safe APT cleanup, storage checks, and startup controls that help free space and troubleshoot a sluggish desktop.

How to Install the Hiri Email Client on Linux

How to Install the Hiri Email Client on Linux

Install Hiri on Linux with its Snap package or official tarball, add a desktop launcher, and check supported accounts plus a warning about Hiri’s old Snap release.

How to Get System Specifications for a Linux PC

How to Get System Specifications for a Linux PC

Use Fastfetch and built-in Linux commands to check your distro, kernel, CPU, memory, graphics, storage, and connected devices, then save a clear report.