Now that legacy/trac#12967 (moved) is fixed, we should decide on how we want to make use of a multi-lingual Tor Browser. For the hardened series we just ship one build with all locales. We could do that for the alpha and the release series as well but maybe there is a smarter way to strike the balance between usability (downloading just the localized bundle I want) and resource scarcity (hosting all the localized bundles on our infrastructure).
I assume the advantage of shipping packages for each locale is the smaller download size. But the impact of including many locales is not too high. Here is some data from some alpha builds I made yesterday:
"ALL" package with 15 language packs:
67M tor-browser-linux64-5.5a3_ALL.tar.xz
82M tor-browser-linux64-5.5a3_ALL.mar
The size increase over a locale-specific package is about 4MB for the .tar.gz files and about 6MB for the complete MAR files. That does not seem bad at all. Should we just switch to the "ALL" package? Or are we planning to increase the number of Firefox language packs we ship?
We can greatly reduce the footprint on the web server and mirrors by producing multi-locale packages.
If you go for "ALL" bundles only, could you please consider adding web redirects from language specific links to to "ALL"? At least from "en-US" to "ALL"? This would help not breaking TBB downloaders.
Great task! Solve all Localization problems in one ticket!
It is still being solved by IT industry for now ;)
But due to the security nature of the project there are some key moments that make a solution more definite:
Tor Browser emulates some "common" browser to the web, and it's better for it to handle all locale-specific features of the web (not only language), because it is being built potentially for everyone (or not?).
Fingerprinting problem leads project to bundle in future (?) Unicode fonts with it to be OS-independent (a lot of megabytes each).
Best UI is MUI that can switch on the fly and has "same as system" option.
Localized versions (Mozilla style) are needed anyways if you want people that know only one language to use it. Localized site, localized installer, localized app - no "select language" dialogs (in English!). MUI installer with OS language detection might be used.
To reduce size TBB can download LPKs (xpi) from your site when user switches language in UI (and can restart automatically to apply), but users in restricted locations cannot switch this way.
Hope that differences in UI will not be exposed to the web - it's the main concern.
I was talking with arthuredelstein about this, he said the plan is to start adding a couple of completed languages each release starting with TB8, until all the completed languages are available on the download page
My 2cts from the PoV of the Tails ISO build system: currently we download all tarballs because we need all langpacks; it would be awesome if we could instead download a single, multi-lingual tarball. Any incremental change in this direction is good for us :)