Elite Dangerous Install Guide for Ubuntu Linux

UPDATE

⚠ 22/08/2021: This guide is outdated. You no longer need to manually fiddle with this Proton prefix in order to play the game. I have tested this from a bare installation using "Proton 6.3-6" and the game installs and plays fine. I've left this article visible to show the rapid progression of gaming on Linux.


Introduction

I've seen lots of Linux gamers online having issues trying to get this game to run. So, today I thought I'd install "Linux Mint MATE 19.2" from a fresh install, and see if I could get “Elite Dangerous” running on it. I documented my steps along the way.

Hopefully this will help others wanting to play “Elite Dangerous” after running “Linux Mint MATE 19.2” from a fresh installation. Here's how it went.

Tested on: Linux Mint MATE 19.2 / Ubuntu MATE 18.04.3 LTS / Xubuntu 18.04.3 LTS with NVIDIA graphics. (AMD Radeon 7xxx users, please see the bottom of this document if your game fails to load)

Updating NVIDIA graphics drivers & installing Vulkan support

After installing Linux Mint MATE 19.2 from a USB stick and booting it up, I noticed that the “NVIDIA 390” drivers came as default. I own a “ASUS STRIX GTX 970” graphics card, so I upgraded them to nvidia-430 driver by opening a terminal and,

🔥 "before you do this, check that this driver supports your gfxcard"

1sudo add-apt-repository ppa:graphics-drivers/ppa
2sudo apt update
3sudo apt install nvidia-driver-430 libnvidia-gl-430 libnvidia-gl-430:i386 libnvidia-compute-430 nvidia-dkms-430 nvidia-kernel-source-430 libnvidia-compute-430 nvidia-compute-utils-430 libnvidia-decode-430 libnvidia-encode-430 nvidia-utils-430 xserver-xorg-video-nvidia-430

I then installed the Vulkan libs for NVIDIA.

1sudo apt install libvulkan1 libvulkan1:i386

AMD Radeon 7xxx User? If you have AMD graphics refer to this page for updating your drivers and enabling Vulkan. Also, for “AMD Radeon 7xxx” users, please check the bottom of this document for info on setting your kernel gfxdriver from “Radeon” to “AMDGPU”. :star: IMPORTANT :star:

Checking Esync

Next, I checked the resource limit with,

1ulimit -Hn

it reported back

11048576

this is fine, so long as the number is at or above, 524288 for use with Esync. If your limits report back as 4096 refer to this page on enabling Esync.

Checking The Linux Kernel Version

Then I checked the Linux kernel version,

1uname -a
2# "Linux supa-All-Series 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux"

Installing WINE 4.14 (staging)

Next, I installed WINE 4.14 (staging) and used “wget” to get a key from the OBS repos. This is to fix a Faudio library dependency issue which is currently blocking upgrades from WINE 4.12.1 (staging) in the normal way.

🗒️ This may have been fixed in later versions of WINE staging, but this is how I did it.)

First we create a download folder for the library, then we fetch it from the net with wget. Then we install WINE 4.14 (staging) on top of it once the key is added.

 1cd Downloads/
 2mkdir releaseKey
 3cd releaseKey/
 4wget -nc https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/xUbuntu_18.04/Release.key
 5sudo apt-key add Release.key
 6sudo apt-add-repository 'deb https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/xUbuntu_18.04/ ./'
 7sudo apt update
 8sudo dpkg --add-architecture i386
 9wget -nc https://dl.winehq.org/wine-builds/winehq.key
10sudo apt-key add winehq.key
11sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'
12sudo apt update
13sudo apt install --install-recommends winehq-staging wine-staging wine-staging-i386
14sudo apt install libgnutls30:i386 libldap-2.4-2:i386 libgpg-error0:i386 libxml2:i386 libasound2-plugins:i386 libsdl2-2.0-0:i386 libfreetype6:i386 libdbus-1-3:i386 libsqlite3-0:i386

Installing WInetricks

Next I installed “winetricks”, (for an updated Winetricks see the bottom of this document for an installation guide).

1sudo apt install winetricks

Installing Protontricks

Protontricks is a very useful tool which is used in the same way as “winetricks”, but is designed to be easier to use when adding things into Steam Proton WINE bottles. Simply type its name into terminal to see how to use it. For now, we’ll just install it.

1sudo apt install python3-pip python3-setuptools python3-venv
2python3 -m pip install --user pipx
3~/.local/bin/pipx ensurepath

I then closed this terminal and opened a new one to complete the Protontricks install,

1pipx install protontricks

Installing Steam

Next I installed Steam from the Linux Mint “Software Manager”. I noticed that it would not run - so I rebooted the machine, and it was able to run after a reboot.

I saw that the NVIDIA 430 drivers were also correctly installed.

1nvidia-smi
2# NVIDIA-SMI 430.40   	Driver Version: 430.40   	CUDA Version: 10.1 	

Enabling Steam Play (Proton)

I loaded up Steam and enabled Proton from the Steam > Settings > Steam Play "Enable Steam Play for all other titles", then restarted Steam.

Editing the “Elite Dangerous” WINE prefix folder

I downloaded "Elite Dangerous". Once downloaded, I run it once, so it registered its wine prefix in, /home/supa/.steam/steam/steamapps/compatdata/359320/pfx/

Then, with my file manager, I navigated to that path and deleted all files and folders in the pfx/ folder, then closed Steam.

Installing Lutris

Next up, I installed Lutris from the terminal,

1sudo add-apt-repository ppa:lutris-team/lutris
2sudo apt-get update
3sudo apt-get install lutris

once Lutris was installed, I ran it from terminal,

1lutris

I noticed that I had to install the "lutris-4.12.1-x86_64" wine version by going to the top left icon on the Lutris window, selecting “Manage Runners”, then, in the list — I looked for “Wine” - clicked on the "Manage Versions" icon and installed the "lutris-4.12.1" wine. This is what I've set as the default wine launcher in Lutris and also what I used instead of the old “lutris_experimental” as shown in my video.

Installing “dotnet45” & “vcrun2017” using Lutris

VIDEO GUIDE: My Lutris: “dotnet” and “vcrun” install tutorial

  1. Open Lutris in the terminal (this is important so you can see the output of winetricks). Open a terminal and type lutris
  2. In Lutris, press the top left + icon, then “Add Game”.
  3. In the “Game Info” tab, add a name into the “Name” field eg, “Let’s Fix ED”. Then in “Runner” dropdown pick “Wine (Runs Windows Games)
  4. On the “Game Options” tab enter the path for your Elite Dangerous “compatdata” folder into the “Wine prefix” field, eg, mine is in: /media/supa/Steam/SteamLibrary/steamapps/compatdata/359320/pfx/
  5. In the “Runner” tab” - choose "lutris-4.12.1-x86_64“ (Other Wine versions didn't work for me, so choose the same one as in this guide.).
  6. Next, ensure to leave "DXVK/VK3D" off, we don’t need that as all we are doing is installing “dotnet” and “vcrun”.
  7. In the “System option” tab - set “Disable Lutris Runtime” to ON and “Prefer system libraries” to OFF.
  8. Press “Save” on the window (bottom right).
  9. Select the new “Let’s Fix ED” icon you just created in Lutris and press “Winetricks” on the right of the Lutris window.

Lutris Winetricks

  1. Once the Winetricks window opens - choose “Select the default wineprefix” and press OK.
  2. In the Winetricks window select “Install a Windows DLL or component” and press OK.
  3. In the list, select “dotnet452” and “vcrun2017”, then press OK. Your terminal will go mental while “dotnet” and “vcrun” installs, so go grab a coffee or something - this will take a while.
  4. Next, select “Run winecfg” and press OK. When the window pops up, set the “Windows Version” on the “Applications tab” to “Window 7” and press Apply, then Ok.
  5. After your Winetricks window returns. Press “Cancel”, then “Cancel” again.

Selecting The Correct Proton Version in Steam

  1. Launch Steam and right click on Elite and select Properties.
  2. Select "Proton 4.11-13" to run Elite Dangerous with. (Previous and later versions may not work, so ensure to use 4.11-13 as stated in this guide).
  3. Press Play on "Elite: Dangerous" and wait for Steam to install any extra windows blobs into the Proton prefix on top of what we added via Lutris.
  4. You should now be able to launch the game launcher, enter your login details and play the game.

Other methods

Protontricks

If you found using Lutris to install “dotnet” and “vcrun” a bit overkill - you can use “Protontricks” to do the same.

After installing Protontricks, (shown previously in this guide) - in terminal do,

1protontricks 359320 dotnet452 vcrun2017 win7

🗒️ You will have needed to have launched the game once for Protontricks to detect it.

Winetricks

The version of Winetricks which ships with Ubuntu is outdated. In terminal, you can check the version of Winetricks you have by typing,

1winetricks --version

If your version is below "20190615-next", then you have an old one.

You can update it using the self update by typing,

1sudo winetricks --self-update

To update winetricks manually, you can visit this page. https://github.com/Winetricks/winetricks

The way I updated Winetricks manually through the terminal was like this,

  1. First uninstall the old Winetricks
1sudo apt purge winetricks
  1. To download and install the updated Winetricks manually — open a new terminal,
1cd Downloads/
2mkdir winetricks-update
3cd winetricks-update/
4wget https://github.com/Winetricks/winetricks/archive/master.zip
5unzip master.zip
6cd winetricks-master/
7sudo make install
8winetricks --version
  1. With Wine 4.13 (staging) installed, you can then do in terminal,
1WINEPREFIX=/path_to/your_elite_dangerous_compatdata/359320/pfx/ winetricks -q dotnet452 vcrun2017 win7

(Obviously replacing the /path_to/your_elite_dangerous_/compatdata/359320/pfx/ with the actual path to your Elite Dangerous /compatdata/359320/pfx/ folder.)

AMD Radeon HD7xxx User?

I spent the better part of last week helping a AMD Radeon user with everything from Vulkan setup, to the latest Wine 4.13 (staging). As it turns out, none of this was the issue as to why his game would not start. It was in fact that Linux Mint 19.2 was using the Radeon driver and not the AMDGPU.

To fix that, we had to do the following:

First install the vulkan-utils,

1sudo apt install vulkan-utils

then,

1vulkaninfo

if you get anything printed in the output that says “failed”, check with,

1lspci -k | grep -EA3 'VGA|3D|Display'

See if the output says,

1Kernel driver in use: radeon
2Kernel modules: radeon, amdgpu

it should read as,

1Kernel driver in use: amdgpu
2Kernel modules: radeon, amdgpu

If this is you, you'll need to do the following,

1sudo nano /etc/default/grub

change this line,

1GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

to

1GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.si_support=0 amdgpu.si_support=1"

then save the file by pressing Ctrl O, Return, Ctrl X

Next edit,

1sudo nano /etc/X11/xorg.conf

and add,

1Section "Device"
2	Identifier "AMD"
3	Driver "amdgpu"
4	Option "TearFree" "true"
5EndSection

Save the file, then,

1sudo nano /etc/modprobe.d/blacklist.conf

and add,

1#GPU
2blacklist radeon

Save that file, then do,

1sudo update-grub 
2sudo update-initramfs -u

after a reboot, check with,

1lspci -k | grep -EA3 'VGA|3D|Display'
2vulkaninfo

Source: https://github.com/redmcg/wine/issues/5

After doing this, the user I was helping was able to launch the game and play. I hope this helps. :smiley:

For any additional information or corrections to this guide, please leave me a comment here in the Lutris Forum: https://forums.lutris.net/t/solved-with-much-help-an-elite-dangerous-install-tutorial-that-genuinely-works/6606/57

Many thanks, -Supa

My Other Tutorials Skyrim Modding Guide For Linux for Linux.