aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/__init__.py
diff options
context:
space:
mode:
authorMark Oteiza <mvoteiza@udel.edu>2013-09-29 22:50:46 -0400
committerMark Oteiza <mvoteiza@udel.edu>2013-09-30 18:22:38 -0400
commitfa556755930db77c62016a468d870e76608db012 (patch)
treed2c59e16fb87ef2ad31bb50c64ee19c18cff46f0 /youtube_dl/__init__.py
parent722076a123c60ed6d5a978c4bc2609f46c8e3ee9 (diff)
Support XDG base directory specification
Diffstat (limited to 'youtube_dl/__init__.py')
-rw-r--r--youtube_dl/__init__.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py
index 28a7bdd92..95f75942a 100644
--- a/youtube_dl/__init__.py
+++ b/youtube_dl/__init__.py
@@ -113,6 +113,12 @@ def parseOpts(overrideArguments=None):
pass
return opts
+ xdg_cache_home = os.environ.get('XDG_CACHE_HOME')
+ if xdg_cache_home:
+ userCacheDir = os.path.join(xdg_cache_home, 'youtube-dl')
+ else:
+ userCacheDir = os.path.join(os.path.expanduser('~'), '.cache', 'youtube-dl')
+
max_width = 80
max_help_position = 80
@@ -168,7 +174,7 @@ def parseOpts(overrideArguments=None):
general.add_option('--proxy', dest='proxy', default=None, help='Use the specified HTTP/HTTPS proxy', metavar='URL')
general.add_option('--no-check-certificate', action='store_true', dest='no_check_certificate', default=False, help='Suppress HTTPS certificate validation.')
general.add_option(
- '--cache-dir', dest='cachedir', default=u'~/.youtube-dl/cache',
+ '--cache-dir', dest='cachedir', default=userCacheDir,
help='Location in the filesystem where youtube-dl can store downloaded information permanently. %default by default')
general.add_option(
'--no-cache-dir', action='store_const', const=None, dest='cachedir',
@@ -369,9 +375,13 @@ def parseOpts(overrideArguments=None):
else:
xdg_config_home = os.environ.get('XDG_CONFIG_HOME')
if xdg_config_home:
- userConfFile = os.path.join(xdg_config_home, 'youtube-dl.conf')
+ userConfFile = os.path.join(xdg_config_home, 'youtube-dl', 'config')
+ if not os.path.isfile(userConfFile):
+ userConfFile = os.path.join(xdg_config_home, 'youtube-dl.conf')
else:
- userConfFile = os.path.join(os.path.expanduser('~'), '.config', 'youtube-dl.conf')
+ userConfFile = os.path.join(os.path.expanduser('~'), '.config', 'youtube-dl', 'config')
+ if not os.path.isfile(userConfFile):
+ userConfFile = os.path.join(os.path.expanduser('~'), '.config', 'youtube-dl.conf')
systemConf = _readOptions('/etc/youtube-dl.conf')
userConf = _readOptions(userConfFile)
commandLineConf = sys.argv[1:]