Fixed changed data-structure passed when creating config file, issue 1228

This commit is contained in:
Stein Karlsen 2015-07-25 03:43:35 +02:00
parent ee0f2f2a94
commit 0d3563441f
2 changed files with 10 additions and 7 deletions

View File

@ -166,7 +166,7 @@ def main():
raise
def create_file_structures_and_config(args, extensions):
def create_file_structures_and_config(args, extensions_data):
path.get_or_create_dir(b'$XDG_DATA_DIR/mopidy')
path.get_or_create_dir(b'$XDG_CONFIG_DIR/mopidy')
@ -176,7 +176,7 @@ def create_file_structures_and_config(args, extensions):
return
try:
default = config_lib.format_initial(extensions)
default = config_lib.format_initial(extensions_data)
path.get_or_create_file(config_file, mkdir=False, content=default)
logger.info('Initialized %s with default config', config_file)
except IOError as error:

View File

@ -87,20 +87,23 @@ def format(config, ext_schemas, comments=None, display=True):
return _format(config, comments or {}, schemas, display, False)
def format_initial(extensions):
def format_initial(extensions_data):
config_dir = os.path.dirname(__file__)
defaults = [read(os.path.join(config_dir, 'default.conf'))]
defaults.extend(e.get_default_config() for e in extensions)
defaults.extend(d.extension.get_default_config() for d in extensions_data)
raw_config = _load([], defaults, [])
schemas = _schemas[:]
schemas.extend(e.get_config_schema() for e in extensions)
schemas.extend(d.extension.get_config_schema() for d in extensions_data)
config, errors = _validate(raw_config, schemas)
versions = ['Mopidy %s' % versioning.get_version()]
for extension in sorted(extensions, key=lambda ext: ext.dist_name):
versions.append('%s %s' % (extension.dist_name, extension.version))
extensions_data = sorted(
extensions_data, key=lambda d: d.extension.dist_name)
for data in extensions_data:
versions.append('%s %s' % (
data.extension.dist_name, data.extension.version))
header = _INITIAL_HELP.strip() % {'versions': '\n# '.join(versions)}
formatted_config = _format(