[Pkg-xfce-devel] Bug#735265: Bug#735251: lightdm: user locale tweaks are clobbered by non-default locale

Yves-Alexis Perez corsac at debian.org
Thu Jan 16 09:14:43 UTC 2014

Hash: SHA512

On Thu, Jan 16, 2014 at 09:28:32AM +0900, Olaf Meeuwissen wrote:
> Did just that.  All locale variables, including LANG, are as per tweaks
> in ~/.xsessionrc right up to the `exec $STARTUP` in the last Xsession.d
> snippet.  The locale output in an Xfce terminal or XTerm shows the LANG
> value that is in ~/.dmrc.  That is, not whatever LANG value was set in
> ~/.xsessionrc.

Ok, so in any case, lightdm is not involved here anymore.
> I also tried turning off all autostarted applications (in the Session
> and Startup configuration utility) but LANG *still* gets clobbered.  At
> this point, no applications started automatically, Xfsettingsd is still
> started despite not being configured to do so.  My hunch is that either
> that or one of xfwm4 and xfdesktop export LANG based on what is set in
> ~/.dmrc (or /var/cache/lightdm/dmrc/$USER.dmrc).

No, that's completely unrelated. .dmrc is really only related to the DM.
> > But in any case, setting LANG in .xsessionrc doesn't make much sense
> > imho.
> Care to explain why?  For me the correct LANG value is essential to get
> my input method editor to work correctly (or so it seems).
> # Of course, setting it in ~/.dmrc works for me but I'd like to know why
> # I should set it there too.

The way I see it (as I already explained), you select the wanted locale
(LANG) in the greeter language selector (and it gets saved to .dmrc for
later). Then, if you need to “correct” (for LC_MESSAGES for example) you
can do it un .xsessionrc.

Now, nobody forces you to do that way, you can do whatever you want in
.xsessionrc and completely ignore the greeter.

> See above.  It looks like the LANG value is clobbered later, somewhere
> in $STARTUP, which in my case is
>   /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch x-session-manager

Then you know where to start looking. But as I said to Simon, that's
pretty much outside my perimeter (well unless it happens in
xfce4-session, but that's unrelated to lightdm anyway, and I need to
pick my Xfce hat).

With my Xfce hat on, that reminds me of something worth checking. I
think xfce4-session tries to respect GDM_LANG and overwrites LANG with
it. LightDM doesn't set GDM_LANG (that's a gdm thing) but I think Simon
did set it manually at some point, which might then have this side
effect. Maybe check that's not your case?

> I know nobody forces me to do so, but I parse the above as "if you want
> to modify your locale settings or other environment variables, your
> ~/.xsessionrc is the place to do so".  Hence, I did and it didn't work
> as expected.  Maybe there should be some documentation that (at least)
> LANG should be set elsewhere because $STARTUP may override it?

Well, anything can modify LANG its the child processes anyway, there's
nothing the parents can do about that.

In any case, I'm again just confused on all those bugs, but my feeling
is just that there's no bug in lightdm/lightdm-gtk-greeter here, but
later in the startup process, so those bugs should either be reassigned
or just closed, in order top stop confusion.

- -- 
Yves-Alexis Perez
Version: GnuPG v2.0.22 (GNU/Linux)


More information about the Pkg-xfce-devel mailing list