Bastien Nocera ae2ea4f
From 5ede80b0713c75b21925203c3ef389c86cb69e6d Mon Sep 17 00:00:00 2001
Bastien Nocera ae2ea4f
From: Bastien Nocera <hadess@hadess.net>
Bastien Nocera ae2ea4f
Date: Fri, 20 Jul 2018 15:04:48 +0200
Bastien Nocera ae2ea4f
Subject: [PATCH] Remove pyxdg dependency
Bastien Nocera ae2ea4f
Bastien Nocera ae2ea4f
And use the same algorithm as GLib to determine the base user config
Bastien Nocera ae2ea4f
directory (XDG_CONFIG_HOME, then ~/.config then /tmp/$USERNAME/.config)
Bastien Nocera ae2ea4f
---
Bastien Nocera ae2ea4f
 src/api/python/speechd_config/config.py.in | 13 ++++++++++---
Bastien Nocera ae2ea4f
 1 file changed, 10 insertions(+), 3 deletions(-)
Bastien Nocera ae2ea4f
Bastien Nocera ae2ea4f
diff --git a/src/api/python/speechd_config/config.py.in b/src/api/python/speechd_config/config.py.in
Bastien Nocera ae2ea4f
index ccf8803..e8393e5 100644
Bastien Nocera ae2ea4f
--- a/src/api/python/speechd_config/config.py.in
Bastien Nocera ae2ea4f
+++ b/src/api/python/speechd_config/config.py.in
Bastien Nocera ae2ea4f
@@ -30,8 +30,6 @@ import socket
Bastien Nocera ae2ea4f
 import sys
Bastien Nocera ae2ea4f
 import time
Bastien Nocera ae2ea4f
 
Bastien Nocera ae2ea4f
-from xdg import BaseDirectory
Bastien Nocera ae2ea4f
-
Bastien Nocera ae2ea4f
 # Locale/gettext configuration
Bastien Nocera ae2ea4f
 
Bastien Nocera ae2ea4f
 locale.setlocale(locale.LC_ALL, '')
Bastien Nocera ae2ea4f
@@ -167,7 +165,16 @@ class Tests:
Bastien Nocera ae2ea4f
 
Bastien Nocera ae2ea4f
     def user_conf_dir(self):
Bastien Nocera ae2ea4f
         """Return user configuration directory"""
Bastien Nocera ae2ea4f
-        return os.path.join(BaseDirectory.xdg_config_home, "speech-dispatcher")
Bastien Nocera ae2ea4f
+        config_dir = os.environ['XDG_CONFIG_HOME']
Bastien Nocera ae2ea4f
+        if not config_dir:
Bastien Nocera ae2ea4f
+            home_dir = os.environ['HOME']
Bastien Nocera ae2ea4f
+            if home_dir:
Bastien Nocera ae2ea4f
+                config_dir = os.path.join(home_dir, ".config")
Bastien Nocera ae2ea4f
+            else:
Bastien Nocera ae2ea4f
+                tmpdir = os.environ['TMPDIR'] or "/tmp/"
Bastien Nocera ae2ea4f
+                config_dir = os.path.join(tmpdir, os.getlogin(), ".config")
Bastien Nocera ae2ea4f
+
Bastien Nocera ae2ea4f
+        return os.path.join(config_dir, "speech-dispatcher")
Bastien Nocera ae2ea4f
 
Bastien Nocera ae2ea4f
     def system_conf_dir(self):
Bastien Nocera ae2ea4f
         """Determine system configuration directory"""
Bastien Nocera ae2ea4f
-- 
Bastien Nocera ae2ea4f
2.17.1
Bastien Nocera ae2ea4f