Files
nix-everquest/docs/eqlegends.md
T
2026-06-27 15:27:27 -07:00

3.6 KiB

EverQuest Legends on NixOS via Wine

EverQuest Legends is distributed as a standalone Daybreak/LaunchPad installer, not through Steam. The flake provides an eqlegends app that creates a mutable Wine prefix and installs the launcher from a pinned Daybreak installer URL.

The installer is a Nullsoft/NSIS installer containing LaunchPad.exe, CEF libraries, and LaunchPad.ini with appName=EverQuest Legends and id=eqns. The game data itself is expected to be downloaded later by LaunchPad.

Quick start

Run:

nix run .#eqlegends

If the package is installed into a NixOS or Home Manager profile, it also provides a desktop entry named EverQuest Legends for KDE Plasma and other freedesktop launchers.

The flake fetches the installer from:

https://launch.daybreakgames.com/installer/EQLegends_setup.exe

To test a different installer, point the wrapper at it explicitly:

EQL_INSTALLER=/path/to/EQLegends_setup.exe nix run .#eqlegends

The Wine prefix lives at:

~/.local/share/eqlegends/wine

The wrapper installs LaunchPad to:

C:\Games\EverQuestLegends

inside that Wine prefix.

Useful environment variables

Variable Use
EQL_INSTALLER=/path/to/EQLegends_setup.exe Use an installer outside the current working directory.
EQL_WINEPREFIX=/path/to/prefix Override the default Wine prefix location.
EQL_RESET_PREFIX=1 Delete and recreate the prefix before launching.
EQL_DXVK=1 Install DXVK DLLs into the prefix before launching.
EQL_WINEDEBUG=+seh,+tid Override Wine debug logging. Defaults to -all.

There is also a reset helper:

nix run .#eqlegends-reset-prefix

If the flake app is installed into a profile, the helper is available as:

eqlegends-reset-prefix

Desktop Entry

The package installs:

share/applications/eqlegends.desktop
share/icons/hicolor/256x256/apps/eqlegends.png

After your NixOS/Home Manager activation includes the package, KDE Plasma should show EverQuest Legends in the application launcher under games. If Plasma does not notice it immediately, log out and back in, or refresh the application database:

kbuildsycoca6

DXVK

The wrapper defaults to WineD3D. Run with DXVK only if the game client needs it or performs better with Vulkan translation:

EQL_DXVK=1 nix run .#eqlegends

DXVK is copied into the prefix, so switching back to WineD3D requires a prefix reset:

EQL_RESET_PREFIX=1 nix run .#eqlegends

Troubleshooting

If the pinned installer hash fails, Daybreak probably replaced the installer. Update the fetchurl hash in packages/eqlegends/package.nix, or temporarily set EQL_INSTALLER.

The launcher may emit Chromium/CEF diagnostics such as libEGL warning, WSALookupServiceBegin failed, Passthrough is not supported, GL is swiftshader, and LaunchPad.playButtonState: ready. These are expected while LaunchPad probes graphics, networking, and its embedded browser under Wine. They are useful when debugging, so the wrapper leaves stderr unfiltered.

If LaunchPad installs somewhere unexpected, inspect:

find ~/.local/share/eqlegends/wine/drive_c -iname LaunchPad.exe

The wrapper records the executable it launches in:

~/.local/share/eqlegends/wine/.eqlegends-launcher-path

If the launcher opens but renders as a blank CEF window, try a clean prefix first, then try DXVK:

EQL_RESET_PREFIX=1 nix run .#eqlegends
EQL_DXVK=1 nix run .#eqlegends

For verbose Wine logs:

EQL_WINEDEBUG=+seh,+tid,+loaddll nix run .#eqlegends