gnome-language-selector crashes when started.

Bug #533159 reported by Pontus Fuchs
52
This bug affects 10 people
Affects Status Importance Assigned to Milestone
language-selector (Ubuntu)
Fix Released
Medium
Gunnar Hjalmarsson

Bug Description

Binary package hint: language-selector

gnome-language-selector crashes on startup on an almost fresh lucid install. Around 10 days with daily apt-get upgrades

Output when started from shell:

~$ gnome-language-selector

(process:6016): Gtk-WARNING **: Locale not supported by C library.
 Using the fallback 'C' locale.
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_treeview_locales_drag_failed'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_treeview_locales_drag_begin'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_treeview_locales_drag_drop'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_treeview_locales_drag_leave'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_treeview_locales_drag_data_received'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_checkbutton_sync_languages_toggled'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_combobox_system_language_changed'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/SimpleGtkbuilderApp.py:40: RuntimeWarning: missing handler 'on_combobox_user_language_changed'
  self.builder.connect_signals(self)
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py:796: GtkWarning: gtk_cell_view_set_cell_data: assertion `cell_view->priv->displayed_row != NULL' failed
  cell = combo.get_child().get_cell_renderers()[0]
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
Traceback (most recent call last):
  File "/usr/bin/gnome-language-selector", line 32, in <module>
    options=options)
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 185, in __init__
    self.updateLocaleChooserCombo()
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 62, in wrapper
    res = f(*args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 848, in updateLocaleChooserCombo
    self.updateExampleBox()
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 920, in updateExampleBox
    locale.setlocale(locale.LC_ALL, mylocale)
  File "/usr/lib/python2.6/locale.py", line 513, in setlocale
    return _setlocale(category, locale)
locale.Error: unsupported locale setting

Locale output:

~$ locale
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_DK.utf8
LANGUAGE=en_DK:en_GB:en
LC_CTYPE="en_DK.utf8"
LC_NUMERIC="en_DK.utf8"
LC_TIME="en_DK.utf8"
LC_COLLATE="en_DK.utf8"
LC_MONETARY="en_DK.utf8"
LC_MESSAGES="en_DK.utf8"
LC_PAPER="en_DK.utf8"
LC_NAME="en_DK.utf8"
LC_ADDRESS="en_DK.utf8"
LC_TELEPHONE="en_DK.utf8"
LC_MEASUREMENT="en_DK.utf8"
LC_IDENTIFICATION="en_DK.utf8"
LC_ALL=

ProblemType: Crash
Architecture: amd64
Date: Sat Mar 6 09:29:02 2010
DistroRelease: Ubuntu 10.04
ExecutablePath: /usr/bin/gnome-language-selector
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Alpha amd64 (20100224.1)
InterpreterPath: /usr/bin/python2.6
Package: language-selector 0.5.0
PackageArchitecture: all
ProcCmdline: /usr/bin/python /usr/bin/gnome-language-selector
ProcEnviron:
 LANGUAGE=en_DK:en_GB:en
 LANG=en_DK.utf8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-15.22-generic
PythonArgs: ['/usr/bin/gnome-language-selector']
SourcePackage: language-selector
Title: gnome-language-selector crashed with Error in setlocale()
Uname: Linux 2.6.32-15-generic x86_64
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare

Revision history for this message
Pontus Fuchs (pontus-fuchs) wrote :
tags: removed: need-duplicate-check
Arne Goetje (arnegoetje)
Changed in language-selector (Ubuntu):
status: New → Incomplete
importance: Undecided → High
assignee: nobody → Arne Goetje (arnegoetje)
Revision history for this message
Arne Goetje (arnegoetje) wrote :

Thank you for reporting this bug. In order to be able to reproduce this issue, I need to know more details on how you installed your system.

1. I assume you did a clean install from one of the daily CD images?
2. Which CD did you use? Ubuntu Desktop or Alternate?
3. Which language (locale) did you choose at installation time?
4. Have you manually installed any language-packs between initial installation and encountering this problem?
5. Have you modified your language settings in any other way than using language-selector before encountering this problem?

It would be very helpful if you could give me a step-by-step description on what you did from installation time until you encounterd this issue.

Thanks very much for helping.

Arne Goetje (arnegoetje)
visibility: private → public
Arne Goetje (arnegoetje)
Changed in language-selector (Ubuntu):
importance: High → Low
Revision history for this message
Arne Goetje (arnegoetje) wrote :

changed the priority to 'Low', as I cannot reproduce this issue on the daily Live CD from yesterday.

What I did:

 * boot Live CD, choose English as language -> system boots up in en_US.utf8 locale.
 * run language-selector, switch locale to English (Denmark)
 * source .profile to get the new locale settings (. .profile) -> LANG=en_DK.utf8
 * run gnome-language-selector from terminal with en_DK.utf8 as locale

gnome-language-selector runs normally.

Revision history for this message
Pontus Fuchs (pontus-fuchs) wrote :

It turned out that the HDD on this machine is probably broken. I got errors from fsck. After reinstalling the english langpacks the problem disappeared.

Shall we close this one?

Revision history for this message
Michele (wyrdmeister) wrote :

gnome-language-selector crash on startup on a fresh install of Ubuntu 10.04 beta1 amd64, installed using Alternate CD.

The complete error:
/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py:799: GtkWarning: gtk_cell_view_set_cell_data: assertion `cell_view->priv->displayed_row != NULL' failed
  cell = combo.get_child().get_cell_renderers()[0]
