| Summary: | /etc/sysconfig/i18n settings may not applied to X sessions | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | arch harris <service> |
| Component: | initscripts | Assignee: | Lukáš Nykrýn <lnykryn> |
| Status: | CLOSED NOTABUG | QA Contact: | qe-baseos-daemons |
| Severity: | low | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.1 | CC: | notting |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2012-08-02 08:51:58 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
The language setting from GDM comes from the user choice, so it should take precedence over the stored setting. Why would you want to only set one setting and leave the others changeable? Since RHEL 6.2 External Beta has begun, and this bug remains
unresolved, it has been rejected as it is not proposed as
exception or blocker.
Red Hat invites you to ask your support representative to
propose this request, if appropriate and relevant, in the
next release of Red Hat Enterprise Linux.
|
Description of problem: /etc/sysconfig/i18n variables do not get set properly in X sessions. Version-Release number of selected component (if applicable): How reproducible: Everytime Steps to Reproduce: 1.Set LC_COLLATE in /etc/sysconfig/i18n (but nowhere else) 2.Login to an X screen. 3. Execute echo $LC_COLLATE. Actual results: LC_COLLATE is not set to the i18n value Expected results: It should be set to the i18n value. Additional info: The /etc/profile.d/lang.sh script used to contain this: sourced=0 for langfile in /etc/sysconfig/i18n $HOME/.i18n ; do [ -f $langfile ] && . $langfile && sourced=1 done but has been changed to sourced=0 if [ -n "$LANG" ]; then saved_lang="$LANG" [ -f "$HOME/.i18n" ] && . "$HOME/.i18n" && sourced=1 LANG="$saved_lang" unset saved_lang else for langfile in /etc/sysconfig/i18n "$HOME/.i18n" ; do [ -f $langfile ] && . $langfile && sourced=1 done fi I believe GDM defaults LANG to "en_US", so the true part of the "if" executes which never checks for /etc/sysconfig/i18n so /etc/sysconfig/i18n never executes. I believe there is also a second bug in how this works. If GDM is setting the default LANG to "en_us" and a user overrides that with a setting in ~/.i18n, shouldn't the users setting for LANG be the one in effect. But with the revised "lang.sh" the user's setting is overwritten by the previous setting.