Mercurial > libervia-backend
annotate src/core/constants.py @ 1003:52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
author | souliane <souliane@mailoo.org> |
---|---|
date | Wed, 30 Apr 2014 19:54:21 +0200 |
parents | eb3601ff73bc |
children | 191f440d11b4 |
rev | line source |
---|---|
914
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
1 #!/usr/bin/python |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
2 # -*- coding: utf-8 -*- |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
3 |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
4 # SàT: a XMPP client |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
5 # Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Jérôme Poisson (goffi@goffi.org) |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
6 |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
7 # This program is free software: you can redistribute it and/or modify |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
8 # it under the terms of the GNU Affero General Public License as published by |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
9 # the Free Software Foundation, either version 3 of the License, or |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
10 # (at your option) any later version. |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
11 |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
12 # This program is distributed in the hope that it will be useful, |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
15 # GNU Affero General Public License for more details. |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
16 |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
17 # You should have received a copy of the GNU Affero General Public License |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
18 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
19 |
1003
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
20 from os.path import expanduser, abspath |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
21 try: |
1001 | 22 import __pyjamas__ # do not import xdg when building Libervia |
23 BaseDirectory = None | |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
24 except ImportError: |
1001 | 25 from xdg import BaseDirectory |
930
cbf4122baae7
core, memory: use XDG recommended paths as the defaults for the config and local directories
souliane <souliane@mailoo.org>
parents:
926
diff
changeset
|
26 |
914
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
27 |
1a3ba959f0ab
core (memory): moved Params in its own module + introduced a new core/constants module, and moved some constants there
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
28 class Const(object): |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
29 |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
30 ## Application ## |
923 | 31 APP_NAME = u'Salut à Toi' |
32 APP_NAME_SHORT = u'SàT' | |
1003
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
33 APP_NAME_FILE = u'sat' |
923 | 34 APP_NAME_FULL = u'%s (%s)' % (APP_NAME_SHORT, APP_NAME) |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
35 APP_VERSION = u'0.4.1D' # Please add 'D' at the end for dev versions |
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
36 APP_URL = 'http://salut-a-toi.org' |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
37 |
994
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
38 |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
39 ## Parameters ## |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
40 NO_SECURITY_LIMIT = -1 |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
41 INDIVIDUAL = "individual" |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
42 GENERAL = "general" |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
43 |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
44 |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
45 ## Profile and entities ## |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
46 PROF_KEY_NONE = '@NONE@' |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
47 PROF_KEY_DEFAULT = '@DEFAULT@' |
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
48 ENTITY_ALL = '@ALL@' |
944
e1842ebcb2f3
core, plugin XEP-0115: discovery refactoring:
Goffi <goffi@goffi.org>
parents:
943
diff
changeset
|
49 ENTITY_LAST_RESOURCE = 'LAST_RESOURCE' |
e1842ebcb2f3
core, plugin XEP-0115: discovery refactoring:
Goffi <goffi@goffi.org>
parents:
943
diff
changeset
|
50 ENTITY_CAP_HASH = 'CAP_HASH' |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
51 |
994
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
52 |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
53 ## Configuration ## |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
54 if BaseDirectory: # skipped when imported from Libervia browser_side |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
55 |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
56 ## Configuration ## |
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
57 DEFAULT_CONFIG = { |
1003
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
58 'media_dir': '/usr/share/' + APP_NAME_FILE + '/media', |
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
59 'local_dir': BaseDirectory.save_data_path(APP_NAME_FILE), |
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
60 'pid_dir': '%(local_dir)s', |
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
61 'log_dir': '%(local_dir)s', |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
62 } |
923 | 63 |
967
242bd4fc654c
core, frontends (constants): frontends Const inheritates from core Const
souliane <souliane@mailoo.org>
parents:
944
diff
changeset
|
64 # List of the configuration filenames sorted by ascending priority |
1003
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
65 CONFIG_FILES = [abspath(expanduser(path) + APP_NAME_FILE + '.conf') for path in |
1001 | 66 ['/etc/', '~/', '~/.', '', '.'] + |
1003
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
67 ['%s/' % path for path in list(BaseDirectory.load_config_paths(APP_NAME_FILE))] |
994
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
68 ] |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
69 |
926
d609581bf74a
plugin text commands: refactoring, text now only contain main commands, and other plugin can add commands themselve:
Goffi <goffi@goffi.org>
parents:
923
diff
changeset
|
70 |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
71 ## Plugins ## |
926
d609581bf74a
plugin text commands: refactoring, text now only contain main commands, and other plugin can add commands themselve:
Goffi <goffi@goffi.org>
parents:
923
diff
changeset
|
72 # names of widely used plugins |
d609581bf74a
plugin text commands: refactoring, text now only contain main commands, and other plugin can add commands themselve:
Goffi <goffi@goffi.org>
parents:
923
diff
changeset
|
73 TEXT_CMDS = 'TEXT-COMMANDS' |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
74 |
994
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
75 |
991
05e02f8b7eb4
core: logging refactoring, first step:
Goffi <goffi@goffi.org>
parents:
990
diff
changeset
|
76 ## Logging ## |
05e02f8b7eb4
core: logging refactoring, first step:
Goffi <goffi@goffi.org>
parents:
990
diff
changeset
|
77 LOG_BACKEND_STANDARD = 'standard' |
05e02f8b7eb4
core: logging refactoring, first step:
Goffi <goffi@goffi.org>
parents:
990
diff
changeset
|
78 LOG_BACKEND_TWISTED = 'twisted' |
05e02f8b7eb4
core: logging refactoring, first step:
Goffi <goffi@goffi.org>
parents:
990
diff
changeset
|
79 LOG_BACKEND_BASIC = 'basic' |
05e02f8b7eb4
core: logging refactoring, first step:
Goffi <goffi@goffi.org>
parents:
990
diff
changeset
|
80 LOG_BASE_LOGGER = 'root' |
994
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
81 LOG_OPT_PREFIX = 'log_' |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
82 # (option_name, default_value) tuples |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
83 LOG_OPT_COLORS = ('colors', 'true') |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
84 LOG_OPT_LEVEL = ('level', 'info') |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
85 |
991
05e02f8b7eb4
core: logging refactoring, first step:
Goffi <goffi@goffi.org>
parents:
990
diff
changeset
|
86 |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
87 ## Misc ## |
1003
52ec79aa5bbe
memory: fixes the method fixLocalDir for pid_dir and log_dir to use local_dir as default
souliane <souliane@mailoo.org>
parents:
1001
diff
changeset
|
88 SAVEFILE_DATABASE = APP_NAME_FILE + ".db" |
942
598fc223cf59
core: more organisation in constants.py
Goffi <goffi@goffi.org>
parents:
930
diff
changeset
|
89 IQ_SET = '/iq[@type="set"]' |
994
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
90 ENV_PREFIX = 'SAT_' # Prefix used for environment variables |
652c01ca69b1
core (log): configuration and environment variables are now checked for log level and colors:
Goffi <goffi@goffi.org>
parents:
991
diff
changeset
|
91 |
990
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
92 |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
93 ## ANSI escape sequences ## |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
94 # XXX: used for logging |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
95 # XXX: there will be probably moved in a dedicated module in the future |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
96 ANSI_RESET = '\033[0m' |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
97 ANSI_NORMAL_WEIGHT = '\033[22m' |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
98 ANSI_FG_BLACK, ANSI_FG_RED, ANSI_FG_GREEN, ANSI_FG_YELLOW, ANSI_FG_BLUE, ANSI_FG_MAGENTA, ANSI_FG_CYAN, ANSI_FG_WHITE = ('\033[3%dm' % nb for nb in xrange(8)) |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
99 ANSI_BOLD = '\033[1m' |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
100 ANSI_BLINK = '\033[5m' |
f0e407709d8e
core (constants): added some basic ANSI escape codes
Goffi <goffi@goffi.org>
parents:
971
diff
changeset
|
101 ANSI_BLINK_OFF = '\033[25m' |