Summary: | terminals do not display lithuanian letters when session loaded "startx" | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Motiejus Jakštys <desired.mta> |
Component: | [OLD] Unspecified | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
Status: | RESOLVED TEST-REQUEST | ||
Severity: | normal | CC: | czajernia, desired.mta, dieter, pchrist |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
manually modified /etc/profile after etc-update
output of sh -c "set && env" in a working-letter terminal output of sh -c "set && env" in a NON-working-letter terminal |
Description
Motiejus Jakštys
2010-09-30 00:02:11 UTC
Created attachment 249011 [details]
manually modified /etc/profile after etc-update
Some things manually tuned, I suspect there can be problems with it's interpretation (locale settings, etc), although source /etc/profile runs fine.
Created attachment 249013 [details]
output of sh -c "set && env" in a working-letter terminal
Created attachment 249015 [details]
output of sh -c "set && env" in a NON-working-letter terminal
Found how to fix it. Startx was initiated like this from the initscripts: /bin/su motiejus -l -c '/usr/bin/startx >/dev/null 2>&1 &' removing the '-l' switch fixes the situation. If anyone knows why, I would be glad to know... Why was this marked as resolved? The only thing we know is how to work around the issue, and we don't even know how or why the workaround works. FWIW I have a similar issue on Arch Linux, where the initscripts generate this file: $ cat /etc/profile.d/locale.sh export LANG=en_US.UTF-8 if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\033%%G"; fi which is then supposedly sourced by the login shell. I found out that this did not happen because of how I start my session, the good news is, I find a slightly different workaround then the one already mentioned. The key is to launch `bash -l`, so in inittab: #x:5:once:/bin/su dieter -l -c '/usr/bin/startx >/dev/null 2>&1' # doesn't set locale/LANG properly #x:5:once:/bin/su dieter -l -c '/bin/bash -c "/usr/bin/startx >/dev/null 2>&1"' # doesn't set locale/LANG properly x:5:once:/bin/su dieter -l -c '/bin/bash -l -c "/usr/bin/startx >/dev/null 2>&1"' # sets locale/LANG properly You are right. A good explanation would be nice here. Thanks for additional info. Why was it reopened? It looks like some kind of support problem with a custom configuration - it would be nice to have this on the forums as "RESOLVED" but unless someone points out how the /default/ configuration goes wrong (and what the fix is), I can't really assign this bug report. (In reply to comment #5) > Why was this marked as resolved? > The only thing we know is how to work around the issue, and we don't even know > how or why the workaround works. > It was resolved because the original reporter marked it as resolved fixed. Our official localization guide is here: http://www.gentoo.org/doc/en/guide-localization.xml Please, tweak your configuration following these instructions and you may solve this. If you still have issues, reopen only if you have submitted more information, such as "emerge --info", locale, "emerge -pv openbox" and if it happens with all terminals(also if it happens with other window managers, xorg version) etc. and *only* if you are absolutely certain that this is a real bug and not a misconfiguration of your side. I resolve this as TEST-REQUEST. ps: the -l flags in su and bash, provide an environment similar what the user whould have if he/she had login directly, so check your bashrc s and your /etc/profile for changes you've already done and affect that. |