subclient

Subsonic ncurses client
git clone https://git.e1e0.net/subclient.git
Log | Files | Refs | README

commit 0aa392a1a735b6b84a559aa0295e7b48f9246b2a
parent 2be43369eb260b9a5bbd7e3449aa6cf94335b337
Author: Paco Esteban <paco@e1e0.net>
Date:   Mon, 18 Oct 2021 19:01:55 +0200

test if config file exists

Diffstat:
Msubclient/helpers.py | 9+++++++--
Msubclient/subclient.py | 9++++++++-
2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/subclient/helpers.py b/subclient/helpers.py @@ -28,6 +28,11 @@ def get_cache_folder(): def get_config_file(): config_home = os.environ.get('XDG_CONFIG_HOME') if config_home: - return config_home + '/subclient.ini' + config_file = config_home + '/subclient.ini' else: - return HOME + '/.config/subclient.ini' + config_file = HOME + '/.config/subclient.ini' + + if not os.path.isfile(config_file): + raise FileNotFoundError(f'Config file {config_file} does not exist') + + return config_file diff --git a/subclient/subclient.py b/subclient/subclient.py @@ -3,6 +3,7 @@ import configparser import curses +import sys from subclient import subsonic from subclient import player from subclient import helpers @@ -23,7 +24,13 @@ class SubClient: def __init__(self): self.config = configparser.ConfigParser() - self.config.read(helpers.get_config_file()) + try: + config_file = helpers.get_config_file() + except FileNotFoundError as e: + print(e, file=sys.stderr) + sys.exit(1) + else: + self.config.read(config_file) self.subsonic = subsonic.Subsonic(self.config['subclient'])