60 lines
1.5 KiB
Python
60 lines
1.5 KiB
Python
import sys
|
|
import os
|
|
import getopt
|
|
|
|
use_x = True
|
|
shortargs = 'hnv:'
|
|
longargs = 'help no-x verbose='
|
|
opts, args = getopt.getopt(sys.argv[1:], shortargs, longargs.split())
|
|
for o, a in opts:
|
|
if o in ('-n', '--no-x'):
|
|
use_x = False
|
|
|
|
gajim_root = os.path.join(os.path.abspath(os.path.dirname(__file__)), '../..')
|
|
|
|
# look for modules in the CWD, then gajim/test/lib, then gajim/gajim,
|
|
# then everywhere else
|
|
sys.path.insert(1, gajim_root)
|
|
sys.path.insert(1, gajim_root + '/test/lib')
|
|
|
|
# a temporary version of ~/.gajim for testing
|
|
configdir = gajim_root + '/test/tmp'
|
|
# plugins config dir
|
|
pluginsconfigdir = configdir + '/pluginsconfig'
|
|
|
|
# define _ for i18n
|
|
import builtins
|
|
builtins._ = lambda x: x
|
|
|
|
from gajim.common.contacts import LegacyContactsAPI
|
|
|
|
def setup_env():
|
|
# wipe config directory
|
|
if os.path.isdir(configdir):
|
|
import shutil
|
|
shutil.rmtree(configdir)
|
|
|
|
os.mkdir(configdir)
|
|
os.mkdir(pluginsconfigdir)
|
|
|
|
from gajim.common import configpaths
|
|
configpaths.set_config_root(configdir)
|
|
configpaths.init()
|
|
|
|
# for some reason gajim.common.app needs to be imported before xmpppy?
|
|
from gajim.common import app
|
|
|
|
import logging
|
|
logging.basicConfig()
|
|
|
|
configpaths.override_path('DATA', gajim_root + '/gajim/data')
|
|
app.use_x = use_x
|
|
app.contacts = LegacyContactsAPI()
|
|
app.connections = {}
|
|
|
|
if use_x:
|
|
from gajim import gtkgui_helpers
|
|
gtkgui_helpers.GUI_DIR = gajim_root + '/gajim/data/gui'
|
|
from gajim.gajim import GajimApplication
|
|
app.app = GajimApplication()
|