Comment 30 for bug 663776

Revision history for this message
Gunnar Hjalmarsson (gunnarhj) wrote :

Haven't tested light-dm (yet), so my comments below are based on gdm
only. And to prevent any misunderstandings: The unity 3d issue remains
to be solved.

On 2011-05-20 02:51, Kyle Nitzsche wrote:
> I would expect that ibus-daemon starts or not depending on the
> user's locale selection at (g)dm time.

Yes, that's what happens.

As a side remark, Language Support is the principal tool for selecting
languages and locales. But of course, if you set a language there, that
language is preselected on the login screen next time you log in, and
accepting that setting by doing nothing is also a choice...

> That should set the LC_MESSAGES env variable.

Confirmed. (A tiny detail, though: if LC_MESSAGES happens to equal LANG,
the LC_MESSAGES variable is not set explicitly. But that doesn't matter,
since LC_MESSAGES inherits the LANG value in those cases.)

> So, If the user selects a locale that implicates input methods, then
> $LC_MESSAGES should reflect that, and 'ps aux | grep ibus' should
> show ibus-daemon is running (and others).

Confirmed.

> Can people test this?

Indeed. Since the actual code change is very small, the easiest way is
to edit /etc/X11/Xsession.d/80im-switch as I mentioned in my last
comment. This is what the diff looks like:

--- old/80im-switch 2009-12-06 14:16:40 +0100
+++ /etc/X11/Xsession.d/80im-switch 2011-05-19 08:20:24 +0200
@@ -21,7 +21,7 @@
 _QT_IM_MODULE=$QT_IM_MODULE

 # $LNG is locale <language>_<region> without .<encoding> and .<encoding>@EURO
-LNG=${LC_ALL:-${LC_CTYPE:-${LANG}}}
+LNG=${LC_ALL:-${LC_MESSAGES:-${LANG}}}
 LNG=${LNG%@*}
 LNG=${LNG%.*}

> Perhaps the larger point is that a single system should support
> multiple users/accounts, some of which require input methods, and
> some of which do not, depending on their language (locale). So the
> ibus-daemon should start at session start up time (or not) depending
> on the user's *session* language.

Even if I haven't tested that either, I can't see a reason why it
shouldn't work just like that.