Hotfix available
Please use https://github.com/derrod/legendary/releases/tag/0.20.15 instead.
Release Highlights
Starting with this release Legendary offers the option to log into your Epic account via an embedded web view. This greatly simplifies the sign-in process for first-time users or those not all too familiar with the technical language used during the manual login flow.
This feature is already available in the Windows binaries and can be easily installed on most Linux distributions. The prebuilt Linux binaries do not currently support it but may in the future.
Installation notes
- Windows: use the prebuilt .exe or install legendary via
pip install legendary-gl[webview]
- no further dependencies required! - Linux:
- Install legendary 0.20.14+ and pywebview 3.4+ (e.g. using
pip install -U legendary-gl[webview]
) - Install
PyGObject
- On Debian/Ubuntu this can be done via
sudo apt install python3-gi python3-gi-cairo gir1.2-gtk-3.0
- See the PyGObject documentation for instllation instructions for other systems
- On Debian/Ubuntu this can be done via
- Install legendary 0.20.14+ and pywebview 3.4+ (e.g. using
- macOS: unsupported
Notes for third-party package maintainers
Legendary requires pywebview
of version 3.4 or higher. If your distribution provides recent enough packages for pywebview
you can add it and its dependencies for one of its supported web engines to your legendary package. See the pywebview documentation for details.
While pywebview
supports both Qt (QtWebKit
/ QtWebEngine
) and GTK (WebKit2
) as rendering engines, only GTK has been tested extensively and is the recommended option.
Should you want/need to use Qt as the dependency in your package please make sure all login options work correctly. At least in my testing on my build machine (running an older Ubuntu LTS release) Qt did not function correctly in some cases.
CLI changes
alias
commandalias add <app name> <alias>
will now also resolve aliases used in place of the app name
auth
command--disable-webview
flag to force manual authentication flow even if webview is available- Pasting the complete JSON response during manual login will also work if user is unsure what they're supposed to copy
install
command--skip-dlcs
flag to skip asking if the user wants to install DLCs
import-game
command- No longer allows for installing DLC without the base game already being installed (#351)
- Will now ask the user if they want to import DLC like
install
does. --with-dlcs
flag to automatically attempt to import all DLC--skip-dlcs
flag to skip asking if the user wants to import DLCs
Bug fixes and improvements
- Use exponential backoff when downloading a file fails to avoid runaway CPU usage (#347)
- Legendary does no longer attempt to read ".egstore" folder for DLC when importing
- No more re-login after client has already logged in once (unless session is about to expire), e.g. when installing DLC
- Added
pywebview
as optional dependency in setup.py to makelegendary[webview]
option available via PyPI