2020-05-01 13:08:21 +00:00
# Legendary
2020-05-16 16:21:03 +00:00
## A free and open-source Epic Games Launcher alternative
2020-05-15 14:19:35 +00:00
![Logo ](https://repository-images.githubusercontent.com/249938026/80b18f80-96c7-11ea-9183-0a8c96e7cada )
2020-05-01 13:08:21 +00:00
2020-04-14 12:47:46 +00:00
[![Discord ](https://discordapp.com/api/guilds/695233346627698689/widget.png?style=shield )](https://discord.gg/UJKBwPw) [![Twitter Follow ](https://img.shields.io/twitter/follow/legendary_gl?label=Follow%20us%20for%20updates%21&style=social )](https://twitter.com/legendary_gl)
2020-05-16 16:21:03 +00:00
Legendary is an open-source game launcher that can download and install games from the Epic Games platform on Linux and Windows.
2020-09-30 02:48:53 +00:00
Its name as a tongue-in-cheek play on tiers of [item rarity in many MMORPGs ](https://wow.gamepedia.com/Quality ).
2020-04-14 12:47:46 +00:00
2020-05-16 16:21:03 +00:00
Right now Legendary is in beta and not feature-complete. You might run into some bugs or issues.
2021-09-01 13:30:14 +00:00
If you do please [create an issue on GitHub ](https://github.com/derrod/legendary/issues/new/choose ) so we can fix it.
Please read the the [config file ](#config-file ) and [cli usage ](#usage ) sections before creating an issue to avoid invalid reports.
2020-04-14 12:47:46 +00:00
2020-12-27 21:01:23 +00:00
**Note:** Legendary is currently a CLI (command-line interface) application without a graphical user interface,
it has to be run from a terminal (e.g. PowerShell)
2020-04-21 17:59:58 +00:00
**What works:**
2020-05-01 13:08:21 +00:00
- Authenticating with Epic's service
- Downloading and installing your games and their DLC
2020-04-26 15:45:10 +00:00
- Delta patching/updating of installed games
2020-05-16 16:21:03 +00:00
- Launching games with online authentication (for multiplayer/DRM)
- Syncing cloud saves (compatible with EGL)
2020-05-01 13:08:21 +00:00
- Running games with WINE on Linux
2020-05-29 22:17:06 +00:00
- Importing/Exporting installed games from/to the Epic Games Launcher
2020-04-14 12:47:46 +00:00
**Planned:**
- Simple GUI for managing/launching games
2020-05-01 13:08:21 +00:00
- Better interfaces for other developers to use Legendary in their projects
2020-04-26 15:45:10 +00:00
- Lots and lots of bug fixes, optimizations, and refactoring...
2020-04-14 12:47:46 +00:00
## Requirements
2020-05-15 08:46:24 +00:00
- Linux or Windows (64-bit)
2020-05-01 13:08:21 +00:00
- python 3.8+ (64-bit on Windows)
2020-05-16 16:21:03 +00:00
- PyPI packages: `requests` , optionally `setuptools` and `wheel` for setup/building
2020-04-26 15:45:10 +00:00
## How to run/install
2020-04-27 10:46:22 +00:00
### Package Manager
2020-05-30 02:58:16 +00:00
Several distros already have packages available, check out the [Available Linux Packages ](https://github.com/derrod/legendary/wiki/Available-Linux-Packages ) wiki page for details.
2020-04-27 10:46:22 +00:00
2020-05-06 14:06:24 +00:00
Currently this includes
[Arch ](https://github.com/derrod/legendary/wiki/Available-Linux-Packages#arch-aur ),
2020-05-30 02:58:16 +00:00
[Fedora ](https://github.com/derrod/legendary/wiki/Available-Linux-Packages#fedora ),
[openSUSE ](https://github.com/derrod/legendary/wiki/Available-Linux-Packages#opensuse ), and
[Gentoo ](https://github.com/derrod/legendary/wiki/Available-Linux-Packages#gentoo )
2020-05-06 14:06:24 +00:00
but more will be available in the future.
2020-04-27 10:46:22 +00:00
2020-05-30 02:58:16 +00:00
Note that since packages are maintained by third parties it may take a bit for them to be updated to the latest version.
If you always want to have the latest features and fixes available then using the PyPI distribution is recommended.
2020-04-26 15:45:10 +00:00
### Standalone
2020-12-29 17:18:17 +00:00
2020-05-16 16:21:03 +00:00
Download the `legendary` or `legendary.exe` binary from [the latest release ](https://github.com/derrod/legendary/releases/latest )
2020-04-26 15:45:10 +00:00
and move it to somewhere in your `$PATH` /`%PATH%`. Don't forget to `chmod +x` it on Linux.
The Windows .exe and Linux executable were created with PyInstaller and will run standalone even without python being installed.
Note that on Linux glibc >= 2.25 is required, so older distributions such as Ubuntu 16.04 or Debian stretch will not work.
2020-04-14 12:47:46 +00:00
2020-04-26 15:45:10 +00:00
### Python package
2020-12-29 17:18:17 +00:00
#### Prerequisites
To prevent problems with permissions during installation, please upgrade your `pip` by running `python -m pip install -U pip --user` .
> **Tip:** You may need to replace `python` in the above command with `python3.8` on Linux, or `py -3.8` on Windows.
#### Installation from PyPI (recommended)
2020-05-16 16:21:03 +00:00
Legendary is available on [PyPI ](https://pypi.org/project/legendary-gl/ ), to install simply run:
2020-12-29 17:18:17 +00:00
2020-05-04 17:59:57 +00:00
```bash
pip install legendary-gl
```
2020-04-26 15:45:10 +00:00
2020-05-16 16:21:03 +00:00
#### Manually from the repo
2020-12-29 17:18:17 +00:00
2020-05-16 16:21:03 +00:00
- Install python3.8, setuptools, wheel, and requests
- Clone the git repository and cd into it
2020-12-29 17:18:17 +00:00
- Run `pip install .`
2020-04-26 15:45:10 +00:00
#### Ubuntu 20.04 example
Ubuntu 20.04's standard repositories include everything needed to install legendary:
````bash
sudo apt install python3 python3-requests python3-setuptools-git
git clone https://github.com/derrod/legendary.git
cd legendary
2020-12-29 17:18:17 +00:00
pip install .
2020-04-26 15:45:10 +00:00
````
2020-04-14 12:47:46 +00:00
2020-12-29 17:18:17 +00:00
If the `legendary` executable is not available after installation, you may need to configure your `PATH` correctly. You can do this by running the command:
```bash
echo 'export PATH=$PATH:~/.local/bin' >> ~/.profile & & source ~/.profile
```
2020-04-14 12:47:46 +00:00
2020-04-26 15:45:10 +00:00
### Directly from the repo (for dev/testing)
2020-04-14 12:47:46 +00:00
2020-04-26 15:45:10 +00:00
- Install python3.8 and requests (optionally in a venv)
2020-12-29 17:18:17 +00:00
- cd into the repository
- Run `pip install -e .`
This installs `legendary` in "editable" mode - any changes to the source code will take effect next time the `legendary` executable runs.
2020-04-14 12:47:46 +00:00
2020-04-14 13:50:15 +00:00
## Quickstart
2020-12-29 17:18:17 +00:00
**Tip:** When using PowerShell with the standalone executable, you may need to replace `legendary` with `.\legendary` in the commands below.
2020-12-27 21:01:23 +00:00
2020-04-14 13:50:15 +00:00
To log in:
````
2020-09-30 02:48:53 +00:00
legendary auth
2020-04-14 13:50:15 +00:00
````
2020-04-26 11:44:51 +00:00
Authentication is a little finicky since we have to go through the Epic website. The login page should open in your browser and after logging in you should be presented with a JSON response that contains a code, just copy and paste the code into your terminal to log in.
2020-05-16 16:21:03 +00:00
On Windows you can use the `--import` flag to import the authentication from the Epic Games Launcher. Note that this will log you out of the Epic Launcher.
2020-04-14 13:50:15 +00:00
Listing your games
````
2020-09-30 02:48:53 +00:00
legendary list-games
2020-04-14 13:50:15 +00:00
````
This will fetch a list of games available on your account, the first time may take a while depending on how many games you have.
Installing a game
````
2020-09-30 02:48:53 +00:00
legendary install Anemone
2020-04-14 13:50:15 +00:00
````
2020-04-26 11:44:51 +00:00
**Important:** the name used for these commands is the app name, *not* the game's name! The app name is in the parentheses after the game title in the games list.
2020-04-14 13:50:15 +00:00
List installed games and check for updates
````
2020-09-30 02:48:53 +00:00
legendary list-installed --check-updates
2020-04-14 13:50:15 +00:00
````
Launch (run) a game with online authentication
````
2020-09-30 02:48:53 +00:00
legendary launch Anemone
2020-04-14 13:50:15 +00:00
````
2020-04-26 11:44:51 +00:00
**Tip:** most games will run fine offline (`--offline`), and thus won't require launching through legendary for online authentication. You can run `legendary launch <App Name> --offline --dry-run` to get a command line that will launch the game with all parameters that would be used by the Epic Launcher. These can then be entered into any other game launcher (e.g. Lutris/Steam) if the game requires them.
2020-04-14 13:50:15 +00:00
2020-05-22 12:42:01 +00:00
Importing a previously installed game
````
2020-09-30 02:48:53 +00:00
legendary import-game Anemone /mnt/games/Epic/WorldOfGoo
2020-05-22 12:42:01 +00:00
````
**Note:** Importing will require a full verification so Legendary can correctly update the game later.
Sync savegames with the Epic Cloud
````
2020-09-30 02:48:53 +00:00
legendary sync-saves
2020-05-22 12:42:01 +00:00
````
**Note:** When this command is run the first time after a supported game has been installed it will ask you to confirm or provide the path to where the savegame is located.
2020-05-30 02:58:16 +00:00
Automatically sync all games with the Epic Games Launcher
````
2020-09-30 02:48:53 +00:00
legendary -y egl-sync
2020-05-30 02:58:16 +00:00
````
2020-04-14 12:47:46 +00:00
## Usage
````
2020-11-12 16:52:02 +00:00
usage: legendary [-h] [-v] [-y] [-V]
2020-12-18 16:02:00 +00:00
{auth,install,download,update,repair,uninstall,launch,list-games,list-installed,list-files,list-saves,download-saves,sync-saves,verify-game,import-game,egl-sync,status,cleanup}
...
2020-04-14 12:47:46 +00:00
2020-09-08 03:14:51 +00:00
Legendary v0.X.X - "Codename"
2020-04-14 12:47:46 +00:00
optional arguments:
-h, --help show this help message and exit
2020-11-12 16:52:02 +00:00
-v, --debug Set loglevel to debug
2020-05-29 23:29:53 +00:00
-y, --yes Default to yes for all prompts
2020-11-12 16:52:02 +00:00
-V, --version Print version and exit
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
Commands:
2020-11-12 16:52:02 +00:00
{auth,install,download,update,repair,uninstall,launch,list-games,list-installed,list-files,list-saves,download-saves,sync-saves,verify-game,import-game,egl-sync,status,cleanup}
2020-04-26 11:44:51 +00:00
auth Authenticate with EPIC
2020-05-22 12:42:01 +00:00
install (download,update,repair)
2020-05-04 12:30:15 +00:00
Download a game
2020-04-26 11:44:51 +00:00
uninstall Uninstall (delete) a game
launch Launch a game
list-games List available (installable) games
list-installed List installed games
2020-04-30 10:07:53 +00:00
list-files List files in manifest
2020-05-06 14:06:24 +00:00
list-saves List available cloud saves
download-saves Download all cloud saves
2020-05-15 08:46:24 +00:00
sync-saves Sync cloud saves
2020-05-22 12:42:01 +00:00
verify-game Verify a game's local files
import-game Import an already installed game
2020-05-29 23:29:53 +00:00
egl-sync Setup or run Epic Games Launcher sync
2020-09-08 03:14:51 +00:00
status Show legendary status information
2020-11-12 16:52:02 +00:00
cleanup Remove old temporary, metadata, and manifest files
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
Individual command help:
Command: auth
2020-11-12 16:52:02 +00:00
usage: legendary auth [-h] [--import] [--code < exchange code > ]
2020-12-18 16:02:00 +00:00
[--sid < session id > ] [--delete]
2020-04-26 11:44:51 +00:00
optional arguments:
2020-05-15 08:46:24 +00:00
-h, --help show this help message and exit
2020-11-12 16:52:02 +00:00
--import Import Epic Games Launcher authentication data (logs
out of EGL)
2020-05-15 08:46:24 +00:00
--code < exchange code >
2020-11-12 16:52:02 +00:00
Use specified exchange code instead of interactive
authentication
--sid < session id > Use specified session id instead of interactive
authentication
2020-05-30 20:56:20 +00:00
--delete Remove existing authentication (log out)
2020-04-26 11:44:51 +00:00
2020-05-04 12:30:15 +00:00
Command: install
usage: legendary install < App Name > [options]
Aliases: download, update
2020-04-26 11:44:51 +00:00
positional arguments:
< App Name > Name of the app
optional arguments:
-h, --help show this help message and exit
2020-04-14 12:47:46 +00:00
--base-path < path > Path for game installations (defaults to ~/legendary)
2020-11-12 16:52:02 +00:00
--game-folder < path > Folder for game installation (defaults to folder
specified in metadata)
2020-04-14 12:47:46 +00:00
--max-shared-memory < size >
2020-11-12 16:52:02 +00:00
Maximum amount of shared memory to use (in MiB),
default: 1 GiB
--max-workers < num > Maximum amount of download workers, default: min(2 *
CPUs, 16)
--manifest < uri > Manifest URL or path to use instead of the CDN one
(e.g. for downgrading)
--old-manifest < uri > Manifest URL or path to use as the old one (e.g. for
testing patching)
--delta-manifest < uri >
Manifest URL or path to use as the delta one (e.g. for
testing)
--base-url < url > Base URL to download from (e.g. to test or switch to a
different CDNs)
2020-05-30 20:56:20 +00:00
--force Download all files / ignore existing (overwrite)
2020-11-12 16:52:02 +00:00
--disable-patching Do not attempt to patch existing installation
(download entire changed files)
2020-05-05 14:27:14 +00:00
--download-only, --no-install
2021-09-01 13:30:14 +00:00
Do not install app and do not run prerequisite
2020-11-12 16:52:02 +00:00
installers after download
--update-only Only update, do not do anything if specified app is
not installed
--dlm-debug Set download manager and worker processes' loglevel to
debug
2020-04-28 14:18:59 +00:00
--platform < Platform >
2020-11-12 16:52:02 +00:00
Platform override for download (also sets --no-
install)
--prefix < prefix > Only fetch files whose path starts with < prefix > (case
insensitive)
--exclude < prefix > Exclude files starting with < prefix > (case
insensitive)
2020-05-30 20:56:20 +00:00
--install-tag < tag > Only download files with the specified install tag
2020-11-12 16:52:02 +00:00
--enable-reordering Enable reordering optimization to reduce RAM
requirements during download (may have adverse results
for some titles)
--dl-timeout < sec > Connection timeout for downloader (default: 10
seconds)
2020-05-30 20:56:20 +00:00
--save-path < path > Set save game path to be used for sync-saves
2020-11-12 16:52:02 +00:00
--repair Repair installed game by checking and redownloading
corrupted/missing files
2020-09-08 03:14:51 +00:00
--repair-and-update Update game to the latest version when repairing
--ignore-free-space Do not abort if not enough free space is available
--disable-delta-manifests
2020-12-16 19:21:20 +00:00
Do not use delta manifests when updating (may increase
2020-11-12 16:52:02 +00:00
download size)
2020-12-18 16:02:00 +00:00
--reset-sdl Reset selective downloading choices (requires repair
to download new components)
2021-09-01 13:30:14 +00:00
--preferred-cdn < hostname >
Set the hostname of the preferred CDN to use when
available
--no-https Download games via plaintext HTTP (like EGS), e.g. for
use with a lan cache
2020-04-26 11:44:51 +00:00
Command: uninstall
2020-11-12 16:52:02 +00:00
usage: legendary uninstall [-h] [--keep-files] < App Name >
2020-04-26 11:44:51 +00:00
positional arguments:
2020-11-12 16:52:02 +00:00
< App Name > Name of the app
2020-04-26 11:44:51 +00:00
optional arguments:
2020-11-12 16:52:02 +00:00
-h, --help show this help message and exit
--keep-files Keep files but remove game from Legendary database
2020-04-26 11:44:51 +00:00
Command: launch
2020-04-26 15:45:10 +00:00
usage: legendary launch < App Name > [options]
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
Note: additional arguments are passed to the game
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
positional arguments:
< App Name > Name of the app
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
optional arguments:
-h, --help show this help message and exit
2020-11-12 16:52:02 +00:00
--offline Skip login and launch game without online
authentication
2020-04-14 12:47:46 +00:00
--skip-version-check Skip version check when launching game in online mode
--override-username < username >
2020-11-12 16:52:02 +00:00
Override username used when launching the game (only
works with some titles)
--dry-run Print the command line that would have been used to
launch the game and exit
2020-05-22 12:42:01 +00:00
--language < two letter language code >
2020-11-12 16:52:02 +00:00
Override language for game launch (defaults to system
locale)
2020-05-22 12:42:01 +00:00
--wrapper < wrapper command >
Wrapper command to launch game with
2020-11-12 16:52:02 +00:00
--set-defaults Save parameters used to launch to config (does not
include env vars)
2020-06-01 06:41:16 +00:00
--reset-defaults Reset config settings for app and exit
2021-09-01 13:30:14 +00:00
--override-exe < exe path >
Override executable to launch (relative path)
2020-05-30 20:56:20 +00:00
--wine < wine binary > Set WINE binary to use to launch the app
2020-05-23 17:02:13 +00:00
--wine-prefix < wine pfx path >
2020-05-30 20:56:20 +00:00
Set WINE prefix to use
--no-wine Do not run game with WINE (e.g. if a wrapper is used)
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
Command: list-games
2021-09-02 17:47:10 +00:00
usage: legendary list-games [-h] [--platform < Platform > ] [--include-ue]
[--include-non-installable] [--csv] [--tsv]
[--json]
2020-04-26 11:44:51 +00:00
optional arguments:
2020-04-28 14:18:59 +00:00
-h, --help show this help message and exit
--platform < Platform >
2020-11-12 16:52:02 +00:00
Override platform that games are shown for (e.g.
Win32/Mac)
--include-ue Also include Unreal Engine content
(Engine/Marketplace) in list
2021-09-01 13:30:14 +00:00
--include-non-installable
Include apps that are not installable (e.g. that have
to be activated on Origin)
2020-04-30 10:07:53 +00:00
--csv List games in CSV format
--tsv List games in TSV format
2020-09-08 03:14:51 +00:00
--json List games in JSON format
2020-04-26 11:44:51 +00:00
Command: list-installed
2020-11-12 16:52:02 +00:00
usage: legendary list-installed [-h] [--check-updates] [--csv] [--tsv] [--json]
2020-12-18 16:02:00 +00:00
[--show-dirs]
2020-04-26 11:44:51 +00:00
optional arguments:
-h, --help show this help message and exit
2020-05-30 20:56:20 +00:00
--check-updates Check for updates for installed games
2020-04-30 10:07:53 +00:00
--csv List games in CSV format
--tsv List games in TSV format
2020-09-08 03:14:51 +00:00
--json List games in JSON format
2020-06-02 06:00:51 +00:00
--show-dirs Print installation directory in output
2020-04-30 10:07:53 +00:00
Command: list-files
2020-11-12 16:52:02 +00:00
usage: legendary list-files [-h] [--force-download] [--platform < Platform > ]
2020-12-18 16:02:00 +00:00
[--manifest < uri > ] [--csv] [--tsv] [--json]
[--hashlist] [--install-tag < tag > ]
[< App Name > ]
2020-04-30 10:07:53 +00:00
positional arguments:
2020-05-06 14:06:24 +00:00
< App Name > Name of the app (optional)
2020-04-30 10:07:53 +00:00
optional arguments:
-h, --help show this help message and exit
--force-download Always download instead of using on-disk manifest
--platform < Platform >
Platform override for download (disables install)
--manifest < uri > Manifest URL or path to use instead of the CDN one
--csv Output in CSV format
2020-05-01 13:08:21 +00:00
--tsv Output in TSV format
2020-09-08 03:14:51 +00:00
--json Output in JSON format
2020-11-12 16:52:02 +00:00
--hashlist Output file hash list in hashcheck/sha1sum -c
compatible format
2020-05-01 13:08:21 +00:00
--install-tag < tag > Show only files with specified install tag
2020-05-06 14:06:24 +00:00
Command: list-saves
usage: legendary list-saves [-h] [< App Name > ]
positional arguments:
< App Name > Name of the app (optional)
optional arguments:
-h, --help show this help message and exit
Command: download-saves
2020-05-15 08:46:24 +00:00
usage: legendary download-saves [-h] [< App Name > ]
positional arguments:
< App Name > Name of the app (optional)
2020-05-06 14:06:24 +00:00
optional arguments:
-h, --help show this help message and exit
2020-05-15 08:46:24 +00:00
Command: sync-saves
2020-11-12 16:52:02 +00:00
usage: legendary sync-saves [-h] [--skip-upload] [--skip-download]
2020-12-18 16:02:00 +00:00
[--force-upload] [--force-download]
[--save-path < path > ] [--disable-filters]
[< App Name > ]
2020-05-15 08:46:24 +00:00
positional arguments:
< App Name > Name of the app (optional)
optional arguments:
-h, --help show this help message and exit
--skip-upload Only download new saves from cloud, don't upload
--skip-download Only upload new saves from cloud, don't download
--force-upload Force upload even if local saves are older
--force-download Force download even if local saves are newer
2020-11-12 16:52:02 +00:00
--save-path < path > Override savegame path (requires single app name to be
specified)
2020-05-30 20:56:20 +00:00
--disable-filters Disable save game file filtering
2020-05-22 12:42:01 +00:00
Command: verify-game
usage: legendary verify-game [-h] < App Name >
positional arguments:
< App Name > Name of the app
optional arguments:
-h, --help show this help message and exit
Command: import-game
2020-11-12 16:52:02 +00:00
usage: legendary import-game [-h] [--disable-check]
2020-12-18 16:02:00 +00:00
< App Name > < Installation directory >
2020-05-22 12:42:01 +00:00
positional arguments:
< App Name > Name of the app
< Installation directory >
Path where the game is installed
optional arguments:
-h, --help show this help message and exit
2020-11-12 16:52:02 +00:00
--disable-check Disables completeness check of the to-be-imported game
installation (useful if the imported game is a much
older version or missing files)
2020-05-29 23:29:53 +00:00
Command: egl-sync
2020-11-12 16:52:02 +00:00
usage: legendary egl-sync [-h] [--egl-manifest-path EGL_MANIFEST_PATH]
2020-12-18 16:02:00 +00:00
[--egl-wine-prefix EGL_WINE_PREFIX] [--enable-sync]
[--disable-sync] [--one-shot] [--import-only]
[--export-only] [--unlink]
2020-05-29 23:29:53 +00:00
optional arguments:
-h, --help show this help message and exit
--egl-manifest-path EGL_MANIFEST_PATH
2020-11-12 16:52:02 +00:00
Path to the Epic Games Launcher's Manifests folder,
should point to
/ProgramData/Epic/EpicGamesLauncher/Data/Manifests
2020-05-29 23:29:53 +00:00
--egl-wine-prefix EGL_WINE_PREFIX
2020-11-12 16:52:02 +00:00
Path to the WINE prefix the Epic Games Launcher is
installed in
2020-05-30 20:56:20 +00:00
--enable-sync Enable automatic EGL < - > Legendary sync
2020-06-01 19:21:40 +00:00
--disable-sync Disable automatic sync and exit
2020-05-30 20:56:20 +00:00
--one-shot Sync once, do not ask to setup automatic sync
2020-05-29 23:29:53 +00:00
--import-only Only import games from EGL (no export)
--export-only Only export games to EGL (no import)
2020-11-12 16:52:02 +00:00
--unlink Disable sync and remove EGL metadata from installed
games
2020-09-08 03:14:51 +00:00
Command: status
usage: legendary status [-h] [--offline] [--json]
optional arguments:
-h, --help show this help message and exit
--offline Only print offline status information, do not login
--json Show status in JSON format
2020-11-12 16:52:02 +00:00
Command: cleanup
usage: legendary cleanup [-h] [--keep-manifests]
optional arguments:
-h, --help show this help message and exit
--keep-manifests Do not delete old manifests
2020-04-14 12:47:46 +00:00
````
2020-05-23 17:02:13 +00:00
## Environment variables
Legendary supports overriding certain things via environment variables,
it also passes through any environment variables set before it is called.
Legendary specific environment variables:
+ `LGDRY_WINE_BINARY` - specifies wine binary
+ `LGDRY_WINE_PREFIX` - specified wine prefix
+ `LGDRY_NO_WINE` - disables wine
+ `LGDRY_WRAPPER` - specifies wrapper binary/command line
Note that the priority for settings that occur multiple times is:
command line > environment variables > config variables.
2020-04-14 12:47:46 +00:00
## Config file
Legendary supports some options as well as game specific configuration in `~/.config/legendary/config.ini` :
````ini
[Legendary]
log_level = debug
; maximum shared memory (in MiB) to use for installation
max_memory = 1024
2021-01-02 05:53:21 +00:00
; maximum number of worker processes when downloading (fewer workers will be slower, but also use fewer system resources)
2020-12-07 22:52:43 +00:00
max_workers = 8
2020-04-14 12:47:46 +00:00
; default install directory
install_dir = /mnt/tank/games
2020-05-18 08:58:23 +00:00
; locale override, must be in RFC 1766 format (e.g. "en-US")
locale = en-US
2020-05-29 22:17:06 +00:00
; whether or not syncing with egl is enabled
egl_sync = false
2020-05-30 02:58:16 +00:00
; path to the "Manifests" folder in the EGL ProgramData directory
2020-05-29 22:17:06 +00:00
egl_programdata = /home/user/Games/epic-games-store/drive_c/...
2021-09-01 13:30:14 +00:00
; Set preferred CDN host (e.g. to improve download speed)
preferred_cdn = epicgames-download1.akamaized.net
; disable HTTPS for downloads (e.g. to use a LanCache)
disable_https = false
2021-09-02 17:47:10 +00:00
; disables checking for updates
enable_update_check = true
2020-04-14 12:47:46 +00:00
2020-04-26 11:44:51 +00:00
; default settings to use (currently limited to WINE executable)
[default]
; (linux) specify wine executable to use
wine_executable = wine
2020-06-01 06:41:16 +00:00
; wine prefix (alternative to using environment variable)
wine_prefix = /home/user/.wine
2020-04-26 11:44:51 +00:00
2021-01-02 05:53:21 +00:00
; default environment variables to set (overridden by game specific ones)
2020-04-26 11:44:51 +00:00
[default.env]
WINEPREFIX = /home/user/legendary/.wine
; Settings to only use for "AppName"
2020-04-14 12:47:46 +00:00
[AppName]
; launch game without online authentication by default
offline = true
; Skip checking for updates when launching this game
skip_update_check = true
; start parameters to use (in addition to the required ones)
start_params = -windowed
2020-05-16 16:21:03 +00:00
wine_executable = /path/to/proton/wine64
2020-05-18 08:58:23 +00:00
; override language with two-letter language code
language = fr
2020-04-14 12:47:46 +00:00
[AppName.env]
; environment variables to set for this game (mostly useful on linux)
2020-04-26 11:44:51 +00:00
WINEPREFIX = /mnt/tank/games/Game/.wine
DXVK_CONFIG_FILE = /mnt/tank/games/Game/dxvk.conf
2020-05-23 17:02:13 +00:00
[AppName2]
; Use a wrapper to run this script
2020-09-08 03:14:51 +00:00
; Note that the path might have to be quoted if it contains spaces
wrapper = "/path/to/Proton 5.0/proton" run
2020-05-23 17:02:13 +00:00
; Do not run this executable with WINE (e.g. when the wrapper handles that)
no_wine = true
2021-09-01 13:30:14 +00:00
; Override the executable launched for this game, for example to bypass a launcher (e.g. Borderlands)
override_exe = relative/path/to/file.exe
2020-04-14 12:47:46 +00:00
````