Most Legendary problems can be quickly diagnosed by running the failing command with theDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/legendary-gl/legendary/llms.txt
Use this file to discover all available pages before exploring further.
-v (verbose/debug) flag, which prints detailed logs of every API call, file operation, and subprocess invocation. If the issue isn’t immediately clear from the debug output, the sections below cover the most frequently encountered problems and their solutions.
~/.config/legendary/config.ini (Linux/macOS) or %APPDATA%\legendary\config.ini (Windows):
Authentication fails or credentials expire
Authentication fails or credentials expire
Legendary stores OAuth tokens locally. If a token expires or becomes invalid (e.g. after a password change or a long period of inactivity), subsequent commands will fail with authentication errors.Delete stored credentials and re-authenticate:If the embedded webview doesn’t open or fails to load:This falls back to a browser-based flow. Legendary will print a URL — open it manually, log in, and copy the
authorizationCode value from the JSON response that appears after login. Paste it into the terminal when prompted.Login page not opening in browser
Login page not opening in browser
If Legendary cannot open a browser window automatically, you can authenticate manually.
- Visit https://legendary.gl/epiclogin in any browser.
- Log in with your Epic Games account.
- After login you will see a JSON object — copy the value of
authorizationCode. - Pass it directly to Legendary:
Download is slow
Download is slow
Several settings affect download throughput. Try the following in order:Increase the number of download workers (default is usually 2):Increase shared memory (in MiB) used during installation:Prefer a specific CDN host:You can make the CDN preference permanent in Set persistent worker and memory limits in config:
config.ini:Game won't launch (Wine / Linux)
Game won't launch (Wine / Linux)
On Linux and macOS, Windows game binaries require Wine. If a game fails to launch, start by confirming Legendary is using the right Wine binary and prefix.Specify the Wine binary explicitly:Specify the Wine prefix explicitly:Get a dry-run command to test the launch manually:This prints the full launch command (including environment variables) without actually running it, so you can test it directly in a terminal or enter it into an external launcher like Lutris or Steam.Set environment variables for debugging in
config.ini:Game files are corrupt or game crashes on start
Game files are corrupt or game crashes on start
If a game crashes immediately or exhibits missing-asset behaviour, the local installation may be incomplete or corrupted.Verify file integrity:Repair files that failed verification (downloads only the bad files):Repair and update to the latest version simultaneously:
--repair-and-update re-downloads any file that differs from the latest manifest, which means it will also apply any available updates. If you want to stay on the current version, use --repair alone.Not enough disk space error
Not enough disk space error
Legendary checks available disk space before starting a download and aborts if there isn’t enough. If you know you have sufficient space (for example, the check is wrong due to a bind mount or quota setup), you can bypass it:
Cloud save conflicts
Cloud save conflicts
Legendary compares local and remote save timestamps before syncing. If a conflict is detected, it will ask you to resolve it manually unless you force a direction.Force upload local saves to the cloud:Force download cloud saves to your local machine:Override the save path if Legendary detected the wrong directory:After setting the correct path once with
--save-path, Legendary saves it and uses it for future syncs.EGL sync not working
EGL sync not working
Legendary can sync your game library bidirectionally with the Epic Games Launcher (EGL). If sync fails, the most common causes are an incorrect manifest path or, on Linux, an incorrect Wine prefix.Specify the EGL Manifests folder path directly:On Linux with a WINE installation of EGL, specify the WINE prefix:Reset sync and start fresh:
--unlink removes the saved sync configuration. The next egl-sync run will re-detect or re-prompt for the EGL path.App name not recognized
App name not recognized
Legendary uses a game’s internal app name (e.g. Use quotes for app names containing spaces:As of version 0.20.12, Legendary also resolves partial name matches and abbreviations, so After adding an alias,
Anemone) as the primary identifier. If a game name isn’t found, try the following:List all available games to find the exact app name:legendary install wog would also match World of Goo.Create a short alias for a game:legendary install wog works the same as using the full app name.Temporary and metadata files taking up space
Temporary and metadata files taking up space
Over time, Legendary accumulates old manifests, delta files, and other temporary data in its cache directory.Remove all old temporary and metadata files:Remove temp files but keep old manifests (useful if you want to roll back to a previous game version):
Update notifications are annoying
Update notifications are annoying
By default, Legendary checks for its own updates on startup and prints a notice if a newer version is available.Disable the notice only (check still runs, but nothing is printed):Disable the update check entirely:
If none of the above resolves your issue, check the GitHub issues page for known bugs and community-reported workarounds, or ask for help on the Legendary Discord. When reporting a bug, always include the output of the failing command run with
-v.