Bug 164311

Summary: kdm ignores language setting when booting
Product: [Unmaintained] kdm Reporter: Dmitriy Altuhov <dima>
Component: generalAssignee: kdm bugs tracker <kdm-bugs-null>
Status: RESOLVED UNMAINTAINED    
Severity: normal CC: andresbajotierra, caslav.ilic, duanedesign, fredscali, javierjc1982, melcbt-ubuntu, michalm, onyx, rdieter, vasyl.demin
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: code to let kdm using "lang=" var non US pcbsd
french kdm in a Xnest Windows inside KDE 4.1.3, get from login.conf
plain text modified kdm script

Description Dmitriy Altuhov 2008-06-17 17:27:55 UTC
Version:            (using KDE 4.0.5)
Installed from:    Ubuntu Packages

In the systemsettings - Advanced - Login
Manager I've set the langauage Russian (ru). In the
kdmrc I've got: 

...
Language=ru
...


The login manager kdm shows me the user list (because
of the setting: UseTheme=false), but every label on
the screen, buttons and combo-list is in English and
not in Russian, as I set (Language=ru).

In the syslog I see:

kdm_greet[5063]: Cannot set locale. Translations will not work.

But!
If I login in console and execute

sudo service kdm-kde4 restart

After that all in login windows translated to Russian!

Why after Ubuntu bootup I see English and after manual restart kdm-kde4 i see Russian?
Comment 1 Michał Małek 2008-08-10 21:42:37 UTC
I confirm that on KDE 4.1 (Archlinux). KDM displays English strings instead of Polish translation.

My configuration:
Language=pl
UseTheme=true

kdm.log says:
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols
>                   Ignoring extra symbols
Errors from xkbcomp are not fatal to the X server
kdmgreet(3808) KLocalePrivate::initEncoding: Cannot resolve system encoding, defaulting to ISO 8859-1. 
Comment 2 Cyril BUQUET 2009-01-05 11:35:41 UTC
Hello

Confirmed on kubuntu 8.10 kde with 4.1.3

You can see https://bugs.launchpad.net/ubuntu/+source/kdebase-workspace/+bug/298592
Comment 3 Fred Scali-West 2009-01-05 20:34:30 UTC
Hi,

I've had the same "kdm_greet..." error concerning locales & translations with the last PC-BSD & KDE 4.1.3, even if here the language of the system (chosen at install time) is working well in French (fr_FR.UTF-8).

But it's now gone after modifying the file kdmrc as follow:

# Greeter config for all displays
[X-*-Greeter]
...
Language=fr_FR.UTF-8

and the login screen is now also in French!

Have you tried to put in kdmrc pl_PL.UTF-8 and ru_RU.UTF-8 because I think it could be that Kubuntu uses UTF-8 charset by default?

Good luck.
FSW
Comment 4 Cyril BUQUET 2009-01-05 22:32:43 UTC
Hello,

I confirm that this solution work for me
(kubuntu 8.10 - kde 4.1.3 )

Thanks
Comment 5 Michał Małek 2009-01-05 23:54:13 UTC
I can confirm that both solutions:
Language=pl_PL.UTF-8
or
Language=pl_PL.utf8
work for me. My system locale is set to "pl_PL.utf8". But still, this should be detected automatically if "Language" option is not specified in the "kdmrc" file.
Comment 6 Dario Andres 2009-01-07 15:40:14 UTC
Can anyone else check if this is still a problem using a devel version of KDE( 4.2beta2 / 4.2svn) ? Thanks :)
Comment 7 Dario Andres 2009-01-07 15:40:25 UTC
*** Bug 179880 has been marked as a duplicate of this bug. ***
Comment 8 Javier Jardon 2009-01-07 17:20:51 UTC
Yes, same problem here with Kubuntu and KDEbeta2 packages
Comment 9 Cyril BUQUET 2009-01-07 18:24:58 UTC
Confirmed on kubuntu 9.04 alpha / kde 4.2 beta
Comment 10 Cyril BUQUET 2009-01-08 15:44:25 UTC
Hi,

After a very good suggestion of Fred Scali-West, i have make some test with openSuse 11.1. kdm is directly in french after the end of installation.

After some test :
if the script that launch kdm don't export LANG, kdm can't use it.

