From c99f3303007a1803cbaa23fc2830336ec551460b Mon Sep 17 00:00:00 2001 From: Rex Kerr Date: Fri, 20 Nov 2015 13:41:07 -0800 Subject: Corrected *_config_dir() for OSX --- appdirs.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/appdirs.py b/appdirs.py index 2acd1de..f7f8359 100644 --- a/appdirs.py +++ b/appdirs.py @@ -185,15 +185,19 @@ def user_config_dir(appname=None, appauthor=None, version=None, roaming=False): for a discussion of issues. Typical user config directories are: - Mac OS X: same as user_data_dir + Mac OS X: ~/Library/Preferences/ Unix: ~/.config/ # or in $XDG_CONFIG_HOME, if defined Win *: same as user_data_dir For Unix, we follow the XDG spec and support $XDG_CONFIG_HOME. That means, by default "~/.config/". """ - if system in ["win32", "darwin"]: + if system == "win32": path = user_data_dir(appname, appauthor, None, roaming) + elif system == 'darwin': + path = os.path.expanduser('~/Library/Preferences/') + if appname: + path = os.path.join(path, appname) else: path = os.getenv('XDG_CONFIG_HOME', os.path.expanduser("~/.config")) if appname: @@ -233,10 +237,14 @@ def site_config_dir(appname=None, appauthor=None, version=None, multipath=False) WARNING: Do not use this on Windows. See the Vista-Fail note above for why. """ - if system in ["win32", "darwin"]: + if system == 'win32': path = site_data_dir(appname, appauthor) if appname and version: path = os.path.join(path, version) + elif system == 'darwin': + path = os.path.expanduser('/Library/Preferences') + if appname: + path = os.path.join(path, appname) else: # XDG default for $XDG_CONFIG_DIRS # only first, if multipath is False -- cgit v1.2.1