Skip to content

Wine Plus BattleNet



  • You will need the system 32 & 64 bit libraries for libldap, gnutls
  • Use the latest wine-staging
  • You must use a 64 bit prefix set to Windows 10
  • Using wintricks, install : wininet corefonts vcrun2005 vcrun2008 vcrun2015
  • Install BattleNet

Here are the commands to replicate what I did on my systems. Some components, such as being anal about "WINEARCH=64", may not be needed in all spot, but I prefer to force the issue rather than tempt fate (fate is not a good friend of mine).

  1. Get prefix built and start getting the meat and potatoes installed for getting BattleNet installed:

    WINEARCH=win64 WINEPREFIX=/home/andrew/Games/wine/BattleNet winetricks -q corefonts wininet
    WINEARCH=win64 WINEPREFIX=/home/andrew/Games/wine/BattleNet winetricks -q win10
  2. Get BattleNet installer, I will show here on the CLI:

    curl -o /home/andrew/Games/wine/Battle.Net-Setup.exe ""
    chmod a+x /home/andrew/Games/wine/Battle.Net-Setup.exe
  3. Run BattleNet setup and quit out after you are finished installing. DO NOT LOG IN! May take a few moments. A crash of the app after installation when it tries to load up is fine, as we are missing the remaining winetricks stuff.

    WINEARCH=win64 WINEPREFIX=/home/andrew/Games/wine/BattleNet wine /home/andrew/Games/wine/Battle.Net-Setup.exe
  4. Add the remaining winetricks components and reset back to win10

    WINEARCH=win64 WINEPREFIX=/home/andrew/Games/wine/BattleNet winetricks -q vcrun2005 vcrun2008 vcrun2015
    WINEARCH=win64 WINEPREFIX=/home/andrew/Games/wine/BattleNet winetricks -q win10
  5. Fire up BattleNet, but DO NOT LOG IN

    WINEPREFIX=/home/andrew/Games/wine/BattleNet/ wine /home/andrew/Games/wine/BattleNet/drive_c/Program\ Files\ \(x86\)/\ Launcher.exe
  6. Settings repair time!

    * Click the settings gear to open the pulldown and select "Settings"
    * In The "Advanced" section, untick "Use browser hardware acceleration when available"
    * Click the "Done" button.
    * Log in using your credentials.
  7. Install your games. Refer below as to what needs to be fixed for each title.



  • When logging into the BattleNet App initially, click the little gear in top right, move mouse down to click "Settings" & go to "Advanced" tab and check "Disable browser acceleration"


Each title may require SOMETHING to be done to enable its functionality. Here are the list of games, and their respective remedies.


  • Now works without any modification in a 64-bit prefix


  • I do not own this title... yet.
  • Does not currently have any reports of game working via wine.


  • In BattleNet, goto the Hearthstone game settings and set the game launch option to be "-force-d3d9".
  • There is an exit issue for some folks. The fix for this is either xkill or an ALT-F4 sadly.


  • In BattleNet, goto the Heroes of the Storm game settings and set the game launch option to be "-force-d3d9".
  • In BattleNet, goto the Heroes of the Storm game settings and set the game to "Luanch 32-bit client".


  • Run on low settings due to the performance bugs in wine. As time goes on this will not be needed.
  • Game is still prone to graphics related lag spikes.


  • I do not own this title yet.
  • Should work without modifications.


  • Should work without modifications.


  • Should work without modifications.
  • Disable Lutris runtime if you run into disconnection errors when launching via the BattleNet app, but not directly.


Curse now works with Wine. So you can follow my guide here or use the old guide below.

  • Manually -- doable, but not my style
  • WoWMatrix -- a decent solution but missing a notable chunk of addons. Most useful ones are there, so this is not as bad of a solution as you may initially be led to believe.
  • LCurse -- My personal favorite. This is a Python based unofficial client for Curse.


Installation and usage is rather straightforward. Download the Java program, flag it executable, and run it. It will self update. You will point this at your WoW installation directory, and it can scan and manage what it knows in its database.


A bit more complicated initially, but well worth the effort.


You have two options, manage using git, or manually via the tarball/zip archive. The latter is rather straightforward. However the git method is best and far more flexible.

  1. The dependencies are straightforward, all Python3 libraries. You can do either a:

    pip3 install -r requirements.txt

    Or you can do this on Fedora :

    sudo dnf install python3-{qt5,lxml}
  2. Make a directory somewhere that you wish to have lcurse live. I chose ~/Applications/lcurse/. Open a terminal and 'cd' into that directory.

  3. Run the following command to clone the directory. Note, with git, you can only have a directory associated with one repo, so we must create a specific folder for git to work on (for those unaware).

    git clone
  4. To run lcurse

    cd lcurse
  5. To update in the future (one could script this along with running lcurse afterwards, ensuring that the application is always up to date when run)

    cd /path/to/lcurse # The application's directory, this will have a .git/ folder and the lcurse binary
    git pull