diff src/core/constants.py @ 930:cbf4122baae7

core, memory: use XDG recommended paths as the defaults for the config and local directories
author souliane <souliane@mailoo.org>
date Sun, 23 Mar 2014 22:43:43 +0100
parents d609581bf74a
children 598fc223cf59
line wrap: on
line diff
--- a/src/core/constants.py	Mon Mar 24 15:18:53 2014 +0100
+++ b/src/core/constants.py	Sun Mar 23 22:43:43 2014 +0100
@@ -17,6 +17,9 @@
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import os.path
+from xdg import BaseDirectory
+
 
 class Const(object):
     APP_NAME = u'Salut à Toi'
@@ -25,10 +28,23 @@
     APP_VERSION = u'0.4.1D' # Please add 'D' at the end for dev versions
 
     DEFAULT_CONFIG = {
-        'local_dir': '~/.sat',
         'media_dir': '/usr/share/sat/media',
+        'pid_dir': '/tmp',
+        'log_dir': BaseDirectory.save_data_path('sat'),
     }
 
+    # XXX: tmp update code, will be removed in the future
+    # When you remove this, please add that in DEFAULT_CONFIG:
+    # 'local_dir': BaseDirectory.save_data_path('sat'),
+    # and also remove sat.memory.memory.Memory.__fixLocalDir
+    DEFAULT_LOCAL_DIR = BaseDirectory.save_data_path('sat')
+
+    # List of the configuration filenames sorted by ascending priority
+    CONFIG_FILES = [(os.path.expanduser(path) + 'sat.conf') for path in \
+                    ['/etc/', '~/', '~/.', '', '.'] + \
+                    ['%s/' % path for path in list(BaseDirectory.load_config_paths('sat'))]
+                    ]
+
     NO_SECURITY_LIMIT = -1
     INDIVIDUAL = "individual"
     GENERAL = "general"