on kubuntu, it's /etc/init.d/kdm
on openSuse, it's /etc/init.d/xdm

May be add a Warning into kdm.log if useful Language environnement are not set ?

I have added some kubuntu information here :
https://bugs.launchpad.net/ubuntu/+source/kdebase-workspace/+bug/298592 

Have a nice day
C. Buquet
Comment 11 Fred Scali-West 2009-01-12 13:10:46 UTC
Created attachment 30182 [details]
code to let kdm using "lang=" var non US pcbsd

code to get kdm using "lang=" var correctly on PCBSD when non US, by looking in system locales defined by user in /etc/login.conf with a default kdmrc val of # Default is ""
Language=

Without it, you need to write per hand
Language=fr_FR.UTF-8 in kdmrc for French users, which is a real party-killer for newcomers from other OS's IMHO....
Comment 12 Fred Scali-West 2009-01-12 13:21:35 UTC
Oups, I've made a wrong manipulation sorry...

with the help of Cyril who find this solution for Kubuntu, inspired by OpenSuse (from Germany) [https://bugs.launchpad.net/ubuntu/+source/kdebase-workspace/+bug/298592]
I've get it to work on PCBSD, using the system settings in /etc/login.conf and the default val of:

# Default is ""

Language=
in kdmrc. 
You need just to modify the /usr/local/kde4/bin/kdm the way we've made it and reboot, that's all it works =:)

Can somebody test / comment it and tell what's next with this solution?

Greetings
FSW
Comment 13 Fred Scali-West 2009-01-12 13:38:44 UTC
Created attachment 30183 [details]
french kdm in a Xnest Windows inside KDE 4.1.3, get from login.conf

Images speaks louder than Words =;)
kdm in french, without the need of including manually fr_FR.UTF-8 in kdmrc, but by getting it from /etc/login.conf in PCBSD, the way OpenSuse already (and Kubuntu soon may) do it for non US / UK users.

Greetings.
FSW
Comment 14 Fred Scali-West 2009-01-12 13:46:41 UTC
Created attachment 30184 [details]
plain text modified kdm script

Sorry these are my first attachments on kde.bugs, so I don't know if I have to choose Content Type patch or plain txt, anyway here is the modifed kdm script as plain text.

Greetings,
FSW
Comment 15 Dmitry Kolosov 2009-04-25 12:52:56 UTC
I confirm that bug for kdm in FreeBSD 7-Stable. I have real user name in /etc/passwd in koi8-r encoding and it displays in kdm userlist with multiple '?' signs. With default Language and with Language=ru_RU.UTF-8 in kdmrc. I think kdm-bin should check `locale` output first, and than print real user name with appropriate encoding.
Why this bug stays unconfirmed for so long?
Comment 16 Dmitry Kolosov 2009-08-02 12:12:33 UTC
Everything is ok now. Just set Language=ru_RU.KOI8-R or your encoding.
Comment 17 Vasyl Demin 2009-08-12 21:08:14 UTC
Same problem here. Archlinux, KDE 4.3.0
Comment 18 Oswald Buddenhagen 2012-02-25 20:51:11 UTC
apparently the magic in kde-workspace/kdm/kfrontend/kgapp.cpp:324 ff. is insufficient. i have no idea how to deal with that.
Comment 19 Chusslove Illich 2012-03-02 08:45:46 UTC
By removing the said magic altogether?

If LANG or LC_ALL are not set to an existing system locale, or are set to C
or POSIX, then the program should show no translation no matter any language
choice elsewhere. This behavior is even POSIX-mandated.

It is distro's installation and startup business to make sure an existing
system locale is set before the login manager is started. On Debian, for
example, the installer asks what will be the default system locale; /etc/rc*
scripts for KDM (and GDM, etc) source the file /etc/default/locale, which
contains only the line LANG=<some_locale>.

So, this report should be closed with status ANTIRESOLVED (i.e. made worse
than before, to force the fix where the fix is due).
Comment 20 Nate Graham 2018-04-16 20:24:06 UTC
KDM is unmaintained and not used in KDE Plasma 5.

SDDM is the login manager used in KDE Plasma 5. If you still have this same issue with SDDM, please file an issue on the SDDM bugtracker (after doing a search for existing issues first!): https://github.com/sddm/sddm/issues/