There are a few different configurations depending on your laptop/desktop and harware due to some driver and software issues. Personally I've setup a prefix per DX/VK configuration and installed EVE Online inside each one for testing purposes.
Firstly install the required libraries (will require checking the 64bit option in the EVE Online launcher settings, the vulkan libraries are only needed if you intend to use DXVK and Vulkan conversions from DX9/DX11 (see Wine Tricks section later on):
sudo pacman -S wine-staging wine_gecko winetricks wine-mono ttf-ms-fonts samba gnutls mpg123 sdl libpulse libldap
sudo pacman -S vulkan-icd-loader vulkan-intel vulkan-tools vkd3d
Enable multilib see https://wiki.archlinux.org/index.php/Multilib (uncomment BOTH lines)
sudo vim /etc/pacman.conf
[multilib]
Include = /etc/pacman.d/mirrorlist
Next install the 32bt libraries:
sudo pacman -S lib32-gnutls lib32-mpg123 lib32-sdl lib32-libldap lib32-libpulse
sudo pacman -S lib32-vulkan-icd-loader lib32-vulkan-intel
Firstly we need to create a "wine prefix", think of this as the installation area for your windows based application, in this case EVE Online. Using winecfg we create a new prefix:
WINEARCH=win64 WINEPREFIX=~/.eve64 winecfg
OR
WINEARCH=win32 WINEPREFIX=~/.eve32 winecfg
Here there are a few different ways to run EVE Online which heavly depends on the software you choose next. In order of current recommendation:
This is still currently the most stable way to run EVE Online on Linux
Next use winetricks to install the required packages:
WINEARCH=win64 WINEPREFIX=~/.eve64 winetricks vcrun2017 7zip d3dcompiler_43 d3dx11_43 d3dx9_43
OR
WINEARCH=win32 WINEPREFIX=~/.eve32 winetricks vcrun2017 7zip d3dcompiler_43 d3dx11_43 d3dx9_43
Once EVE Online has been installed inside this newly created prefix you can switch the DX version being used inside the launcher settings. DX9 has better performance, however DX11 supports newer shadings and looks better. One Graphical bug I've noticed with DX11 is the dust clouds appear as black boxes.
WINEARCH=win64 WINEPREFIX=~/.eve64 winetricks vcrun2017 7zip dxvk
OR
WINEARCH=win32 WINEPREFIX=~/.eve32 winetricks vcrun2017 7zip dxvk
A more performant way to run EVE Online with a conversion layer from DX9 to Vulkan
WINEARCH=win64 WINEPREFIX=~/.eve64 winetricks vcrun2017 7zip d3dcompiler_43 d9vk040
OR
WINEARCH=win32 WINEPREFIX=~/.eve32 winetricks vcrun2017 7zip d3dcompiler_43 d9vk040
Download installer and full offline zip into the same folder
https://www.eveonline.com/download
chmod +x ~/Downloads/EveLauncher-1641188.exe
Launch with the correct wine prefix:
WINEARCH=win64 WINEPREFIX=~/.eve64 ~/Downloads/EveLauncher-1641188.exe
**OR
WINEARCH=win32 WINEPREFIX=~/.eve32 ~/Downloads/EveLauncher-1641188.exe
Create a desktop file which will then be available in Gnome search or your desktop environment menu:
vim .local/share/applications/eve-online.desktop
[Desktop Entry]
Type=Application
Version=1.0
Name=Eve Online
Comment=Spreadsheets in Space
#Exec=DXVK_HUD=1 DXVK_STATE_CACHE=0 DXVK_LOG_LEVEL=none WINEESYNC=1 WINEDEBUG=-all WINEARCH=win32 WINEPREFIX=~/.eve32 wine ~/.eve32/drive_c/EVE/Launcher/evelauncher.exe
#OR
Exec=DXVK_HUD=1 DXVK_STATE_CACHE=0 DXVK_LOG_LEVEL=none WINEESYNC=1 WINEDEBUG=-all WINEARCH=win64 WINEPREFIX=~/.eve64 wine ~/.eve64/drive_c/EVE/Launcher/evelauncher.exe
Icon=evelauncher
Terminal=false
Categories=Games
More info: https://wiki.archlinux.org/index.php/Desktop_entries
chmod +x .local/share/applications/eve-online.desktop
update-desktop-database ~/.local/share/applications
Notes:
- dx9 (enable in launcher settings) make sure to set interval one in eve client settings for smoother performance (enables vsync)
- dx11 make sure to set interval immediate or switching applications (alt+tab) freezes for long periods when dxvk (vulkan) is enabled (install wine prefix without dxvk to disable and use vsync) https://devtalk.nvidia.com/default/topic/1044496/linux/hangs-freezes-when-vulkan-v-sync-vk_present_mode_fifo_khr-is-enabled/
- Kernel 5.4 breaks PRIME Sync which then prevents vsync from working (restricts FPS to monitior frame rate) https://devtalk.nvidia.com/default/topic/957814/linux/prime-and-prime-synchronization/25 advisable to switch to the LTS kernel or look at patching the nvidia driver: https://devtalk.nvidia.com/default/topic/1068045/5-4-kernel-breaks-prime-synchronization-/
- kernel 5.4 apparently works with the nvidia beta vk driver
For Arch linux at the moment i would highly recommend switching to the nvidia vulkan drivers for a newer driver that works with kernel 5.4 and PRIME Sync out of the box. This makes sure vsync is working on dual GPU laptops with and without vulkan.
yay -S nvidia-vulkan-dkms lib32-nvidia-vulkan-utils lib32-opencl-nvidia-vulkan opencl-nvidia-vulkan
Disabling Gnome Left-Alt + F1 + Left-Alt + F2 combo:
Left Alt + F* is used by eve for activating and deactivating mid slot items. Slightly annoying to be forced out of the game to the window switcher!