Commit graph

520 commits

Author SHA1 Message Date
derrod 6486d02daa [cli] Resolve app name alias when adding new alias 2021-10-07 17:06:39 +02:00
derrod c2d60233fc Update README with further clarifications and installation instructions 2021-10-07 11:22:53 +02:00
derrod 75cc194424 [downloader.mp] Fix exponential backoff calculation and log as info 2021-10-07 11:16:39 +02:00
derrod b19a482fdb setup.py: Add version requirement to pywebview 2021-10-07 10:59:33 +02:00
derrod 2d366a7704 [downloader.mp] Add exponential backoff to retries
Fixes #347
2021-10-07 10:46:17 +02:00
derrod a7d5e37f82 .github: Remove pywebview from DEB (too outdated), but add it to PyInstaller 2021-10-07 10:36:08 +02:00
derrod d300972b46 .github: Add pywebview and PyGojbect to DEB build 2021-10-07 10:29:34 +02:00
derrod a722e7b8ba Update setup.py/README with new optional dependency (PyGObject) 2021-10-07 10:28:40 +02:00
derrod b857967dfa [cli/core] Add WebView killswitch to Legendary update data
In case epic breaks it, this at least lets us disable it remotely.
2021-10-07 05:20:08 +02:00
derrod b78b4f49c1 [utils] Show error if callback result is None
Most likely happens due to user-abort.
2021-10-07 05:18:46 +02:00
derrod 96ff42f05a [cli/utils] Skip logout when using Qt/GTK, faster logout on Windows 2021-10-07 05:10:14 +02:00
derrod 20c08aa9a4 Update README again (GTK is now fixed, Qt may not actually work) 2021-10-06 20:42:01 +02:00
derrod 917cfc259e [utils] Use JS to get SID response to work on GTK WebKit 2021-10-06 20:36:14 +02:00
derrod fcf8bee6eb Update README with note that GTK webview is borked 2021-10-06 19:52:51 +02:00
derrod c89f9d82c7 [utils] Fix opening external URL on Linux (GTK) 2021-10-06 17:14:00 +02:00
derrod 8e5f579db7 Update README 2021-10-06 12:03:00 +02:00
derrod 77efeee2ca setup.py: Add pywebview as optional dependency 2021-10-06 10:59:05 +02:00
derrod 15591a1e2d [cli/utils] Add support for logging in via web view
Also adds pywebview as optional dependency to setup.py
2021-10-06 10:54:25 +02:00
derrod 26715695d8 [cli] Load JSON if user pastes full response rather than just SID 2021-10-06 07:24:33 +02:00
derrod 4e539c4fd5 [cli] Print manifest install tags in "info" command 2021-10-05 09:47:59 +02:00
derrod a029fc6fdb Bump version 2021-10-05 09:40:00 +02:00
derrod 7e74a2e5b0 Update README 2021-10-05 09:35:17 +02:00
derrod c4695d2b99 [cli/models/lfs] Clean up some old code/comments 2021-10-05 09:22:17 +02:00
derrod ead2bdc16c [cli] Add global "-J" option to pretty-print JSON 2021-10-05 08:47:28 +02:00
derrod 56fdfba787 [cli] Add JSON output to "info" command 2021-10-05 08:41:57 +02:00
derrod f2639a7e67 [lfs] Make lowercase app name an alias rather than conflict 2021-10-05 08:18:53 +02:00
derrod 8460fdfd2a [cli/core/lfs] Add support for trying multiple encryption keys
Should Epic change the key used for EGL in the future we want to
be backwards-compatible to existing (outdated) EGL installs as well
as new ones without having to push out a new release.

Also forces updating of version data before attempting the import to
get the latest key(s) and adds a log message when auth data is deleted.
2021-10-05 07:34:52 +02:00
derrod 82f38d279d [utils] Split name on dashes for alias generation 2021-10-05 07:19:15 +02:00
derrod 02c83405fb [lfs] Fix old aliases not being cleared when regenerating 2021-10-05 07:11:33 +02:00
derrod 638578283b [core/utils/lfs] Fix auth import with now encrypted EGL user data
It took way too long to find the key.
It's not even hidden, I'm just dumb.
2021-10-04 09:26:44 +02:00
derrod 2f4ad78e27 [lfs] Prevent aliases from shadowing app names
This is probably somewhat unlikely to actually happen given
that app names are largely random strings and only some are
actual words, but just to be sure we declare app names to be
collisions.
2021-10-04 01:28:22 +02:00
derrod a116013f05 [utils] Also make raw game name (lowercase) a valid alias 2021-10-02 23:48:44 +02:00
derrod 5960cb8699 Bump version 2021-10-02 23:23:28 +02:00
derrod 09c52b66ff [cli] Log app title/name when preparing download 2021-10-02 23:09:59 +02:00
derrod 566dd6904b Update README 2021-10-02 22:56:19 +02:00
derrod 0b97cdeeef [cli] Add alias management commands 2021-10-02 22:54:56 +02:00
derrod 3f04de448b [utils] Improve alias generation and fix explanation 2021-10-02 22:19:11 +02:00
derrod e7ce2e5cb7 [core] Force-refresh aliases when fetching games without assets 2021-10-02 21:21:46 +02:00
derrod 0d8b74a9e0 [cli/core/utils/lfs] Add automatic alias generation 2021-10-02 21:10:25 +02:00
derrod d70d5a6521 [downloader] Fix ETA calculation for runtimes >= 1 hour
Closes #345
2021-10-02 19:00:09 +02:00
derrod d15b882929 Bump version 2021-10-02 07:41:29 +02:00
derrod 517ef083f9 Update README 2021-10-02 07:41:21 +02:00
derrod 8f6cb9c856 [cli] Add alias feature for app names 2021-10-02 07:41:11 +02:00
derrod 55f9f05206 [utils] Change wording of SDL prompt, support space-separated list 2021-09-29 09:04:09 +02:00
derrod f22c8d0ab6 [cli] Add --skip-sdl and --disable-sdl options
--skip-sdl simply skips the prompt and selects the defaults.
--disable-sdl disables selective downloading for the title and
will reset existing SDL settings (if any). Can be re-enabled
with --reset-sdl or by removing the config option manually.

The combination "--reset-sdl --disable-sdl" is allowed and will
reset existing tags while keeping SDL disabled.
2021-09-29 08:05:37 +02:00
derrod f9dad549c3 [cli] Add manifest size and fix crash with no DLC 2021-09-28 09:43:49 +02:00
derrod ff29b949cb [cli] Add "--with-dlcs" flag to automatically install all DLCs 2021-09-28 08:07:28 +02:00
derrod 3a608610f3 [cli] Add "info" command for app metadata 2021-09-28 07:58:50 +02:00
derrod 4706a42cee [cli] Verify app name to be an Origin title when using --origin 2021-09-28 05:57:39 +02:00
derrod 7509550eb1 [cli/core] Add option to force refresh game metadata 2021-09-28 05:56:19 +02:00