Anaconda needs new locale thinking. (was Re: How important are ISO standards to Fedora?)

Christian Rose menthos at menthos.com
Thu Feb 14 22:41:29 UTC 2008


On 2/14/08, Rodd Clarkson <rodd at clarkson.id.au> wrote:
>  On Thu, 2008-02-14 at 10:45 +0000, "Jóhann B. Guðmundsson" wrote:
>  > >> Try running "locale".
>  > >
>  > > [rodd at localhost ~]$ locale
>  > > LANG=en_US.UTF-8
>  > > LC_CTYPE="en_US.UTF-8"
>  > > LC_NUMERIC="en_US.UTF-8"
>  > > LC_TIME="en_US.UTF-8"
>  > > LC_COLLATE="en_US.UTF-8"
>  > > LC_MONETARY="en_US.UTF-8"
>  > > LC_MESSAGES="en_US.UTF-8"
>  > > LC_PAPER="en_US.UTF-8"
>  > > LC_NAME="en_US.UTF-8"
>  > > LC_ADDRESS="en_US.UTF-8"
>  > > LC_TELEPHONE="en_US.UTF-8"
>  > > LC_MEASUREMENT="en_US.UTF-8"
>  > > LC_IDENTIFICATION="en_US.UTF-8"
>  > > LC_ALL=
>  > > [rodd at localhost ~]$
>  > >
>  > > So, let me get this straight.  All of this was set because I said I
>  > > wanted my computer to speak English (USA)?
[...]
>  Actually, I'm starting to realize that this is much bigger than just A4
>  or letter.
>
>  Because I chose the English (USA) language, anaconda has assumed that
>  everything I do is US.
>
>  I'm even stunned to note that while I select Melbourne, AUSTRALIA as my
>  time zone, local reports LC_TIME as en_US.UTF-8.

Actually, LC_TIME is just for formatting of time. Local time and time
zone are completely irrelevant matters -- if you would be an American
living in Australia, chances are that you would still want
LC_TIME=en_ÙS (US time formatting of the local Australian time).


>  This is just plain ridiculous!
>
>  Clearly, anaconda needs some way to ask where someone lives (instead of
>  what appears to be a borked idea that if you speak a language you must
>  live where that language is spoken) and is probably needs some finer
>  grade control allowing advanced options to set more of these options in
>  locale.
>
>  I may use English US on my computer, but I measure using metric, and
>  format my dates DD-MM-YYYY and my printer uses A4.  Anaconda doesn't get
>  any of the latter right, and that's just plain wrong.

There are more use cases -- at work (higher education in Sweden), most
student computers will be set to English by default, so as to
accomodate for both local students and exchange students.
Another example is some of the big multinational Swedish companies --
some of them have English language as the corporate language policy.
Even though the daily language between local coworkers are in Swedish,
all formal written communication has to be in English. And the
computers too, of course.

In both cases, computer systems will be installed with English as the
default, but in neither case, the other "side effects" of setting
LC_ALL=en_US are desired. You'd still want LC_PAPER=sv_SE as that is
the only thing that the printer at the end of the corridor carries,
and so on with the other LC_* variables.
In some cases, you'd be facing clueless IT departments to your
complaints about useless defaults is "well, uh, corporate policy
mandates US English as the language, so we set it in the installer",
ignoring any complaints about side effects.
In some cases, you'll be in the hands of IT staff with a clue, and who
really want to "do the right thing" and set useful defaults, but who
are out of luck because of broken software that assumes that just
because you want LC_MESSAGES=en_US, everything else should be en_US
too.

Clearly this needs to get fixed in Anaconda.



Christian




More information about the fedora-devel-list mailing list