summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSridhar Ratnakumar <sridhar.ratna@gmail.com>2010-09-01 14:29:47 -0700
committerSridhar Ratnakumar <sridhar.ratna@gmail.com>2010-09-01 14:29:47 -0700
commit362f390237fa59bd4202b841b68b3217372fc089 (patch)
tree0d0d232d9db8d12770dd3c5e68c78a3306ee6e44
parent79cde39c98168bd21c0a7ead9c9f2c0b14eacd46 (diff)
downloadappdirs-362f390237fa59bd4202b841b68b3217372fc089.tar.gz
unix: Use XDG 'config' instead of 'data', after discussion with Trent
-rw-r--r--lib/appdirs.py19
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/appdirs.py b/lib/appdirs.py
index 443498d..7b9d125 100644
--- a/lib/appdirs.py
+++ b/lib/appdirs.py
@@ -43,14 +43,17 @@ def user_data_dir(appname, appauthor=None, version=None, roaming=False):
Typical user data directories are:
Mac OS X: ~/Library/Application Support/<AppName>
- Unix: ~/.local/share/<appname>
+ Unix: ~/.config/<appname>
Win XP (not roaming): C:\Documents and Settings\<username>\Application Data\<AppAuthor>\<AppName>
Win XP (roaming): C:\Documents and Settings\<username>\Local Settings\Application Data\<AppAuthor>\<AppName>
Win 7 (not roaming): C:\Users\<username>\AppData\Local\<AppAuthor>\<AppName>
Win 7 (roaming): C:\Users\<username>\AppData\Roaming\<AppAuthor>\<AppName>
- For Unix, we follow the XDG spec and support $XDG_DATA_HOME, but not
- $XDG_DATA_DIRS.
+ For Unix, we follow the XDG spec and support $XDG_CONFIG_HOME, but not
+ $XDG_CONFIG_DIRS. We don't use $XDG_DATA_HOME as that data dir is mostly
+ used at the time of installation, instead of the application adding data
+ during runtime. Also, in practice, Linux apps tend to store their data in
+ ~/.config/<appname> instead of ~/.local/share/<appname>.
"""
if sys.platform.startswith("win"):
if appauthor is None:
@@ -63,7 +66,7 @@ def user_data_dir(appname, appauthor=None, version=None, roaming=False):
appname)
else:
path = os.path.join(
- os.getenv('XDG_DATA_HOME', os.path.expanduser("~/.local/share")),
+ os.getenv('XDG_CONFIG_HOME', os.path.expanduser("~/.config")),
appname.lower())
if version:
path = os.path.join(path, version)
@@ -84,12 +87,12 @@ def site_data_dir(appname, appauthor=None, version=None):
Typical user data directories are:
Mac OS X: /Library/Application Support/<AppName>
- Unix: /usr/local/share/<appname>
+ Unix: /etc/xdg/<appname>
Win XP: C:\Documents and Settings\All Users\Application Data\<AppAuthor>\<AppName>
Vista: (Fail! "C:\ProgramData" is a hidden *system* directory on Vista.)
Win 7: C:\ProgramData\<AppAuthor>\<AppName> # Hidden, but writeable on Win 7.
- For Unix, use use XDG default /usr/local/share
+ For Unix, use use XDG default /etc/xdg
WARNING: Do not use this on Windows. See the Vista-Fail note above for why.
"""
@@ -103,8 +106,8 @@ def site_data_dir(appname, appauthor=None, version=None):
os.path.expanduser('/Library/Application Support'),
appname)
else:
- # XDG default for $XDG_DATA_DIRS[0]
- path = "/usr/local/share/"+appname.lower()
+ # XDG default for $XDG_CONFIG_DIRS[0]
+ path = "/etc/xdg/"+appname.lower()
if version:
path = os.path.join(path, version)
return path