Elite Dangerous on Steam Proton Linux and running EDDiscovery

Well, I was able to installed EDDiscovery and it runs fine in linux under the proton game prefix. It's installed as if it were windows. Copied the data from my windows partition over so i wouldn't have to redownload all the map and such and it runs fine. However when I run ED thru steam, it won't load because the wine prefix is already open so thi won't work. Is there something i'm missing? Can I insert something into the launch options thru steam to get EDDiscovery to launch when I launch ED? Anyone else run linux and do this would like to share how they did it? I already have EDDiscovery installed and running on the game's prefix within steam. If I could just load the explorer.exe would be fine. Thanks!
 
The last person on the Discord who wanted to run EDD on Linux ended setting up samba and running it on a windows system while reading the log files via network :/
 
I know this is a bit old, but you can give access to a different prefix's files so it can see them(i'll be under like a d: drive or z: drive) so you can have edd under a different prefix so both will load. I'm wondering how much better it loads there, because running it with mono is having some issues on my end.
 
I didn't see that it was a necro before starting typing this.. :D

I'm not an expert with proton, but in wine you ought to be able to run several programs in the same prefix. This is exactly the reason that there is a wineserver so that programs can use windows system calls to communicate with each other. In this case it would be important so use the same wineprefix and the same version of wine executables. That is to say if this isn't disabled for some reason in steam/proton, then don't use different proton versions for the different programs.

I'm not quite sure to explain how, but you could also start ED with proton without using steam. As you would start it from the command line or a script it ought to be able to start several programs running in the same prefix. For instance I installed EDO in wine and I start it like this:

Code:
#!/bin/sh
export WINEPREFIX=/media/sda4/wineprefix/elite
cd /media/sda4/wineprefix/elite/drive_c/Program\ Files\ \(x86\)/Frontier/EDLaunch
wine /media/sda4/wineprefix/elite/drive_c/Program\ Files\ \(x86\)/Frontier/EDLaunch/EDLaunch.exe /novr

You ought to be able to do something similar, IIRC it's called a PROTONPREFIX in proton. You'd also have to figure out where the proton executable is, i'd guess it's called proton and not wine in this case.

If you fail to get several apps running in the same prefix, then the idea about using symlinks is a good one. Like that they both run in different prefixes each with it's own "wine" server. Then EDDiscovery can get access to the log files through a symlink.

As a matter of interest, does the voice support work in wine/proton?

I tried to install VoiceAttack in wine and couldn't get the windows voice support working, so gave up on VA. Maybe I'll try again using proton.
 
you could probably get away with renaming the launcher exe to something else. creating a .bat file that launches the new exe as well as eddiscovery's exe then converting the .bat to an exe using something like described here :

you'd have to re-copy that for each launcher update (or every time you validate local files) ...and make sure your bat file passes along arguments to the launcher exe. But that should do the trick.
 
I put my EDDiscovery in a separate pfx in lutris. Setup a folder to where it looks for updates.
Made a script that copies the frontier log to where eddiscovery looks, every 15 seconds. I run this in a terminal, so i can see it update.
simple script. Added the date command so I can see it working. Source should be a typical ED install for steam, remember to change your source destination.

#!/bin/bash

while sleep 15;
echo "-----";
do cp -urv "/home/$USER/.local/share/Steam/steamapps/compatdata/359320/pfx/drive_c/users/steamuser/Saved Games/Frontier Developments/Elite Dangerous" "/home/$USER/CHANGE THE DESTINATION/pfx/drive_c/users/temp";
echo " ";
date;
echo "====";
done
 
Back
Top Bottom