Traceback (most recent call last):
  File "/usr/bin/gnome-language-selector", line 32, in <module>
    options=options)
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 187, in __init__
    self.updateLocaleChooserCombo()
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 62, in wrapper
    res = f(*args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 851, in updateLocaleChooserCombo
    self.updateExampleBox()
  File "/usr/lib/python2.6/dist-packages/LanguageSelector/gtk/GtkLanguageSelector.py", line 923, in updateExampleBox
    locale.setlocale(locale.LC_ALL, mylocale)
  File "/usr/lib/python2.6/locale.py", line 513, in setlocale
    return _setlocale(category, locale)
locale.Error: unsupported locale setting

Ouput of locale:
~$ locale
LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=

On the first boot after installation, I was prompt to install language support because was incomplete, but application hanged.

Then I started gnome-language-support (that started correctly) and changed display format in Text tab to Italian and application hanged again.

Then I did a dist-upgrade and a reboot, and gnome-language support began to give this error.

Then I tried to manually install language support, adding these packages:

language-pack-gnome-en-base
language-pack-gnome-it-base
language-pack-gnome-en-base
language-pack-gnome-it-base
language-support-en
language-support-it

but the error is still there.
Maybe the problem is connected to the italian locale, but I cannot figure out how to reset configuration of gnome-language-support.

Revision history for this message
Arne Goetje (arnegoetje) wrote :

could you please attach the output of 'locale -a'?

Thanks a lot.

Revision history for this message
Michele (wyrdmeister) wrote :

Hello,
the output of the command on my system is:

$ locale -a
C
en_AG
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_NG
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZW.utf8
it_CH.utf8
it_IT
it_IT@euro
it_IT.utf8
POSIX

Revision history for this message
Arne Goetje (arnegoetje) wrote : Re: [Bug 533159] Re: gnome-language-selector crashes when started.

Michele wrote:
> Hello,
> the output of the command on my system is:
>
> $ locale -a
[...]
> it_CH.utf8
> it_IT
> it_IT@euro
> it_IT.utf8

OK, the problem seems to be it_IT and it_IT@euro, which should not get
generated in the first place, as they use the ISO8859-1 encoding. We
only generate UTF-8 locales.
Now, we need to find out what causes this.

I will do some testing later and then come back to you.

Thanks a lot!

Revision history for this message
Thomas Jacob (jacob-internet24) wrote :

I ran into the same problem after upgrading an x86_64 desktop machine from hardy to lucid, and then I remembered that

I had previously generated my own locales by editing /var/lib/locales/supported.d/local.

What fixed the issue for me was:

1. Deleting /var/lib/locales/supported.d/local

2. Deleting /usr/lib/locales/* (you may want to backup the data in this directory, to recover if the next step doesn't work)

3. sudo dpkg-reconfigure locales

After that, gnome-language-selector works.

Revision history for this message
Arne Goetje (arnegoetje) wrote :

OK, thanks for the feedback.
So, language-selector should scan each locale for its encoding and ignore those locales which are not using UTF-8 as encoding.
Currently this selection is not done, as it assumes we only have UTF-8 locales on the system. Since the user is still able to mess around with locales by himself, we should do the encoding check and ignore those locales which we don't support.

Changed in language-selector (Ubuntu):
status: Incomplete → Triaged
importance: Low → Medium
Arne Goetje (arnegoetje)
Changed in language-selector (Ubuntu):
assignee: Arne Goetje (arnegoetje) → nobody
Revision history for this message
Gunnar Hjalmarsson (gunnarhj) wrote :

In the linked branch, that I propose be merged into language-selector, there is a small change which implements the encoding scanning as Arne suggested.

Changed in language-selector (Ubuntu):
assignee: nobody → Gunnar Hjalmarsson (gunnarhj)
status: Triaged → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package language-selector - 0.15

---------------
language-selector (0.15) natty; urgency=low

  [ Romain Perier ]
  * LanguageSelector/qt/QtLanguageSelector.py:
   - Unapply changes on changing tab
  * data/incomplete-language-support-kde.note.in
   - Run kcontrol module

  [ Gunnar Hjalmarsson ]
  * LanguageSelector/LocaleInfo.py:
    - Ensure that generated_locales() only returns UTF-8 locales
      (LP: #533159).
  * LanguageSelector/gtk/GtkLanguageSelector.py:
    - Make setlocale() errors non-fatal (LP: #651582).
  * Changed Korean fonts settings as suggested by jincreator:
    - fontconfig/29-language-selector-ko-kr.conf removed (LP: #715742).
    - fontconfig/69-language-selector-ko-kr.conf edited (LP: #716872).
      Thanks for the patch!
 -- Michael Casadevall <email address hidden> Wed, 23 Feb 2011 13:49:05 -0800

Changed in language-selector (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.