Skip to content

Remove workaround for localized Tor Browser search plugins

(The workaround (enable_localized_searchplugins(), in /usr/loca/bin/tor-browser was added for #8036 (closed).)

Some background: we install the Tor Browser to /usr/local/lib/tor-browser ($TB_INSTALL from now on) and start it with /usr/loca/bin/tor-browser (it sources /usr/local/lib/tails-shell-library/tor-browser.sh which is key in how we use Tor Browser’s firefox binary). In $TB_INSTALL/distribution/searchplugins/locale we add some localized search plugins, namely those from Debian’s iceweasel localization packages).

However, the localized search plugins are not used (if the enable_localized_searchplugins() workaround is disabled). E.g. LANG=de_DE.UTF-8 tor-browser results in a Tor Browser with the search plugins from $TB_INSTALL/browser/searchplugins (i.e. Tor Browser’s default) only.

If I install strace (and echo 0 > /proc/sys/kernel/yama/ptrace_scope to make it available for non-root users) and run LANG=de_DE.UTF-8 strace tor-browser I can see that it access:es $TB_INSTALL/distribution/searchplugins/locale/de successfully, but that’s it, it doesn’t use the contents. I got the idea that $TB_INSTALL/browser/searchplugins perhaps overrides the usage of $TB_INSTALL/distribution/searchplugins, so I moved them into $TB_INSTALL/distribution/searchplugins/common, but that gives the same result again. Removing both results in no search plugins.

So, how can we make our Tor Browser use our localized search plugins without the ugly enable_localized_searchplugins() workaround?

Feature Branch: bugfix/9146-remove-localized-search-plugin-workaround

Related issues

Original created by @anonym on 9146 (Redmine)

Edited by intrigeri
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information