import gettext
import gpg
-SHARE = os.getenv('TBL_SHARE', sys.prefix+'/share/torbrowser-launcher')
+SHARE = os.getenv('TBL_SHARE', sys.prefix + '/share') + '/torbrowser-launcher'
gettext.install('torbrowser-launcher')
self.architecture = 'x86_64' if '64' in platform.architecture()[0] else 'i686'
# figure out the language
- available_languages = ['en-US', 'ar', 'de', 'es-ES', 'fa', 'fr', 'it', 'ko', 'nl', 'pl', 'pt-PT', 'ru', 'vi', 'zh-CN']
+ available_languages = ['ar', 'ca', 'da', 'de', 'en-US', 'es-ES', 'fa', 'fr', 'ga-IE', 'he', 'id', 'is', 'it', 'ja', 'ko', 'nb-NO', 'nl', 'pl', 'pt-BR', 'ru', 'sv-SE', 'tr', 'vi', 'zh-CN', 'zh-TW']
default_locale = locale.getlocale()[0]
if default_locale is None:
self.language = 'en-US'
'tbl_bin': sys.argv[0],
'icon_file': os.path.join(os.path.dirname(SHARE), 'pixmaps/torbrowser.png'),
'torproject_pem': os.path.join(SHARE, 'torproject.pem'),
- 'keyserver_ca': os.path.join(SHARE, 'sks-keyservers.netCA.pem'),
'signing_keys': {
'tor_browser_developers': os.path.join(SHARE, 'tor-browser-developers.asc')
},
else:
print('Refreshing local keyring...')
+ # Fetch key from wkd, as per https://support.torproject.org/tbb/how-to-verify-signature/
p = subprocess.Popen(['/usr/bin/gpg2', '--status-fd', '2',
'--homedir', self.paths['gnupg_homedir'],
- '--keyserver', 'hkps://hkps.pool.sks-keyservers.net',
- '--keyserver-options', 'ca-cert-file=' + self.paths['keyserver_ca']
- + ',include-revoked,no-honor-keyserver-url,no-honor-pka-record',
- '--refresh-keys'], stderr=subprocess.PIPE)
+ '--auto-key-locate', 'nodefault,wkd',
+ '--locate-keys', 'torbrowser@torproject.org'], stderr=subprocess.PIPE)
p.wait()
for output in p.stderr.readlines():