WARNING: Blizzard does not officially support running Diablo 2: Resurrected on Linux. It’s possible that they could start disallowing this somehow, or even banning people that are doing it. However, the entire software world has become much more friendly with Linux in recent years. And, Windows 10 is now freeware, so MS has less incentive to care about people running Windows applications on other OS. There is no “hacking” required for this to work.
Earlier this year I ditched my Windows laptop, marking the end of my lifelong habit of running OSX and/or Windows. I'd dabbled in Linux on and off since college, starting with Mint which is great. Then I started using Linux for work, and it just started to feel more natural than the alternatives. So I got a pure Linux machine. I'm running a popular distro that is based on Ubuntu.
Wine is a set of libraries written in C and compiled for Linux, but with the same names as core Windows OS libraries (.dll files). But these are special .dll files in that they actually intercept Windows OS calls and redirect them to analogous Linux Kernel calls. In this way, Wine can run many Windows applications, in a way that is very close to native. There's no emulator, no virtualization, no containerization, so it's about as close to the metal that I could imagine for what it does. Wine is an amazing project with a long history.
But Wine is VERY hard to configure until you have spent a lot of time running into its idiosyncrasies -- its GUI is not intuitive. So, Lutris is a modern GUI that just configures and runs Wine for you in targeted ways -- for the sole purpose of running Windows games. It has a community of volunteers that write "Lutris scripts" that allow everyone to run a particular game. When a new game comes out, it sometimes takes a few days or weeks for someone to write and distribute the new script.
In the case of D2R, there is no wait because Lutris already runs Battle.Net, and runs it well. So Lutris runs bnet, and bnet installs the game into Wine. I played the open beta just fine.
Install Lutris (
sudo apt install lutris
if your distro uses dpkg), then search battlenet
in Lutris, and the bnet installer will come up. Install bnet this way and launch it to ensure it runs, then close it.NOTE: check the date of this post, the following steps will become stale/obsolete at some point, as this workflow inevitably improves and becomes more automated and plug-and-play later on.
Follow the steps in this GitHub comment which covers installing D2R from within bnet, then replacing two files (manually apply a patch). NOTE: The part at the end about
RADV_DEBUG=nohiz
only applies if your GPU is AMD. If you have Nvidia, you don't need to do that step. In very recent years, Nvidia started playing very nicely with LinuxYou will need a GitHub account to download the .zip file referenced in the comment linked below.
Wine patch for D2R (as of Aug 2021)
Good luck!
p.s. See @klh 's post below from 9/24, about newest version running fine out of the box in Arch.
moonlit
94