nxclient / locale passing
So, I achieved victory on getting the compose key to work in the NX session. On to get a proper English language setting on our Terminal Server.
The configuration suffers from two problems:
(1) /etc/environment had values set (LANG=nl_NL.UTF-8 and
LANGUAGE=nl_NL:nl). (2) nxssh does not pass the LANG/LC_* environment
variables.
If I were to remove the /etc/environment variables and configure
everything like in a previous post of
mine, everyone gets the
POSIX locale (nxssh doesn’t pass anything). That’s not good. I can’t
find a way to get nxssh(1)
to send the needed environment, so we’ll
have to look elsewhere.
The fix: configure sshd(1)
on the server to
PermitUserEnvironment yes
and create a custom ~/.ssh/environment
in
my homedir on the server with the following settings:
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_PAPER=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
My environment gets loaded after the global environment, so I get my custom locale. At the same time I haven’t broken it for everyone else. (Observe that the PermitUserEnvironment can have security implications in some cases.)