]> git.lizzy.rs Git - torbrowser-launcher.git/blobdiff - torbrowser_launcher/common.py
Merge branch 'develop' into expired_key
[torbrowser-launcher.git] / torbrowser_launcher / common.py
index 2cad29ff84f59589dd782f0d201771d3c5fd23b6..e7af753a4218ad7abc1fafe017badb8b4a5694da 100644 (file)
@@ -115,6 +115,14 @@ class Common(object):
             if self.language not in available_languages:
                 self.language = "en-US"
 
+    # get value of environment variable, if it is not set return the default value
+    @staticmethod
+    def get_env(var_name, default_value):
+        value = os.getenv(var_name)
+        if not value:
+            value = default_value
+        return value
+
     # build all relevant paths
     def build_paths(self, tbb_version=None):
         homedir = os.getenv("HOME")
@@ -130,10 +138,10 @@ class Common(object):
         if not os.access(homedir, os.W_OK):
             self.set_gui("error", _("{0} is not writable").format(homedir), [], False)
 
-        tbb_config = "{0}/.config/torbrowser".format(homedir)
-        tbb_cache = "{0}/.cache/torbrowser".format(homedir)
-        tbb_local = "{0}/.local/share/torbrowser".format(homedir)
-        old_tbb_data = "{0}/.torbrowser".format(homedir)
+        tbb_config = '{0}/torbrowser'.format(self.get_env('XDG_CONFIG_HOME', '{0}/.config'.format(homedir)))
+        tbb_cache = '{0}/torbrowser'.format(self.get_env('XDG_CACHE_HOME', '{0}/.cache'.format(homedir)))
+        tbb_local = '{0}/torbrowser'.format(self.get_env('XDG_DATA_HOME', '{0}/.local/share'.format(homedir)))
+        old_tbb_data = '{0}/.torbrowser'.format(homedir)
 
         if tbb_version:
             # tarball filename