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

124 lines
3.6 KiB
Markdown

# 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:
```bash
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:
```text
https://launch.daybreakgames.com/installer/EQLegends_setup.exe
```
To test a different installer, point the wrapper at it explicitly:
```bash
EQL_INSTALLER=/path/to/EQLegends_setup.exe nix run .#eqlegends
```
The Wine prefix lives at:
```text
~/.local/share/eqlegends/wine
```
The wrapper installs LaunchPad to:
```text
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:
```bash
nix run .#eqlegends-reset-prefix
```
If the flake app is installed into a profile, the helper is available as:
```bash
eqlegends-reset-prefix
```
## Desktop Entry
The package installs:
```text
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:
```bash
kbuildsycoca6
```
## DXVK
The wrapper defaults to WineD3D. Run with DXVK only if the game client needs it or performs better with Vulkan translation:
```bash
EQL_DXVK=1 nix run .#eqlegends
```
DXVK is copied into the prefix, so switching back to WineD3D requires a prefix reset:
```bash
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:
```bash
find ~/.local/share/eqlegends/wine/drive_c -iname LaunchPad.exe
```
The wrapper records the executable it launches in:
```text
~/.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:
```bash
EQL_RESET_PREFIX=1 nix run .#eqlegends
EQL_DXVK=1 nix run .#eqlegends
```
For verbose Wine logs:
```bash
EQL_WINEDEBUG=+seh,+tid,+loaddll nix run .#eqlegends
```