Control: severity -1 serious Control: retitle -1 gdm3: /etc/default/locale ignored, locale set to C, breaks gnome-terminal Control: forwarded -1 https://bugzilla.gnome.org/show_bug.cgi?id=745286 Control: tag -1 patch Control: user de...@kali.org Control: usertag -1 + origin-kali
Given that this bug has been opened four years ago, it's probably not the exact problem I had today but given that the bug has almost no details and that the bug description exactly matches my problem, I'm going to hijack it. Basically for the first login of a user, AccountsServices returns no data about the user language and in that situation gdm3 uses the language set in the environment of the daemon. However with systemd, the environment is almost empty (only PATH is set) and as such the user session ends up with LANG=C which causes problems further down... for example gnome-terminal won't start as C is not an UTF-8 locale. I have already submitted this upstream and he patched the gdm.service file to add an EnvironmentFile directive. I attach the upstream patch adapted to apply on top of Debian's gdm package (with all patches applied). You will find more details in the upstream bug report if needed: https://bugzilla.gnome.org/show_bug.cgi?id=745286 Thanks! -- Raphaël Hertzog ◈ Debian Developer Support Debian LTS: http://www.freexian.com/services/debian-lts.html Learn to master Debian: http://debian-handbook.info/get/
data/Makefile.am | 1 + data/gdm.service.in | 1 + 2 files changed, 2 insertions(+) --- a/data/Makefile.am +++ b/data/Makefile.am @@ -197,6 +197,7 @@ gdm.service: $(srcdir)/gdm.service.in $(AM_V_GEN)sed \ -e 's,[@]sbindir[@],$(sbindir),g' \ -e 's,[@]GDM_INITIAL_VT[@],$(GDM_INITIAL_VT),g' \ + -e 's,[@]LANG_CONFIG_FILE[@],$(LANG_CONFIG_FILE),g' \ < $< > $@ systemdsystemunit += gdm.service CLEANFILES += gdm.service --- a/data/gdm.service.in +++ b/data/gdm.service.in @@ -16,3 +16,4 @@ IgnoreSIGPIPE=no #BusName=org.gnome.DisplayManager StandardOutput=syslog StandardError=inherit +EnvironmentFile=@LANG_CONFIG_FILE@