« Back to article list

Diablo 4 on GNU/Linux

Table of Contents

A long time ago, when I first started my website, I would try to write random helpful articles that weren't such opinion pieces on coding conventions and practices etc.

This is one of those very specific "how tos".

I'll try to treat this as a living document, and add fixes/tweaks I have to apply as time goes on, as certain other sources (reddit etc.) seem less permanent now than in the past (as of this writing, the entire Lutris subreddit is banned/unreadable - blocking off a host of good information, thanks to the API change protests at first, then a retalatory ban in response).

Overall, Diablo 4 runs very well on GNU/Linux (I'm using a Lenovo Thinkpad X1 Extreme gen 3, with Arch Linux).

Getting the base going

From here on, I'll assume the basics for GNU/Linux gaming are already setup:

Installing the game initially

Open up Lutris, look in the top left corner for the big plus ("+") and click it. Choose to install via the first option - from an online recipe.

Search for "Diablo IV" - you should see a single match (or use this link from the web to launch in Lutris directly https://lutris.net/games/diablo-iv/)

Common Issues

Lutris tries to install battle.net and stops halfway

This was a big blocker for me, and led me into trying many non-lutris alternatives, until I thankfully stumbled on a solution on YouTube, by the creator of proton-GE, Glorious Eggroll themself - https://www.youtube.com/watch?v=PRY56C9Jce0&lc=.

Essentially, the recommendation is get a copy of the bnet binary from an external source, and drop it in the expected target directory for bnet via lutris, then close (X) the bnet loader that is paused at 50%, but wait a bit longer for the lutris process to resume and detect that it is installed.

It should then treat it as a successful bnet install, and proceed to install Diablo IV (side note - I had installed initially under Windows, and had the bnet launcher detect that install by mounting my NTFS partition under GNU/Linux).

"gpu not supported" or "gpu not detected" when using discrete GPU

Something may be wrong with your "prime-run" setup - try this:

prime-run glxinfo|grep -i nvid

Did it show info about Nvidia? If not, you can remove the grep portion and see it likely ran off your integrated or failed to run at all.

If it did work, it may be complaining about a driver version - give this a shot:

https://us.forums.blizzard.com/en/d4/t/main-thread-gpu-drivers-out-of-date/89

Add -bypassgpudrivercheck to the special args under game settings in bnet launcher.

"gpu not supported" or "gpu not detected" when using discrete GPU post v1.0.3a patch

Blizzard made a terrible change, and set "Adapter" to 0 in "LocalPrefs.txt" in this patch (June 30th, 2023 or so). Unfortunately, this will force the game to look at the integrated GPU, which isn't going to work. Change the "0" to a "1" and you'll be back in business.

https://www.reddit.com/r/linux_gaming/comments/14nge5d/diablo_4_suddenly_not_working_on_steam/

I notice my Lutris+Diablo IV setup created this file under "~/Documents/Diablo IV/LocalPrefs.txt". For users going via steam, it will likely be elsewhere. If that reddit link disappears, try:

find ~ -name LocalPrefs.txt

Ground textures are blurry / FPS stutters consistently

You may have missed my recommendation above to use Nvidia `v530` and not `v535`. This will require using Linux 6.3.5 - on Arch, I pinned all of this as such in my /etc/pacman.conf file:

IgnorePkg   = linux linux-headers linux-api-headers nvidia nvidia-utils lib32-nvidia-utils