From 0479adf7fc31f457f7c06d531d0463b5007b85b7 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Mon, 18 Jul 2011 00:15:58 +0200 Subject: [PATCH] Fix s/_FOLDER/_PATH/, move cache to mopidy instead of spotify folder and fix docs. --- docs/changes.rst | 6 +++--- mopidy/__init__.py | 7 ++++--- mopidy/backends/local/__init__.py | 6 +++--- mopidy/backends/spotify/session_manager.py | 9 +++------ mopidy/core.py | 8 ++++---- mopidy/utils/settings.py | 4 ++-- 6 files changed, 19 insertions(+), 21 deletions(-) diff --git a/docs/changes.rst b/docs/changes.rst index 6cda6668..9dbcaf61 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -12,14 +12,14 @@ v0.6.0 (in development) - Pykka 0.12.3 or greater is required. -- All config, data and cache locations are now based on the XDG spec. +- All config, data, and cache locations are now based on the XDG spec. - This means that your settings file will need to be moved from `~/.mopidy/settings.py` to `~/.config/mopidy/settings.py`. - - Your Spotify cache will now be stored in `~/.cache/spotify` instead of + - Your Spotify cache will now be stored in `~/.cache/mopidy` instead of `~/.mopidy/spotify_cache`, this matches Spotify's own behaviour for their Linux client. - - Localbackends tag_cache should now be in `~/.local/share/mopidy/tag_cache`, + - The local backend's `tag_cache` should now be in `~/.local/share/mopidy/tag_cache`, likewise your playlists will be in `~/.local/share/mopidy/playlists`. - The local client now tries to lookup where your music is via XDG, it will fall-back to `~/music` or use whatever setting you set manually. diff --git a/mopidy/__init__.py b/mopidy/__init__.py index 9a897089..1d820fd0 100644 --- a/mopidy/__init__.py +++ b/mopidy/__init__.py @@ -10,9 +10,10 @@ 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') +DATA_PATH = os.path.join(glib.get_user_data_dir(), 'mopidy') +CACHE_PATH = os.path.join(glib.get_user_cache_dir(), 'mopidy') +SETTINGS_PATH = os.path.join(glib.get_user_config_dir(), 'mopidy') +SETTINGS_FILE = os.path.join(SETTINGS_PATH, 'settings.py') def get_version(): try: diff --git a/mopidy/backends/local/__init__.py b/mopidy/backends/local/__init__.py index 05ea02dd..e689f666 100644 --- a/mopidy/backends/local/__init__.py +++ b/mopidy/backends/local/__init__.py @@ -7,7 +7,7 @@ import shutil from pykka.actor import ThreadingActor from pykka.registry import ActorRegistry -from mopidy import settings, DATA_FOLDER +from mopidy import settings, DATA_PATH from mopidy.backends.base import (Backend, CurrentPlaylistController, LibraryController, BaseLibraryProvider, PlaybackController, BasePlaybackProvider, StoredPlaylistsController, @@ -19,8 +19,8 @@ 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') +DEFAULT_PLAYLIST_PATH = os.path.join(DATA_PATH, 'playlists') +DEFAULT_TAG_CACHE_FILE = os.path.join(DATA_PATH, 'tag_cache') DEFAULT_MUSIC_PATH = glib.get_user_special_dir(glib.USER_DIRECTORY_MUSIC) if not DEFAULT_MUSIC_PATH or DEFAULT_MUSIC_PATH == os.path.expanduser(u'~'): diff --git a/mopidy/backends/spotify/session_manager.py b/mopidy/backends/spotify/session_manager.py index cdea0c5c..9c8853e6 100644 --- a/mopidy/backends/spotify/session_manager.py +++ b/mopidy/backends/spotify/session_manager.py @@ -7,7 +7,7 @@ from spotify.manager import SpotifySessionManager as PyspotifySessionManager from pykka.registry import ActorRegistry -from mopidy import get_version, settings +from mopidy import get_version, settings, CACHE_PATH from mopidy.backends.base import Backend from mopidy.backends.spotify import BITRATES from mopidy.backends.spotify.container_manager import SpotifyContainerManager @@ -19,16 +19,13 @@ from mopidy.utils.process import BaseThread logger = logging.getLogger('mopidy.backends.spotify.session_manager') -DEFAULT_CACHE_LOCATION = os.path.join(glib.get_user_cache_dir(), 'spotify') -DEFAULT_SETTINGS_LOCATION = DEFAULT_CACHE_LOCATION - # pylint: disable = R0901 # SpotifySessionManager: Too many ancestors (9/7) class SpotifySessionManager(BaseThread, PyspotifySessionManager): - cache_location = settings.SPOTIFY_CACHE_PATH or DEFAULT_SETTINGS_LOCATION - settings_location = settings.SPOTIFY_CACHE_PATH or DEFAULT_CACHE_LOCATION + cache_location = settings.SPOTIFY_CACHE_PATH or CACHE_PATH + settings_location = settings.SPOTIFY_CACHE_PATH or CACHE_PATH appkey_file = os.path.join(os.path.dirname(__file__), 'spotify_appkey.key') user_agent = 'Mopidy %s' % get_version() diff --git a/mopidy/core.py b/mopidy/core.py index 97b4ed5c..bf794655 100644 --- a/mopidy/core.py +++ b/mopidy/core.py @@ -21,7 +21,7 @@ sys.argv[1:] = gstreamer_args from pykka.registry import ActorRegistry from mopidy import (get_version, settings, OptionalDependencyError, - SettingsError, DATA_FOLDER, SETTINGS_FOLDER, SETTINGS_FILE) + SettingsError, DATA_PATH, SETTINGS_PATH, SETTINGS_FILE) from mopidy.gstreamer import GStreamer from mopidy.utils import get_class from mopidy.utils.log import setup_logging @@ -89,11 +89,11 @@ def check_old_folders(): logger.warning(u'Old settings folder found at %s, settings.py should be ' 'moved to %s, any cache data should be deleted. See release notes ' - 'for further instructions.', old_settings_folder, SETTINGS_FOLDER) + 'for further instructions.', old_settings_folder, SETTINGS_PATH) def setup_settings(interactive): - get_or_create_folder(SETTINGS_FOLDER) - get_or_create_folder(DATA_FOLDER) + get_or_create_folder(SETTINGS_PATH) + get_or_create_folder(DATA_PATH) get_or_create_file(SETTINGS_FILE) try: settings.validate(interactive) diff --git a/mopidy/utils/settings.py b/mopidy/utils/settings.py index 60a02957..fca4f337 100644 --- a/mopidy/utils/settings.py +++ b/mopidy/utils/settings.py @@ -8,7 +8,7 @@ import os from pprint import pformat import sys -from mopidy import SettingsError, SETTINGS_FOLDER, SETTINGS_FILE +from mopidy import SettingsError, SETTINGS_PATH, SETTINGS_FILE from mopidy.utils.log import indent logger = logging.getLogger('mopidy.utils.settings') @@ -23,7 +23,7 @@ class SettingsProxy(object): def _get_local_settings(self): if not os.path.isfile(SETTINGS_FILE): return {} - sys.path.insert(0, SETTINGS_FOLDER) + sys.path.insert(0, SETTINGS_PATH) # pylint: disable = F0401 import settings as local_settings_module # pylint: enable = F0401