How to install ED on Linux using Wine [EXPERIMENTAL, NOT OFFICIALLY SUPPORTED]

And there's your problem. The launcher is a 32 bit Mono application - start it with wine, not wine64.

Tried that.

Alas...

2ckN2wO.png


EDIT: Seem to be missing something then...

Code:
Unhandled Exception: System.TypeInitializationException: The type initializer for '<Module>' threw an exception. ---> <CrtImplementationDetails>.ModuleLoadException: The C++ module failed to load during appdomain initialization.
 ---> System.DllNotFoundException: dwrite.dll or wpftxt_v0400.dll ---> System.ComponentModel.Win32Exception: Module not found
 
Yes, sorry, I should really ASAP repair instructions in OP

REPLACE wine64 binary in instructions with wine binary, and run same commands !!!!

EDIT: updated OP according to newest instructions.
 
Last edited:
I was a little worried multiplayer communication wasn't working correctly as nobody was responding to my 'o7' but it appears it's ok now :

sbNJwZs.png


I have experienced some stuttering and frame drops, also got a feeling increasing pulse audio latency may be required to get rid of some odd crackles.
 
Tried that.

Alas...



EDIT: Seem to be missing something then...

Code:
Unhandled Exception: System.TypeInitializationException: The type initializer for '<Module>' threw an exception. ---> <CrtImplementationDetails>.ModuleLoadException: The C++ module failed to load during appdomain initialization.
 ---> System.DllNotFoundException: dwrite.dll or wpftxt_v0400.dll ---> System.ComponentModel.Win32Exception: Module not found

Make sure setting winecfg to win7 is the last thing you do.
 
I'm still retesting, but 2.19 and 2.20 were the ones that always let me get the launcher up with. Still testing in PoL. I haven't tired 3.18 yet. Did get an error with 2.20(32bit window) that made it crash when clicking on the password window. Waiting on the very slow dl of the old wine version in PoL. I have to wait becasue installing winehq version for the main install unistalled parts of PoL.

BTW, anyone know how to use winehq to install old versions?

I was using, "sudo dnf install winehq-devel-2.19" and it wasn't working. I think this is how I used to download old versions. I can't remember. It says it can't find the file. Did they remove the ability to download old versions?
 
Last edited:
I'm still retesting, but 2.19 and 2.20 were the ones that always let me get the launcher up with. Still testing in PoL. I haven't tired 3.18 yet. Did get an error with 2.20 that made it crash when clicking on the password window. Waiting on the very slow dl of the old wine version in PoL. I have to wait becasue installing winehq version for the main install unistalled parts of PoL.

BTW, anyone know how to use winehq to install old versions?

I was using, "sudo dnf install winehq-devel-2.19" and it wasn't working. I think this is how I used to download old versions. I can't remember.


That error you stated can be got rid of by installing corefonts, as for versions it's best to be on a much newer wine as you'll need to use DXVK unless you want half your screen to be green.
 
On ubuntu 18.04.01 on fresh wineprefix command: wine reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid gives different key then command: wine64 reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid but when I use command: wine regedit and navigate to hkey_local_machine/software/microsoft/cryptography machineuid is same as wine64 reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid not wine reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid. (wine is wine-staging 3.18). And then there is hkey_current_user/software/frontier developments/cryptography machineguid which is totally different to others. So which one is the right one?

hmm wine reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid and wine64 reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid gives different result but running wine regedit and wine64 regedit open same regedit window with wine64 reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid as machineguid and HKLM\software\wow6432node\microsoft\cryptography machineguid is same as wine reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid

Only one is probably the right one and I guess it's the hkey_current_user/software/frontier developments/cryptography machineguid lets see... so putting hkey_current_user/software/frontier developments/cryptography machineguid to all places resulted in launcher not logging in. AND GAME WORKS. YES
 
Last edited:
On ubuntu 18.04.01 on fresh wineprefix command: wine reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid gives different key then command: wine64 reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid but when I use command: wine regedit and navigate to hkey_local_machine/software/microsoft/cryptography machineuid is same as wine64 reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid not wine reg query 'HKLM\Software\Microsoft\Cryptography' /v MachineGuid. (wine is wine-staging 3.18).

What I did:

WINEPREFIX='my wine prefix here' regedit

Then navigated to HKLM/Software/Microsoft/Cryptography

Clicked on machineguid, right click modify.

Copied that value.

Then navigated to HKLM/Software/Wow6432Node/Microsoft/Cryptography

Clicked on that machineguid, right click modify.

Then replaced that value with the one I copied previously.
 
For me the right key was one in hkey_current _user\software\frontier developments\cryptography machineguid. Now problem is keys bindings only few keys can be binned at same time. Seems that the keyboard layout is totally random.
 
Last edited:
Should, "WINEPREFIX=~/ed-wine wine winecfg" be, "WINEPREFIX=~/ed-wine wine64 winecfg"?
I get an error when I try to use just wine.
$ WINEPREFIX=~/ed-wine wine winecfg
bash: wine: command not found...
Packages providing this file are:
'winehq-devel'
'winehq-stable'
'winehq-staging'
'wine-core'

Not sure what it's from. Do I not have something installed?

Edit: NVM, this might be from me installing with winehq version installed.

Also, is this intentionally different from the other statements:

To install Winetricks dependencies use WINEPREFIX=~/edwine WINE=/usr/bin/wine ./winetricks dotnet452 corefonts quartz vcrun2012

It's normally ed-wine. Is this a typo or does it do something to help get it running?
 
Last edited:
First of all thank you for all the legwork in figuring out how to get ED running via Wine.

I'm certain I'm doing something wrong on my end but after multiple attempts I keep getting the same error. After walking through the steps in the OP and the updated steps on revising the machineid I'm getting the below error:

KNTuqGO.png


Basically the launcher is complaining that it can't reach the Elite Dangerous servers which is odd.

When I run the launcher via the wine CLI, I see that the launcher is unable to resolve some links and the following error which feels pertinent to the issue:

Code:
0041:fixme:ras:RasEnumConnectionsW RAS support is not implemented! Configure program to use LAN connection/winsock instead!
0041:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
0041:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
0041:fixme:ras:RasConnectionNotificationW (0xffffffff,0x2e8,0x00000003),stub!
0041:fixme:ntdll:EtwEventRegister ({38ed3633-5e3f-5989-bf25-f0b1b3318c9b}, 0x4d407be, (nil), 0x161357c) stub.
0041:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
0041:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
0041:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
0041:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
GnuTLS error: A packet with illegal or unsupported version was received.
0041:fixme:shell:URL_ParseUrl failed to parse L"System.Configuration"

I've been working with the issue for a few hours but I can't seem to pinpoint what I'm missing here. Is there an additional step anyone can think of that I need to take?

My setup is:
Ubuntu 18.10
wine-3.18 (staging)
Ryzen 1700x
Nvidia GTX 970

Thanks in advance for any advice or thoughts on what I'm not getting right!
 
Should, "WINEPREFIX=~/ed-wine wine winecfg" be, "WINEPREFIX=~/ed-wine wine64 winecfg"?
I get an error when I try to use just wine.

Not sure what it's from. Do I not have something installed?

Edit: NVM, this might be from me installing with winehq version installed.

Also, is this intentionally different from the other statements:

To install Winetricks dependencies use WINEPREFIX=~/edwine WINE=/usr/bin/wine ./winetricks dotnet452 corefonts quartz vcrun2012

It's normally ed-wine. Is this a typo or does it do something to help get it running?

It is a typo, fixing it.
 
For me the right key was one in hkey_current _user\software\frontier developments\cryptography machineguid. Now problem is keys bindings only few keys can be binned at same time. Seems that the keyboard layout is totally random.

Here's the thing, Joystick works fine however as soon as I attempt to bind a key from the keyboard it wipes the entire bindings. The log file in the bindings folder moans about a missing keyboard, the keyboard works in game just you can't bind keys without something breaking or funny symbols appearing in place of the keys letters.

I'm also unable to select presets as I'm stuck on custom, no drop down box.
 
Probably a stupid question but has anyone run into this?

$ WINEPREFIX=~/ed-wine wine "c:/Program Files/Elite Dangerous/EDLaunch.exe"
000b:fixme:winediag:start_process Wine Staging 3.17 is a testing version containing experimental patches.
000b:fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
0009:err:module:fixup_imports_ilonly mscoree.dll not found, IL-only binary L"EDLaunch.exe" cannot be loaded
0009:err:module:LdrInitializeThunk Importing dlls for L"c:\\Program Files\\Elite Dangerous\\EDLaunch.exe" failed, status c0000135

I tried running it with winehq-3.18 but I can't get it to start there either. I did get it started with PoL on 3.18 but it crashes after hitting login or something. And I have no idea what is installed in that one.

The mscoree dll is listed in the winecfg as being present also.

I can't even get the launcher to start up in normal wine atm.
 
Last edited:
Probably a stupid question but has anyone run into this?



I tried running it with winehq-3.18 but I can't get it to start there either. I did get it started with PoL on 3.18 but it crashes after hitting login or something. And I have no idea what is installed in that one.

The mscoree dll is listed in the winecfg as being present also.

I can't even get the launcher to start up in normal wine atm.

Do you use Wine with staging patches? Also I have seen this issue with self-compiled Wine on Fedora, but I don't get it with packaged wine. Not sure what difference is.

Please ensure you install everything with winetricks. It might indicate that winetricks didn't finish installation with dotnet40 / dotnet452

Here's the thing, Joystick works fine however as soon as I attempt to bind a key from the keyboard it wipes the entire bindings. The log file in the bindings folder moans about a missing keyboard, the keyboard works in game just you can't bind keys without something breaking or funny symbols appearing in place of the keys letters.

I'm also unable to select presets as I'm stuck on custom, no drop down box.

Hi,

Could you give me some description how you got it running under DXVK? I will try to link / include in OP. Thanks! :)
 
So did a few hour stream yesterday and tried to figure out how to solve the keybindings issue during that.
Basically what I've found that my mouse wasn't detected as a device called mouse but instead it's ID was: 3ED89E57
Keyboard was detected as 648A0AB8 (My Steam Controller was 28DE1142).
I was never able to fix keyboard or make the steam controller work, even when I used a custom keybinding file with stuff saved the game just can't find the keys on the keyboard since it detects them in game as the 'weird symbol characters'.
Also everytime you enter the 'keybindings' setup (or restart the game) the specific keybinding setup you set will be gone..and you have to setup everything again. It's a mess. But it works.. just.. I have to setup the entire thing each time I wanna play.
Oh, since I used a keyboard&mouse config and changed the Mouse to the specific ID of it, mouse does work perfectly. Only mouse, everything else is this mess of a thing [big grin]

Oh and I only tested it during the training missions, but the performance is great! Running it on a Ryzen 5 1600 & rx 560 (which is really a budget gpu)

(archive of the stream https://www.twitch.tv/videos/325293835)
 
Requirements for this guide: openSUSE Leap 15.0 or Tumbleweed. NVidia gfx card. About 20GB of disk space.
UPDATED:


  1. Wine 3.20 released, including keyboard/mouse/controller recognition patch. Removed my patched packages for now.
  2. Wine 3.19 released, including correct keypress recognition in bindings screen and winetricks with dxvk support
  3. My patched packages now offer the appropriate control presets for your system
  4. Corrected typo in winetricks line 'dxdotnet452'.

Steps to install/configure on openSUSE Leap 15.0 or Tumbleweed: with nvidia and DXVK:

  1. Install the latest wine 3.20 from the Emulators repo (Official packages repo URL)):
  2. (these instructions intentionally left vague to deter the inexperienced from borking their installation) Switch to a text console, stop X, uninstall packaged nvidia drivers, compile and install using the beta proprietary nvidia drivers that support the necessary Vulkan APIs, at time of writing 396.54.09 (NVidia Vulkan driver page, general installation instructions for these non-packaged drivers). Restart X.
  3. Install the distro's regular mono-core package
  4. Follow CMDR Eagleboy's instructions (lightly modified for different paths I encountered):
    1. Set a WINEPREFIX for your ED wine configuration. Remember to use the same prefix in later sessions, add it to your .profile or whatever: `export WINEPREFIX=~/ed-wine`
    2. To initialize Wine 64-bit prefix run `wine64 winecfg`. Click Cancel when it prompts you to install dotnet/mono. Then choose 'Windows 7' in version list and hit Apply for configuration change.
    3. To install Winetricks dependencies use`winetricks dotnet452 corefonts quartz vcrun2012`
    4. Switch back to Windows 7 after winetricks has changed it with `wine winecfg`.
    5. Install dxvk `winetricks dxvk` (the prior components need to be installed first, you can't install it with the earlier winetricks call)
    6. Install Elite Dangerous installer and launcher: `wine64 EliteDangerous-Client-Installer.exe`
    7. Launch ED launcher (pun intended) `wine64 "c:\Program Files (x86)\Frontier\EDLaunch\EDLaunch.exe"`
    8. Login, and install ED Horizons using launcher.
  5. Play the game!
  6. At this point you are a little on your own as the game will probably start the first time in 800x600 full screen, setting your desktop resolution to this and messing up your windowing system. Knowing how to unfsck that with `xrandr --display <your-display-here> --auto` up front is helpful.
  7. You'll have to reconfigure control bindings.

Please let me know if you try this and if you encounter any problems.


Outdated, kept for posterity:
Removed steps due to being included in wine/winetricks:


  1. Patched packages: my patched 15.0 packages with correct keyboard/mouse/controller preset recognition
  2. Download DXVK 0.90 (github project|release tarball)
  3. Install DXVK 0.90 into your WINEPREFIX:
    1. `tar xf /path/to/downloaded dxvk-0.90.tar.bz`
    2. `cd dxvk-0.90`
    3. `WINEPREFIX=~/ed-wine winetricks --force setup_dxvk.verb`
  4. Find out the MachineGuid 32bit wine saw and used to login to the launcher:
    1. Save the mono code below as mguidcheck.cs
    2. Compile the code using mcs from the mono-core package: `mcs mguidcheck.cs`
    3. Run the resulting .exe in wine: `wine mguidcheck.exe`
    4. Copy the GUID it outputs (among a mess of debug output here)
  5. Run regedit under wine64 to update its MachineGUID: `wine64 regedit` and set HKLM/Software/Microsoft/Cryptography/MachineGuid to the value output by mguidcheck.exe.

mguidcheck.cs (we-are-not-worthy to RedMcG):
Code:
using Microsoft.Win32;
using System;

public class HelloWorld
{
    static public void Main ()
    {
        Console.WriteLine  (Registry.LocalMachine.OpenSubKey("SOFTWARE\\\\Microsoft\\\\Cryptography").GetValue("MachineGuid").ToString());
    }
 
Last edited:
Which version of the Client Installer have folks been using? There are two.

The smaller 26Mb installer or the larger 122Mb installer which seems to include the DX redist?
 
Back
Top Bottom