FS#57244 - [firefox-developer-edition][firefox-developer-edition-i18n] language packs do not work
Attached to Project:
Community Packages
Opened by nl6720 (nl6720) - Saturday, 27 January 2018, 11:41 GMT
Last edited by Andrew Crerar (andrewSC) - Wednesday, 31 January 2018, 13:11 GMT
Opened by nl6720 (nl6720) - Saturday, 27 January 2018, 11:41 GMT
Last edited by Andrew Crerar (andrewSC) - Wednesday, 31 January 2018, 13:11 GMT
|
Details
Description:
Since version 59.0b2-1 firefox-developer-edition interface in not localized. The language pack is installed and shown in about:addons, but it has no effect. Additional info: * package version(s) * config and/or log files etc. firefox-developer-edition 59.0b4-1 firefox-developer-edition-i18n-* 59.0b4-1 Steps to reproduce: install a language pack change 'intl.locale.matchOS' to 'false' and set 'general.useragent.locale' to the installed locale ( https://support.mozilla.org/en-US/kb/use-firefox-interface-other-languages-language-pack ) restart firefox-developer-edition |
This task depends upon
You can find the code change here: https://hg.mozilla.org/mozilla-central/rev/8d88b85d93be
Basically `general.useragent.locale` has been depreciated in favor of `intl.locale.requested`.
If you need to change the interface locale to one that is different than the host OS then you'll need to manually add `intl.locale.requested` in the about:config with the value of the lang. code (e.g. fr for french, etc.).
Let me know if this works on you machine (I've tested locally and it does on mine) so I can close this out.
And even with firefox-developer-edition-i18n-eo the UI wasn't in Esperanto.
After adding `intl.locale.requested` with the value `eo` it worked as expected.
But it doesn't match something you said.
«If you need to change the interface locale to one that is different than the host OS»
Then I shouldn't need to touch about:config for that.
As the rest of my system is in eo.
Can you confirm whether that's the expected behavior or not? And if it's in the scope of this bug?
== Additional info ==
=== locale infos ===
~ ❯❯❯ locale
LANG=eo.UTF-8
LC_CTYPE=eo.UTF-8
LC_NUMERIC=eo.UTF-8
LC_TIME=eo.UTF-8
LC_COLLATE=eo.UTF-8
LC_MONETARY=eo.UTF-8
LC_MESSAGES=eo.UTF-8
LC_PAPER=eo.UTF-8
LC_NAME=eo.UTF-8
LC_ADDRESS=eo.UTF-8
LC_TELEPHONE=eo.UTF-8
LC_MEASUREMENT=eo.UTF-8
LC_IDENTIFICATION=eo.UTF-8
LC_ALL=
~ ❯❯❯ locale -a ✘ 1
C
en_DK.utf8
en_US.utf8
eo
eo.utf8
fr_FR.utf8
POSIX
Correct. This is the expected behavior. When you installed `firefox-developer-edition-i18n-eo` you installed the Esperanto language pack for `firefox-developer-edition`. As indicated in the details section of the ticket, there is an additional step of setting the browser itself to use that language pack.
> After adding `intl.locale.requested` with the value `eo` it worked as expected.
Excellent, glad we've at least addressed the fundamental problem :)
> Can you confirm whether that's the expected behavior or not? And if it's in the scope of this bug?
I certainly can look into it. Let me test some things locally and get back to you.
If I set 'intl.locale.requested' to my locale it works, so the issue was that the pref to set locale changed.
> As indicated in the details section of the ticket, there is an additional step of setting the browser itself to use that language pack.
With 'intl.locale.matchOS' set to 'true' (which is the default) and no 'intl.locale.requested' shouldn't it work without any additional steps? It works that way for the "firefox" package and its locales.
The commit message mentions these possible values:
'intl.locale.requested' NOT SET: default locale (no language pack)
'intl.locale.requested' = '' (EMPTY STRING): host locale if the langauge pack is installed.
'intl.locale.requested' = 'de-DE' (BCP47 tag): specified language
Automatic selection works for me with the empty string.
Only values 'intl.locale.requested' = pl either 'intl.locale.requested' = pl-PL
1) The change to using "intl.locale.requested" was introduced in 59.0a1 (as per the commit that I linked earlier). Since the main firefox is not on 59.x yet, the "intl.locale.matchOS" and "general.useragent.locale" preferences still work as expected for it.
2) The commit I linked to explicitly stated they were removing both the "intl.locale.matchOS" and "general.useragent.locale" preferences in favor of having the single, new preference, "intl.locale.requested".
3) After some additional testing I'm going to bump the pkgrel for firefox-developer-edition 59.0b5 sometime today to have the "intl.locale.requested" pref set to blank (and remove the "intl.locale.matchOS" pref), which is semantically equivalent to having the "intl.locale.matchOS" set to true and allowing for the browser to use the system locale. You're still required to have the langpack for your locale installed, but you shouldn't have to explicitly do anything in about:config to get the language change in the interface.
NOTE: I have been experimenting with different setups to try and understand why/how ff 58.x, without a langpack installed, is able to translate *some* of it's interface but ff-dev-edition 59.x can't (yet?). Maybe I missed a detail in the commit, maybe there's a new pref I missed, maybe they removed that feature/support in 59.x... I'm not sure but I'm still working that out.
Tried with 59.0b5-1 → english
Tried with 59.0b5-2 → esperanto
Thanks a lot, it's great to have official packages now! :)
Piotr: I haven't forgotten about you. It seems you have a "fix" in place but the default empty string isn't working for you. If you want to explore this further feel free to contact me on IRC at andrewSC or via email (which can be found at: https://www.archlinux.org/people/trusted-users/#andrewSC).
I'm still working out what's going on between 58.x and 59.x in terms of the partial translation without langpacks... I also consider the concern outside the scope of the original ticket so I'm going to close it and continue my digging locally. If anyone has any further issues regarding locale/langpacks please create a new ticket and I'll address it promptly.