derrod
d7360eef3e
[utils] Remove unnecessary JS callback
...
This seems to be no longer used or required for the webview login to work.
2022-02-02 18:36:08 +01:00
derrod
7ac9ec7b5f
[cli] sync-saves: Skip unconfigured games when using --yes
2022-01-26 14:12:48 +01:00
derrod
b7ad4daeb2
Bump version
2022-01-23 13:11:05 +01:00
derrod
869c749908
[core] Return empty games list if assets empty
2022-01-21 17:47:54 +01:00
derrod
3793601de3
[cli] Add --migrate flag to egl-sync command
...
This will import the games into Legendary and then remove them from EGL.
Also updates info messages for --unlink.
2022-01-20 14:19:20 +01:00
derrod
858d2f98e6
[cli] Move user parameters before EGL parameters
...
Some games appear to fail parsing the command line correctly otherwise.
2022-01-18 16:11:07 +01:00
derrod
158b28eaff
[core] Add "epicsandboxid" launch parameter
...
EGL seems to have added this at some point.
Omitting it doesn't seem to break anything.
But better safe than sorry.
2022-01-18 16:10:12 +01:00
derrod
778ecacbd3
[core] Apply disable_https to manifest downloads as well
...
Since we know the hash ahead of time this is relatively low-risk.
Delta manifests don't have an associated API call that would tell us
the hash, so still use HTTPS for those unless the base url is overridden.
2022-01-18 10:25:04 +01:00
derrod
180692195f
[core] Catch FileNotFoundError when removing synced EGL manifest
2022-01-18 10:16:06 +01:00
derrod
3bc819e567
[core] Check install directory for write access
...
Fixes #395
2022-01-10 17:14:30 +01:00
derrod
742d3a3b05
[core] Verify CDN manifest hash
2022-01-10 17:00:45 +01:00
derrod
cf95da395c
[cli] Error out if no overlay installs found
2022-01-10 16:28:42 +01:00
derrod
66a30d6b2a
[cli] Log Uplay activation errors in API response
2022-01-10 14:42:01 +01:00
derrod
e6da49d0bf
Bump version
2022-01-10 00:50:50 +01:00
derrod
f21ecf1eda
[cli] Fix old command name aliases not actually working
2022-01-10 00:41:11 +01:00
derrod
a25de242d9
[cli/core/models] Add config option for pre-launch command
2022-01-09 14:21:11 +01:00
derrod
4ab0c99a0f
Bump version
2022-01-08 22:30:24 +01:00
derrod
49cc8db22f
[core] Add None check to get_game_tip()
2022-01-08 22:10:01 +01:00
derrod
be4c1b1cda
[cli] Re-add missing f-String prefix
2022-01-08 16:53:15 +01:00
derrod
1c6e83e9f8
[cli] Make game compatibility tip more obvious
2022-01-08 16:50:17 +01:00
derrod
a48bad9999
[cli] Show app-compatible bottles as recommended rather than default
2022-01-07 17:35:04 +01:00
derrod
710f5d07d7
[cli] Also add some additional whitespace to install command output
2022-01-07 17:24:30 +01:00
derrod
8d28945e8b
[cli/core] Optionally show link to wiki article on game install
...
This is supposed to make setup easier for games with know issues.
Perhaps in the future this can also be shown on launch.
2022-01-07 16:38:52 +01:00
derrod
ed1cbfc87e
[cli] Select default app based on app compatibility
2022-01-07 16:30:04 +01:00
derrod
f7f13ed749
[cli] Add "move" command to move existing game installations
2022-01-07 16:22:24 +01:00
derrod
ce68ae87bf
[cli] Drop unnecessary "game(s)" from command names
...
Aliases make sure that users can still use legendary as usual,
but they may be removed in the future
2022-01-07 16:22:24 +01:00
derrod
58bd76c39e
[cli/utils] Reintroduce custom parser for hidden aliases
...
I don't want to break people's muscle memory, but I also don't want
to have the help output be messier than it needs to be.
2022-01-07 14:32:36 +01:00
derrod
cf8bccc569
[core] Final adjustments to default path, separate config option for Mac
2022-01-07 13:51:25 +01:00
derrod
8f2d42892b
[cli/utils] Remove custom subparser (no longer required)
...
Apparently this was *never* required? I just didn't know?
Genuinely I have no idea what made me add this.
2022-01-05 19:56:01 +01:00
derrod
df1c3e6a3c
[core] Handle legacy AppData paths on Linux and Mac
2022-01-05 19:56:01 +01:00
derrod
48baba6adc
[core] Try to resolve legacy AppData paths when using CrossOver
2022-01-05 19:56:01 +01:00
derrod
557724339d
[utils] Fix case-insensitive path searcher
2022-01-05 19:56:00 +01:00
derrod
b30de01cc7
[core] Also look for CrossOver bottle in get_save_path
2022-01-05 19:56:00 +01:00
derrod
586aeaf6de
[cli] Do not set a default bottle choice if known names not found
2022-01-05 19:56:00 +01:00
derrod
9bcfb15cf8
[cli] Use two spaces instead of tabs in CrossOver choice lists
2022-01-05 19:56:00 +01:00
derrod
ba1e05af53
[cli] Add option to disable CX version check
2022-01-05 14:37:51 +01:00
derrod
976b7cebf0
[cli] Add some whitespace to make console less cramped
2022-01-05 14:37:51 +01:00
derrod
cc5c7a90b8
[cli] Check CX version against list rather than string
2022-01-05 14:28:31 +01:00
derrod
4bccd460ad
[core] Create parent directories of symlinks if required
2022-01-05 14:24:46 +01:00
derrod
ac5af04980
[utils] Fix CrossOver running check detecting the CD helper
2022-01-05 14:21:24 +01:00
derrod
de3f3f93af
[cli] Do not try to delete (~)/Applications on macOS
...
It would fail, but is not considered polite either.
2022-01-04 15:39:24 +01:00
derrod
840210040f
[core] Use ~/Applications on Mac, only omit game folder for .app root dirs
2022-01-04 15:31:48 +01:00
derrod
005089ee9b
[core] Adjust default install paths
...
- Native Mac apps should go into /Applications
- On Windows we keep %USERPROFILE%\legendary for now
- On Linux we use ~/Games/legendary now to keep the home folder more tidy
2022-01-04 15:11:43 +01:00
derrod
bec119bc03
[cli] Accurately track verified file size
2022-01-04 12:11:46 +01:00
derrod
ecb04324d5
[utils] Show speed while verifying large files
2022-01-04 12:11:24 +01:00
derrod
cea5f42425
[cli] Run preqreq installers in shell mode and handle exceptions
2022-01-03 16:03:00 +01:00
derrod
9a3652086b
[cli] Show average disk read speed during verification
2022-01-03 15:32:32 +01:00
derrod
d3ea2c6cfd
[utils] Show more verbose verification progress with large files
2022-01-03 15:02:19 +01:00
derrod
cc44149e68
[cli] Fall back to "Windows" platform by default
2022-01-02 13:17:18 +01:00
derrod
e44998b786
[cli] Hide and add warning to automatic bottle setup for now
...
Needs some more testing to see if this is actually viable.
2022-01-02 13:10:42 +01:00
derrod
8e4bb8d3dd
[core] Fix required disk space calculation, once and for all
2022-01-02 13:08:14 +01:00
derrod
202f07973a
[downloader/models] Calculate maximum disk space delta during installation
2022-01-02 13:06:59 +01:00
derrod
05aac59836
[cli/core] Allow bottle downloads to specify a base url
2021-12-31 21:24:47 +01:00
derrod
edadf1c780
[cli] Fix argument dest for --bottle
2021-12-31 18:59:34 +01:00
derrod
0a63b8b007
[cli] Also fall back to default if no app-specific config exists
2021-12-31 18:58:36 +01:00
derrod
6a408e8404
[cli] Log prefix used / error if it doesn't exist
2021-12-31 18:56:52 +01:00
derrod
8a9ca14391
[core] Remove unnecessary os check
2021-12-31 18:56:30 +01:00
derrod
4a4e1397d4
[utils] Add missing null check
2021-12-31 18:50:05 +01:00
derrod
0298a53315
[cli/core/utils] Add (janky) EOS overlay install support on non-Windows
2021-12-31 18:48:07 +01:00
derrod
ecb230511f
[core/utils] Clean up crossover bottle code a bit
2021-12-31 17:46:15 +01:00
derrod
d15f05fc60
[utils] Add janky WINE registry manipulation
2021-12-31 17:31:04 +01:00
derrod
08267025b4
[cli] Stop adding registry entries that already exist
2021-12-31 17:06:44 +01:00
derrod
9469d3cb6f
[cli] Add crossover parameters to skip interactive selection
2021-12-31 14:48:08 +01:00
derrod
2e6335bf09
[cli/utils] Simplify imports
2021-12-31 14:44:32 +01:00
derrod
688910bf91
[cli] Make --yes work with crossover command
2021-12-31 14:38:23 +01:00
derrod
e771ccdf19
[cli] Fix conflict between timeout/third-party flags
2021-12-31 14:35:05 +01:00
derrod
a4c6dee7ef
[cli] Allow downloading a bottle more than once
2021-12-30 19:16:29 +01:00
derrod
d70f0daa22
[utils] Fix get_integer_choice behaviour
...
In my defense, the original function was 100% generated by
GitHub Copilot.
2021-12-30 19:05:23 +01:00
derrod
cd74af8832
[core] Fix remove_bottle parameters
2021-12-30 19:04:44 +01:00
derrod
0f481e1f31
[core/utils] Remove missing folder creation
...
Instead, the manifest will just use zero-byte ".keep" files in empty
folders, so they are still created when a bottle is downloaded.
2021-12-30 18:09:11 +01:00
derrod
3fed7d2614
[api] Treat timeout <= 0 as no timeout
2021-12-30 17:42:18 +01:00
derrod
013792f7b9
[cli/core/utils] Add experimental automatic bottle setup
...
Not sure if this will make it into the release yet, but
it doesn't seem like a bad idea. And it should work even
if the user has never run CrossOver.
It's quite a lot of work to package a bottle this way
(read: not including personal data, and without broken symlinks)
2021-12-30 17:21:56 +01:00
derrod
8512a9a7a1
[utils] Also only allow two empty invalid inputs
2021-12-30 17:11:52 +01:00
derrod
af08f5d11b
[cli] Fix overlay install error message (no resume)
2021-12-30 16:25:02 +01:00
derrod
dfaccba2cb
[cli] Fix crossover subcommand name
2021-12-30 15:36:03 +01:00
derrod
fc66f9f372
[downloader/mp] Also kill workers on interrupt if they don't exit themselves
2021-12-30 14:34:02 +01:00
derrod
2474c43b7b
[cli] Move crossover setup to its own command
2021-12-30 14:16:19 +01:00
derrod
300110e2bc
[cli] Add CrossOver support to Origin launch
2021-12-30 14:03:50 +01:00
derrod
b8e5dac0d6
[cli] Fix wrong argument being set during import
...
Fixes #391
2021-12-30 12:49:07 +01:00
derrod
3cba1c8510
[cli] Sort commands alphabetically
2021-12-30 12:42:05 +01:00
derrod
03ef95923d
[api/cli/core] Make API timeout configurable
2021-12-30 12:03:43 +01:00
derrod
dd099c0afd
[core] Change overlay install path
2021-12-30 11:52:23 +01:00
derrod
99c97032b4
[api] Fix GQL API requests
...
These need to use a different User-Agent for some reason.
2021-12-29 21:14:59 +01:00
derrod
2adc0b1a3e
[core] Avoid unnecessary disk writes when assets didn't change
2021-12-29 20:29:07 +01:00
derrod
0d491aed90
[cli] Improve CrossOver option help text
2021-12-29 13:21:34 +01:00
derrod
a0da79bc2c
[cli] Add support for launching with CrossOver on macOS
2021-12-29 13:21:34 +01:00
derrod
f0f4b545f5
[utils] Add get_int_choice helper
2021-12-29 13:21:34 +01:00
derrod
3d877185b0
[core] Add support for launching via CrossOver
2021-12-29 13:21:34 +01:00
derrod
b5a2fba896
[utils] Add helpers for CrossOver on macOS
2021-12-29 13:21:34 +01:00
derrod
33b89f5e9a
[cli] Suggest "info" command to check for platform support
...
rather than having the user search through a potentially very long
games list...
2021-12-29 13:21:34 +01:00
Wok
75f2da576b
[api] Fix wrong attribute name ( #388 )
2021-12-29 13:21:34 +01:00
derrod
d2a6f16060
[cli] Fix log level for launch message
2021-12-29 11:56:16 +01:00
derrod
0e4ab85b2f
[core] Do not attempt to load overlay info on non-Windows systems
2021-12-29 11:32:11 +01:00
derrod
bc1c27b8d2
[core] Ignore path parameter if overlay is already installed
2021-12-28 19:21:33 +01:00
derrod
e5ba44ecfa
[cli] Show both current and new version in Overlay update notice
2021-12-28 18:17:13 +01:00
derrod
b5120fa99d
[lfs] Cache overlay info in memory to avoid unnecessary reads
2021-12-28 18:14:59 +01:00
derrod
4a743dc1ca
[cli] Fix overlay install path check on install
2021-12-28 17:51:35 +01:00
derrod
c7030c480e
[lfs] Fix log message
2021-12-28 17:48:55 +01:00
derrod
cb69d7c9d7
[utils] Add more debug logging
2021-12-28 17:48:45 +01:00
derrod
8d71df0cc4
[cli/core/lfs] Add update check for installed overlay
2021-12-28 17:48:24 +01:00
derrod
efaf25b9d9
[cli/core/lfs] Add EOS overlay management command/backend
...
- Supports installing and updating the overlay
- Supports enabling/disabling the overlay
- Can find existing EGL overlay for enabling/disabling
- Should work!
2021-12-28 17:47:48 +01:00
derrod
21d62dcd76
[downloader/mp] Fix status message formatting for odd cache usage
2021-12-28 17:39:10 +01:00
derrod
b6cb31df8b
[cli/models/utils] Move strtobool into legendary utils
...
Fixes deprecation warning on Python 3.10+
2021-12-28 17:37:26 +01:00
derrod
1fd8acdee4
[cli] Use argparse choices instead of manual check
2021-12-28 14:21:11 +01:00
derrod
599e4766b2
[cli] Fix some formatting
2021-12-28 14:03:26 +01:00
derrod
e60c3f7aa7
[utils] Add EOS Overlay utilities
...
- Registry adding/removal code
- Dummy Game()s for downloading
2021-12-28 13:55:10 +01:00
derrod
a4c1f0e670
[utils] Add Windows registry helpers
2021-12-28 13:53:59 +01:00
derrod
d941b9d61e
[api] Fix API URL and add some comments clarifying argument names
2021-12-28 11:12:54 +01:00
derrod
6b91c5779b
[cli] Add get-token flag to get bearer token rather than exchange code
2021-12-28 10:57:22 +01:00
derrod
fbb4acbc88
[core] Add option to force refresh token instead of session resumption
2021-12-28 10:57:22 +01:00
derrod
ed0ac1e0b2
[api] Add currently unused artifact APIs found in EOS Windows service
2021-12-28 10:57:22 +01:00
derrod
3c831da310
[api] Add support for anonymous EOS sessions
...
These can be used to download the launcher and overlay/service updates
without actually having to authenticate an account.
2021-12-28 10:11:26 +01:00
derrod
335619ff79
[cli] Do not override platform in "info" command
...
Also improve missing asset error.
2021-12-28 10:09:08 +01:00
derrod
363ac15faa
[cli] Error out if no asset exists for specified platform
2021-12-28 10:04:37 +01:00
derrod
d61946d15d
[lfs] Explicitly set UTF-8 encoding for EGL files
...
Should fix #383
2021-12-23 07:22:41 +01:00
derrod
352d3d2d0d
[cli] Hide -c/--config-file option
...
Using it can cause a bunch of problems, and I don't want to
encourage its use, so deprecate/hide it for now, then remove
it once I have a better solution.
2021-12-22 08:28:23 +01:00
derrod
0e72950382
[cli] Add -H/--full-help and only show command list by default
...
The full help has gotten too long, just print the commands by default.
2021-12-22 08:24:23 +01:00
derrod
11850228a8
Bump version
2021-12-22 00:05:48 +01:00
derrod
8c087fc90e
[cli] Add external activation to "info"
2021-12-21 23:59:00 +01:00
derrod
508c6a3a58
[cli] Add "get-token" debug command
2021-12-21 23:58:40 +01:00
derrod
71633333b7
[cli] Remove non-functional Origin activation on Linux
2021-12-21 23:28:24 +01:00
derrod
3e4c70ece2
[core] Only use installed manifest for repair if it actually exists
...
Fixes #380
2021-12-20 23:15:47 +01:00
derrod
c3ade2994e
[cli/core/utils] Re-enable SDL for Mac platform
...
Currently, this only affects Fortnite and UE.
2021-12-17 01:25:24 +01:00
derrod
6c35504058
[cli] Fix wrong type in cleanup command
...
Fixes #378
2021-12-14 14:30:33 +01:00
derrod
fa02ed396e
Bump version (hotfix #2 )
2021-12-12 23:34:10 +01:00
derrod
48cab6af57
[cli] Also activate Ubisoft DLC (untested)
2021-12-11 18:50:30 +01:00
derrod
01ec2ccd89
[cli] Error out if no game files are found, suggest corrected path
2021-12-11 16:34:07 +01:00
derrod
797598322d
[cli] Fix checking for game executable on import
2021-12-11 16:23:12 +01:00
derrod
803fc46249
Bump version (hotfix)
2021-12-08 00:49:31 +01:00
derrod
57d88b2db4
[core] Fix non-threaded metadata updates
2021-12-08 00:44:24 +01:00
derrod
6106433153
[cli] Disable SDL for Mac titles
2021-12-08 00:22:44 +01:00
derrod
e0ad2171bf
[cli] Add notice about Ubisoft activation to list-games
2021-12-06 19:33:55 +01:00
derrod
db5cd43047
[cli] Add Origin activation process to "activate" command
2021-12-06 19:33:36 +01:00
derrod
eb8bc3713b
[cli] Rename --include-non-installable to -T/--third-party
2021-12-06 19:31:39 +01:00
derrod
9d18ef03fa
[cli/core/models] Add property for partner link id/type
2021-12-06 18:10:30 +01:00
derrod
4dd495e2f5
[cli] Add aliases for --uplay
2021-12-06 13:20:48 +01:00
derrod
8c50f051a7
Bump version
2021-12-03 23:02:12 +01:00
derrod
82376e3d57
[cli] Allow setting default platform via config
2021-12-03 21:01:30 +01:00
derrod
694a275dac
[core] Fix platform linking warning
2021-12-03 18:08:21 +01:00
derrod
e11dd8734f
[cli] Make pre-installation check results stand out more
2021-12-03 18:01:24 +01:00
derrod
db1a6706e4
[cli] I a word when opening the auth/link URLs
2021-12-03 17:54:14 +01:00
derrod
e1b5245252
[cli] Improve Ubisoft activation messaging
2021-12-03 17:23:24 +01:00
derrod
c8189460c2
[cli/core] Fix some plurals
2021-12-03 17:21:48 +01:00
derrod
1c8349a28e
[core] Do not show fetching metadata message unless there's data to fetch
2021-12-03 17:14:45 +01:00
derrod
20f934dc12
[core] Avoid unnecessary copy()
2021-12-03 16:27:19 +01:00
derrod
8dadf3c1a1
[core] Do not delete unused asset information when updating
...
Previously this would remove asset information for platforms not
currently in-use. This change retains those, but doesn't update
them if they're not required.
2021-12-03 16:27:00 +01:00
derrod
d737ca57a7
[core/egs] Use thread pool for fetching metadata
2021-12-03 16:23:48 +01:00
derrod
5671448264
[core] Rework Uplay warning
2021-12-03 14:30:01 +01:00
derrod
e71ab3155e
[cli/api/models] Add "activate" command to redeem Uplay games
2021-12-03 14:07:57 +01:00
derrod
a8e35e9f3b
[cli] Show download url for PyInstaller build updates
2021-12-03 12:47:07 +01:00