From a4132ee58bdb6ab459bbea2dad64d040b4d233a9 Mon Sep 17 00:00:00 2001 From: Yann Leboulanger Date: Mon, 5 Jan 2009 15:12:19 +0000 Subject: [PATCH] ability to use adtadir environment variable to set data directory --- scripts/gajim-remote.in | 2 +- scripts/gajim.in | 2 +- src/common/configpaths.py | 7 ++++++- src/roster_window.py | 8 ++++---- 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/scripts/gajim-remote.in b/scripts/gajim-remote.in index 10268dbd2..7f90b2f7a 100644 --- a/scripts/gajim-remote.in +++ b/scripts/gajim-remote.in @@ -24,7 +24,7 @@ if test $(id -u) -eq 0; then exit 1 fi -datadir=@DATADIR@ +export datadir=@DATADIR@ PYTHON_EXEC=@PYTHON@ cd ${datadir}/gajim/src diff --git a/scripts/gajim.in b/scripts/gajim.in index 619e4dc5e..7858e0718 100644 --- a/scripts/gajim.in +++ b/scripts/gajim.in @@ -26,7 +26,7 @@ if test $(id -u) -eq 0; then exit 1 fi -datadir=@DATADIR@ +export datadir=@DATADIR@ PYTHON_EXEC=@PYTHON@ cd ${datadir}/gajim/src diff --git a/src/common/configpaths.py b/src/common/configpaths.py index 5fd30de24..9f7285635 100644 --- a/src/common/configpaths.py +++ b/src/common/configpaths.py @@ -114,7 +114,12 @@ class ConfigPaths: for n, p in zip(k, v): self.add_from_root(n, p) - self.add('DATA', os.path.join(u'..', windowsify(u'data'))) + datadir = '' + if u'datadir' in os.environ: + datadir = fse(os.environ[u'datadir']) + if not datadir: + datadir = u'..' + self.add('DATA', os.path.join(datadir, windowsify(u'data'))) self.add('HOME', fse(os.path.expanduser('~'))) self.add('TMP', fse(tempfile.gettempdir())) diff --git a/src/roster_window.py b/src/roster_window.py index a6907e638..8416ba56d 100644 --- a/src/roster_window.py +++ b/src/roster_window.py @@ -999,9 +999,9 @@ class RosterWindow: if gajim.config.get('show_tunes_in_roster') \ and ('artist' in gajim.connections[account].tune \ or 'title' in gajim.connections[account].tune): + path = os.path.join(gajim.DATA_DIR, 'emoticons', 'static', 'music.png') self.model[child_iter][C_TUNE_PIXBUF] = \ - gtk.gdk.pixbuf_new_from_file( - '../data/emoticons/static/music.png') + gtk.gdk.pixbuf_new_from_file(path) else: self.model[child_iter][C_TUNE_PIXBUF] = None @@ -1262,8 +1262,8 @@ class RosterWindow: jid = jid.decode('utf-8') contact = gajim.contacts.get_contact(account, jid) if 'artist' in contact.tune or 'title' in contact.tune: - pixbuf = gtk.gdk.pixbuf_new_from_file( - '../data/emoticons/static/music.png') + path = os.path.join(gajim.DATA_DIR, 'emoticons', 'static', 'music.png') + pixbuf = gtk.gdk.pixbuf_new_from_file(path) else: pixbuf = None for child_iter in iters: