view 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 source

#!/usr/bin/python
# -*- coding: utf-8 -*-

# SàT: a XMPP client
# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Jérôme Poisson (goffi@goffi.org)

# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.

# 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'
    APP_NAME_SHORT = u'SàT'
    APP_NAME_FULL = u'%s (%s)' % (APP_NAME_SHORT, APP_NAME)
    APP_VERSION = u'0.4.1D' # Please add 'D' at the end for dev versions

    DEFAULT_CONFIG = {
        '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"
    SAVEFILE_DATABASE = "sat.db"
    PROF_KEY_NONE = '@NONE@'
    PROF_KEY_DEFAULT = '@DEFAULT@'
    IQ_SET = '/iq[@type="set"]'

    # names of widely used plugins
    TEXT_CMDS = 'TEXT-COMMANDS'