Skip to main content

Documentation 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.

EGL Sync lets Legendary and the Epic Games Launcher share the same game installation on disk — no re-downloading required. Games installed by EGL can be imported into Legendary, and games installed by Legendary can be exported so EGL recognises them. With automatic sync enabled, any install, update, or removal performed in either client is reflected in the other without any manual intervention.
EGL Sync is not supported for the macOS version of the Epic Games Launcher. On Linux, EGL runs under WINE, so a WINE prefix path is required.

Quick Setup

Running egl-sync without arguments starts an interactive setup that detects existing installations and asks whether to import or export games, then offers to enable ongoing automatic sync:
legendary egl-sync
For non-interactive environments, pass -y to accept all prompts automatically:
legendary -y egl-sync

Specifying the EGL Path

Legendary needs to know where EGL stores its manifest files. On Windows this path is detected automatically. On Linux you must provide either the WINE prefix directory or the direct manifest path.
If auto-detection fails on Windows, supply the manifest directory directly:
legendary egl-sync --egl-manifest-path "C:\ProgramData\Epic\EpicGamesLauncher\Data\Manifests"

Enabling and Disabling Automatic Sync

Once the EGL path is configured, automatic sync keeps both clients in sync whenever Legendary installs, updates, or removes a game. Enable automatic sync:
legendary egl-sync --enable-sync
Disable automatic sync (EGL path configuration is retained, syncing just stops running automatically):
legendary egl-sync --disable-sync
When automatic sync is active, Legendary sets egl_sync = true and egl_programdata = <path> in the [Legendary] section of ~/.config/legendary/config.ini. You can also set these values directly in the config file:
[Legendary]
egl_sync = true
egl_programdata = /path/to/Manifests

Selective Sync Operations

Bring EGL-installed games into Legendary without touching EGL:
legendary egl-sync --import-only

Unlinking EGL

To completely remove the EGL sync configuration and strip the EGL identifiers from all Legendary game records:
legendary egl-sync --unlink
After unlinking, all games remain installed and usable in both Legendary and EGL, but future installs, updates, and removals in one client will no longer be reflected in the other. Attempting to update a previously synced game via EGL after unlinking may cause issues — it is recommended to manage each game exclusively in one client going forward.

How Automatic Sync Works

When egl_sync = true is set in config, Legendary runs a sync pass at the start of any install, update, or removal operation. It compares the list of EGL manifest files against Legendary’s install records:
  • EGL → Legendary: Any game present in EGL manifests but absent from Legendary’s records is imported automatically.
  • EGL update detected: If a game’s version or install tags differ between the two records, Legendary re-imports the EGL manifest to pick up the change.
  • Removed from EGL: If a synced game’s manifest disappears from EGL, Legendary either restores the EGL entry or marks the game as uninstalled, depending on whether the files are still present.

Build docs developers (and LLMs) love