diff options
Diffstat (limited to 'gamechestcli/__main__.py')
-rwxr-xr-x | gamechestcli/__main__.py | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/gamechestcli/__main__.py b/gamechestcli/__main__.py index 8fe912d..22749bd 100755 --- a/gamechestcli/__main__.py +++ b/gamechestcli/__main__.py @@ -5,16 +5,21 @@ Manage games. Install, remove, run them. Usage: gamechest install <GAME_ID> gamechest remove <GAME_ID> gamechest run [--profile_id=<PROFILE_ID>] <GAME_ID> - gamechest set [--profile_id=<PROFILE_ID>] [--remote_basedir=<BASEDIR>] [--gamesaves_path] + gamechest set [--profile_id=<PROFILE_ID>] [--remote_basedir=<PATH>] [--gamesaves_path=<PATH>] + gamechest list [--installed] + gamechest showconfig ''' import sys import docopt +from rich import print from gamechest.cliactions import install, remove, run from gamechest.gameconfig import config +from gamechest.statusdb import StatusDB +from gamechest.gamedb import GameDB def main(): @@ -35,9 +40,20 @@ def main(): config.set_profile_id(args['--profile_id']) if args['--remote_basedir']: config.set_remote_basedir(args['--remote_basedir']) - if args['--gamesaves_path'] + if args['--gamesaves_path']: config.set_gamesaves_path(args['--gamesaves_path']) config.save() + elif args['list']: + status_db = StatusDB() + if args['--installed']: + print(list(status_db.get_installed())) + else: + game_db = GameDB() + list_installed = list(status_db.get_installed()) + for game_id in game_db.get_ids(): + print(game_id, 'installed:', game_id in list_installed) + elif args['showconfig']: + config.print_config() if __name__ == "__main__": |