Failsafe X troubleshooting dialogs do not load translations

Bug #528908 reported by David Planella on 2010-02-27
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu Translations
xorg (Ubuntu)
Bryce Harrington

Bug Description

Binary package hint: xorg

This is simply a follow-up to bug 335678

The failsafe X troubleshooting dialogs are now translatable, but according to Gabor Kelemen:

"I managed to test this a bit, and it works only under X11 :)
So, if I start manually /etc/gdm/failsafeXinit in gnome-terminal, I see the translated strings, but when I damage the xorg.conf file and starts automatically, it's all english. I guess we should set some environment variables..."

So in short, translations are not loaded when the dialogs are shown on startup upon a real X failure.

I could also confirm this, but I haven't found out why. If I'm not mistaken, failsafeXinit is executed by upstart. Could that have an effect on the environment variables?

Related branches

David Planella (dpm) on 2010-02-27
Changed in ubuntu-translations:
status: New → Confirmed
importance: Undecided → High
Bryce Harrington (bryce) wrote :

Hi dpm,

Please attach the output of `lspci -vvnn` and `dmesg`, and attach your /var/log/Xorg.0.log (and maybe Xorg.0.log.old) file from after reproducing this issue. If you're using a custom /etc/X11/xorg.conf please attach that as well.

[This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: needs-xorglog
tags: added: needs-lspci-vvnn
Changed in xorg (Ubuntu):
status: New → Incomplete
David Planella (dpm) on 2010-02-28
Changed in xorg (Ubuntu):
status: Incomplete → Confirmed
tags: removed: needs-lspci-vvnn needs-xorglog
Changed in xorg (Ubuntu):
assignee: nobody → Canonical Desktop Team (canonical-desktop-team)
Martin Pitt (pitti) wrote :

I think upstart jobs don't have a particular environment, you need to source it yourself.

I believe you need to add something like

    if [ -r /etc/default/locale ]; then
        . /etc/default/locale
        export LANG LANGUAGE
    elif [ -r /etc/environment ]; then
        . /etc/environment
        export LANG LANGUAGE

to either /etc/init/failsafe-x.conf (before calling failsaveXServer) or /etc/gdm/failsafeXServer directly.

David, would you mind testing this?

Changed in xorg (Ubuntu):
assignee: Canonical Desktop Team (canonical-desktop-team) → Bryce Harrington (bryceharrington)
David Planella (dpm) wrote :

Excellent!, this seemed to fix it, thanks Martin.

Adding the test on /etc/init/failsafe-x.conf (before calling failsaveXServer) seems to cause X to hang without further explanation, so I ended up adding it to /etc/gdm/failsafeXServer and that did the trick.

Linking a branch with a merge proposal for the fix.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package xorg - 1:7.5+1ubuntu12

xorg (1:7.5+1ubuntu12) lucid; urgency=low

  * debian/local/Failsafe:
    + udev rules don't have a particular environment set, so we must
      set it up ourselves in order to get $LANG and $LANGUAGE so that
      translations work properly.
      (LP: #528908)
  * debian/apport/
    + Only file crash bugs with no traceback against nvidia/fglrx
 -- Bryce Harrington <email address hidden> Wed, 03 Mar 2010 15:36:28 -0800

Changed in xorg (Ubuntu):
status: Confirmed → Fix Released
David Planella (dpm) on 2010-03-25
Changed in ubuntu-translations:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers