Switch local backend over to xdg_data_dir

This commit is contained in:
Thomas Adamcik 2011-07-17 02:16:44 +02:00
parent aa2c68d88e
commit 3468feb1a9
4 changed files with 14 additions and 9 deletions

View File

@ -10,6 +10,7 @@ from subprocess import PIPE, Popen
VERSION = (0, 6, 0)
DATA_FOLDER = os.path.join(glib.get_user_data_dir(), 'mopidy')
SETTINGS_FOLDER = os.path.join(glib.get_user_config_dir(), 'mopidy')
SETTINGS_FILE = os.path.join(SETTINGS_FOLDER, 'settings.py')

View File

@ -6,7 +6,7 @@ import shutil
from pykka.actor import ThreadingActor
from pykka.registry import ActorRegistry
from mopidy import settings
from mopidy import settings, DATA_FOLDER
from mopidy.backends.base import (Backend, CurrentPlaylistController,
LibraryController, BaseLibraryProvider, PlaybackController,
BasePlaybackProvider, StoredPlaylistsController,
@ -18,6 +18,9 @@ from .translator import parse_m3u, parse_mpd_tag_cache
logger = logging.getLogger(u'mopidy.backends.local')
DEFAULT_PLAYLIST_PATH = os.path.join(DATA_FOLDER, 'playlists')
DEFAULT_TAG_CACHE_FILE = os.path.join(DATA_FOLDER, 'tag_cache')
class LocalBackend(ThreadingActor, Backend):
"""
A backend for playing music from a local music archive.
@ -96,7 +99,7 @@ class LocalPlaybackProvider(BasePlaybackProvider):
class LocalStoredPlaylistsProvider(BaseStoredPlaylistsProvider):
def __init__(self, *args, **kwargs):
super(LocalStoredPlaylistsProvider, self).__init__(*args, **kwargs)
self._folder = settings.LOCAL_PLAYLIST_PATH
self._folder = settings.LOCAL_PLAYLIST_PATH or DEFAULT_PLAYLIST_PATH
self.refresh()
def lookup(self, uri):
@ -173,7 +176,7 @@ class LocalLibraryProvider(BaseLibraryProvider):
self.refresh()
def refresh(self, uri=None):
tag_cache = settings.LOCAL_TAG_CACHE_FILE
tag_cache = settings.LOCAL_TAG_CACHE_FILE or DEFAULT_TAG_CACHE_FILE
music_folder = settings.LOCAL_MUSIC_PATH
tracks = parse_mpd_tag_cache(tag_cache, music_folder)

View File

@ -19,7 +19,7 @@ sys.argv[1:] = gstreamer_args
from pykka.registry import ActorRegistry
from mopidy import (get_version, settings, OptionalDependencyError,
SettingsError, SETTINGS_FOLDER, SETTINGS_FILE)
SettingsError, DATA_FOLDER, SETTINGS_FOLDER, SETTINGS_FILE)
from mopidy.gstreamer import GStreamer
from mopidy.utils import get_class
from mopidy.utils.log import setup_logging
@ -91,6 +91,7 @@ def check_old_folders():
def setup_settings(interactive):
get_or_create_folder(SETTINGS_FOLDER)
get_or_create_folder(DATA_FOLDER)
get_or_create_file(SETTINGS_FILE)
try:
settings.validate(interactive)

View File

@ -4,7 +4,7 @@ Available settings and their default values.
.. warning::
Do *not* change settings directly in :mod:`mopidy.settings`. Instead, add a
file called ``~/.mopidy/settings.py`` and redefine settings there.
file called ``~/.config/mopidy/settings.py`` and redefine settings there.
"""
#: List of playback backends to use. See :mod:`mopidy.backends` for all
@ -87,8 +87,8 @@ LOCAL_MUSIC_PATH = u'~/music'
#:
#: Default::
#:
#: LOCAL_PLAYLIST_PATH = u'~/.mopidy/playlists'
LOCAL_PLAYLIST_PATH = u'~/.mopidy/playlists'
#: LOCAL_PLAYLIST_PATH = None # Implies $XDG_DATA_DIR/mopidy/playlists
LOCAL_PLAYLIST_PATH = None
#: Path to tag cache for local music.
#:
@ -96,8 +96,8 @@ LOCAL_PLAYLIST_PATH = u'~/.mopidy/playlists'
#:
#: Default::
#:
#: LOCAL_TAG_CACHE_FILE = u'~/.mopidy/tag_cache'
LOCAL_TAG_CACHE_FILE = u'~/.mopidy/tag_cache'
#: LOCAL_TAG_CACHE_FILE = None # Implies $XDG_DATA_DIR/mopidy/tag_cache
LOCAL_TAG_CACHE_FILE = None
#: Sound mixer to use. See :mod:`mopidy.mixers` for all available mixers.
#: