X-Git-Url: https://git.phdru.name/?p=xsetbg.git;a=blobdiff_plain;f=xsetbg_conf.py;h=05777324b9a1b62c8642ba0c4219ded96113cfc9;hp=ad5125b24b1865f2da5d934f90fd5996e33223cc;hb=dd1cab5a4b14ad04ae3df5231952fc460e927bf6;hpb=422a3f4810cf1eda80e4d4af1430809823ca3117 diff --git a/xsetbg_conf.py b/xsetbg_conf.py old mode 100644 new mode 100755 index ad5125b..0577732 --- a/xsetbg_conf.py +++ b/xsetbg_conf.py @@ -1,3 +1,4 @@ +#! /usr/bin/env python """XSetBg config """ @@ -11,7 +12,25 @@ __all__ = ['xsetbg_conf'] import os from ConfigParser import SafeConfigParser -xsetbg_dir = os.path.dirname(os.path.abspath(__file__)) +config_dirs = [] +if 'XDG_CONFIG_HOME' in os.environ: + config_dirs.append(os.environ['XDG_CONFIG_HOME']) +if 'XDG_CONFIG_DIRS' in os.environ: + config_dirs.extend(os.environ['XDG_CONFIG_DIRS'].split(':')) +home_config = os.path.expanduser('~/.config') +if home_config not in config_dirs: + config_dirs.append(home_config) +config_dirs.append(os.path.dirname(os.path.abspath(__file__))) -xsetbg_conf = SafeConfigParser() -xsetbg_conf.read(os.path.join(xsetbg_dir, 'xsetbg.conf')) +for d in config_dirs: + xsetbg_conf_file = os.path.join(d, 'xsetbg.conf') + if os.path.exists(xsetbg_conf_file): + xsetbg_conf = SafeConfigParser() + xsetbg_conf.read(xsetbg_conf_file) + break +else: + raise RuntimeError("Cannot find xsetbg.conf; searched %s", config_dirs) + +if __name__ == '__main__': + print "Config dirs:", config_dirs + print "Config file:", xsetbg_conf_file