Commit graph

307 commits

Author SHA1 Message Date
derrod 6536473063 [cli] Support running uninstaller on Windows 2023-06-18 00:54:54 +02:00
derrod 0e35b70941 [cli] Show uninstaller information in "info" command 2023-06-18 00:38:38 +02:00
derrod 4145381b93 [cli/core/lfs] Add slightly janky lock for installed game data
In order to prevent multiple instances of Legendary mucking with installed game data
acquire a lock as soon as it is required and only release it (implicitly) when
Legendary exits.

This is a bit jank, but should prevent people from messing up their local data by
running two install commands at a time.

EGL sync is technically also affected by this, but in its case we simply skip the
sync/import/export and leave it to the next instance with a lock to do.
2023-06-17 23:46:52 +02:00
Mathis Dröge bdd53fb8f8 [cli] Search for game executable case-insensitively 2023-06-17 21:32:45 +02:00
derrod bbb19d6cb6 [cli] Update version even if no files changed
This happens mostly with DLCs that get version bumps with no file changes.
2023-06-17 21:31:12 +02:00
derrod 8b2809779f [cli] Set non-tty output encoding to UTF-8
Closes #551 and #554
2023-05-28 00:16:21 +02:00
derrod f97d799e87 [cli] Fix list_saves crash if game metadata is missing 2023-05-14 02:17:29 +02:00
derrod 09d39b3fe3 [cli] Only fetch save games for specified appname (if any) on sync 2023-05-14 02:17:02 +02:00
derrod a70ac2d1f9 [cli] Fix info not displaying install information
DLC would overwrite the app name and break the check for the installed game.
2023-05-04 13:28:46 +02:00
derrod 2ed9557b2c [cli] Add --accept-path flag to automatically use computed save path 2022-11-06 17:26:47 +01:00
derrod 0e23b8e4f0 Cherry-pick some Sourcery refactoring suggestions 2022-10-25 15:38:55 +02:00
derrod 85f6bd3220 Move some files from utils to more sensible locations 2022-10-25 15:14:26 +02:00
derrod 66ef0f3d5e [cli] Remove redundant conditional 2022-09-16 13:10:34 +02:00
derrod b136748168 [core/cli/api] Use authorization code for login
This still seems to work.

Fixes #468
2022-09-01 02:23:38 +02:00
derrod 5a20f12461 [cli/utils] Fix webview login on Windows
Now using exchange code every time!
2022-09-01 02:00:35 +02:00
Mathis Dröge 0d23775337 [cli] Fix typo 2022-07-18 08:00:26 +02:00
Mathis Dröge d8af06c936 [cli] Rename "yes" -> "skip_prereqs" in _handle_postinstall
The name "yes" was a little confusing, you'd think it means
"Yes, install all prerequisites" while it actually skips them
2022-07-18 08:00:26 +02:00
Mathis Dröge f9a2dae282
[cli] Properly remove EOS overlay when no prefix is supplied (#441) 2022-06-27 08:32:23 +02:00
derrod 7a617d35f3 [cli] Fix double-click check breaking macOS/Linux execution
By always trying to import windows_helpers and thus winreg on
non-Windows things would break.
2022-06-24 13:48:44 +02:00
derrod e5ec8e25b3 [cli] Just fix some spellcheck complaints
"shoouldn't" lol
2022-06-24 13:43:31 +02:00
derrod 83072d0b39 [cli] Make missing manifests more easily recoverable 2022-06-24 13:33:58 +02:00
Mathis Dröge 9e145278d5
[cli/utils] Open CMD when exe is double-clicked (#436)
This opens up CMD if
- the exe file was double-clicked
- no arguments are provided
- we're on Windows
2022-06-24 12:44:28 +02:00
derrod 594e60e850 [cli] Allow some eos-overlay commands to work without a prefix 2022-06-24 12:27:24 +02:00
tooru 496bda3345
[cli] Check for empty list when activating Origin games
Prevents `IndexError` from occurring when Origin games list is empty.
2022-06-24 12:08:54 +02:00
derrod 40748a91ba [cli] Correct command in move failed error message
Fixes #416
2022-06-01 09:47:50 +02:00
derrod b7f4a9f45a [cli] Show game "tip" before and after install
Just to be sure that users see it.
2022-06-01 09:40:51 +02:00
derrod 2b71b50d5c [cli/lfs] Fix cleanup deleting in-use manifests using new naming convention 2022-05-31 13:26:17 +02:00
derrod 1e97a4d791 [cli/core] Only check CX_BOTTLE when using CrossOver wine
Addresses issues pointed out in #414
2022-05-23 07:45:56 +02:00
derrod 3d1042e27e [cli] Ensure delta is >= 1 before verification speed calculation
Fixes #412
2022-03-05 14:10:18 +01:00
derrod 7ac9ec7b5f [cli] sync-saves: Skip unconfigured games when using --yes 2022-01-26 14:12:48 +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 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 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 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 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 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