# -*- coding: utf-8 -*-
-# Copyright (c) 2013, 2014 Jack Kaliko <kaliko@azylum.org>
+# Copyright (c) 2013, 2014, 2015 Jack Kaliko <kaliko@azylum.org>
#
# This file is part of sima
#
# local import
from . import core, info
from .lib.logger import set_logger
+from .lib.meta import Meta
from .lib.simadb import SimaDB
from .utils.config import ConfMan
from .utils.startopt import StartOpt
# core plugins
from .plugins.core.history import History
from .plugins.core.mpdoptions import MpdOptions
+from .plugins.core.uniq import Uniq
##
if not sima.config.get('sima', source):
return
logger = logging.getLogger('sima')
+ # TODO: Sanity check for "sima.config.get('sima', source)" ?
for plugin in sima.config.get('sima', source).split(','):
plugin = plugin.strip(' \n')
module = 'sima.plugins.{0}.{1}'.format(source, plugin.lower())
sima.shutdown()
sys.exit(1)
logger.info('Loading {0} plugin: {name} ({doc})'.format(
- source, **plugin_obj.info()))
+ source, **plugin_obj.info()))
sima.register_plugin(plugin_obj)
"""
# set logger
verbosity = sopt.options.get('verbosity', 'warning')
- logfile = sopt.options.get('logfile', None)
- set_logger(verbosity, logfile)
# loads configuration
config = ConfMan(sopt.options).config
logfile = config.get('log', 'logfile')
sima = core.Sima(config)
# required core plugins
- sima.register_plugin(History)
- sima.register_plugin(MpdOptions)
+ core_plugins = [History, MpdOptions, Uniq]
+ for cplgn in core_plugins:
+ logger.debug('Register core {name} ({doc})'.format(**cplgn.info()))
+ sima.register_core_plugin(cplgn)
+ logger.debug('core loaded, prioriy: {}'.format(' > '.join(map(str, sima.core_plugins))))
# Loading internal plugins
load_plugins(sima, 'internal')
# Loading contrib plugins
load_plugins(sima, 'contrib')
+ logger.info('plugins loaded, prioriy: {}'.format(' > '.join(map(str, sima.plugins))))
+ # Set use of MusicBrainzIdentifier
+ if not config.getboolean('sima', 'musicbrainzid'):
+ logger.info('Disabling MusicBrainzIdentifier')
+ Meta.use_mbid = False
+
# Run as a daemon
if config.getboolean('daemon', 'daemon'):
if restart: