← Back to team overview

desktop-packages team mailing list archive

Re: [Bug 1448563] Re: terminal won't launch with a customized locale

 

Egmont's email gave me enough clues to figure out that I had incorrectly
installed my custom locale; the charmap was ANSI_X3.4-1968 rather than
UTF-8.  (I'll guess that when I used the Python script to install my
custom locale, the script called localedef without the "-f UTF-8" option
to set the charmap to UTF-8.)  I reinstalled my custom locale correctly,
using the command "localedef -i rob_custom -f UTF-8 rob_custom.UTF-8",
edited /etc/default/locale to set my custom locale as the system default
again, and rebooted.  Now my custom locale is selected, "locale charmap"
says "UTF-8", and I can launch a gnome-terminal.

So I think I've confirmed that the bug is that a gnome-terminal can't be
launched when a custom locale is installed that uses the default
ANSI_X3.4-1968 charmap.  I had been able to launch a gnome-terminal with
Ubuntu 14.10, even though my locale charmap wasn't UTF-8.  I think that
this bug should be fixed, because gnome-terminal should handle a locale
with a non-UTF-8 charmap more gracefully, even though the situation is
uncommon.

So here is a simpler procedure to demonstrate the bug, which doesn't
require the custom locale file that I attached to the bug.

1) Open an xterm.  Use the xterm window for the following steps.

2) In the /usr/share/i18n/locales directory, make a copy of a locale
file.  This will be your "customized" locale.

3) Install the copied locale file using localedef without using the -f option.
4) Set the LANG environment variable to the newly installed locale.
5) Use the "locale" command and the "locale charmap" commands to verify that the locale is set to the new "customized" locale, and that the charmap isn't UTF-8.
6) If you have any gnome-terminal windows open, close them.  Now try to launch a terminal by typing "gnome-terminal" in the xterm window; if no window appears, then you've demonstrated the bug.


$ sudo cp /usr/share/i18n/locales/en_US /usr/share/i18n/locales/en_US2
$ sudo localedef -i en_US2 en_US2.UTF-8
$ LANG="en_US2.UTF-8"
$ locale
LANG=en_US2.UTF-8
LANGUAGE=en
LC_CTYPE="en_US2.UTF-8"
LC_NUMERIC="en_US2.UTF-8"
LC_TIME="en_US2.UTF-8"
LC_COLLATE="en_US2.UTF-8"
LC_MONETARY="en_US2.UTF-8"
LC_MESSAGES="en_US2.UTF-8"
LC_PAPER="en_US2.UTF-8"
LC_NAME="en_US2.UTF-8"
LC_ADDRESS="en_US2.UTF-8"
LC_TELEPHONE="en_US2.UTF-8"
LC_MEASUREMENT="en_US2.UTF-8"
LC_IDENTIFICATION="en_US2.UTF-8"
LC_ALL=
$ locale charmap
ANSI_X3.4-1968

$ gnome-terminal

I hope I've been helpful.

- Rob

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to gnome-terminal in Ubuntu.
https://bugs.launchpad.net/bugs/1448563

Title:
  terminal won't launch with a customized locale

Status in gnome-terminal package in Ubuntu:
  Confirmed

Bug description:
  Yesterday I upgraded to Ubuntu 15.04 "Vivid Vervet", and I couldn't
  launch a gnome-terminal.  Shift+Ctrl+T didn't seem to do anything, nor
  did typing "terminal" into the dash.  Fortunately, xterm still worked.
  Typing "ps aux" (into an xterm terminal) revealed a few instances
  marked "defunct".

  The problem turns out to be my custom locale.  (I didn't discover this
  myself, except by using Google.)  I typed "LANG=en_US.UTF-8" into my
  xterm terminal, and then "gnome-terminal &", and then I had a gnome-
  terminal running.

  This bug should be fairly easy to replicate once a custom locale has
  been installed.  I'll attach my custom locale file "rob_custom" to
  this bug, which could be used for testing the bug.  (My locale is
  based on en_US.UTF-8 but uses 24-hour time, YYYY-MM-DD dates, and the
  metric system.)

  To install the custom locale, go to
  http://lh.2xlibre.net/help/install_locale/ and download the
  "install_locale.py" script.  The first line of the script will need to
  be changed from ""#!usr/bin/env python" to "#!/usr/bin/python", and
  the script will need to be made executable of course.  Download the
  "rob_custom" file from this bug, and put it in
  /usr/share/i18n/locales/ .  Then run "install_locale.py
  /usr/share/i18n/locales/rob_custom", which should successfully install
  the locale.

  Installing the locale won't make it your default locale.  To change
  the locale temporarily, change the LANG environment variable, i.e.
  "LANG=rob_custom.UTF-8".

  The attachment to this bug consists of a .zip file composed of two
  files: my custom locale "rob_custom", and a simple program file
  locale-test.c, which can be compiled with the command "gcc -o locale-
  test locale-test.c".  The program displays the date and time strings
  according to the installed locale, which is useful for testing whether
  the locale has been changed successfully.

  ProblemType: Bug
  DistroRelease: Ubuntu 15.04
  Package: gnome-terminal 3.14.2-0ubuntu3
  ProcVersionSignature: Ubuntu 3.19.0-15.15-generic 3.19.3
  Uname: Linux 3.19.0-15-generic x86_64
  ApportVersion: 2.17.2-0ubuntu1
  Architecture: amd64
  CurrentDesktop: Unity
  Date: Sat Apr 25 15:28:38 2015
  InstallationDate: Installed on 2013-11-24 (517 days ago)
  InstallationMedia: Ubuntu 13.10 "Saucy Salamander" - Release amd64 (20131016.1)
  SourcePackage: gnome-terminal
  UpgradeStatus: Upgraded to vivid on 2015-04-24 (1 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1448563/+subscriptions


References