Bug 443408
Summary: | Fedora 9 Preview Live installer always display messages in English | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Kazutoshi Morioka <morioka> |
Component: | anaconda | Assignee: | Jeremy Katz <katzj> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | low | Docs Contact: | |
Priority: | low | ||
Version: | rawhide | CC: | rstrode, vpvainio |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | NeedsRetesting | ||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2008-04-30 18:40:33 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 235706 | ||
Attachments: |
Description
Kazutoshi Morioka
2008-04-21 13:02:01 UTC
Created attachment 303140 [details]
this is /tmp/anaconda.log
Created attachment 303142 [details]
/tmp/anaconda.log with --lang=ja.
I tried a command "liveinst --lang=ja", and got Japanese messages on the Live
installer.
Created attachment 303143 [details]
and this is messages on the terminal running liveinst --lang=ja
I think this caused by gdm's LANG value "ja_JP.utf8" instead of "ja_JP.UTF-8". Another languages could have same problem, i.e. "en_US.utf8" instead of "en_US.UTF-8". This problem exists not only for Live CD, but also installed system's gdm. Created attachment 303187 [details]
This one-liner for gdm may fix this problem.
The gdm-simple-greeter collect locale name by reading directories under
/usr/share/locale. And check if it's UTF-8 by setlocale(LC_CTYPE, language) and
nl_langinfo(CODESET). But for most locale name without codeset name,
nl_langinfo(CODESET) returns non-UTF8 codeset; for example, "EUC-JP" for
"ja_JP", "ISO-8859-1" for "en_US". In this case, gdm-simple-greeter append
".utf8" to locale name. This ".utf8" is hard-coded into gdm-languages.c.
Changing this ".utf8" to ".UTF-8" may fix this problem.
GDM collects locale names by reading them from /usr/lib/locale/locale-archive. It then filters that list by stripping: 1) locales that don't have translations in /usr/share/locale 2) locales that aren't UTF-8 3) locales that don't have font coverage It has a fallback mode where if it can't get a list of locales from /usr/lib/locale/locale-archive then it will try to guess available locales from /usr/share/locale. This won't work very well, but isn't something Fedora users will ever encounter. locale codesets should be normalized such that all dashes and underscores are removed and all letters are the same case. I suspect anaconda isn't doing this. In some ways ".utf8" is more canonical than ".UTF-8" because .utf8 is the format you get with locale -a OK, I understood that changing gdm's locale name to fix this problem is wrong. Thank you. *sigh* Of course, it used to be .UTF-8 and the change is after beta. But put something into anaconda so that it will work with either *** Bug 443845 has been marked as a duplicate of this bug. *** Confirmed with today's rawhide. |