[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Not sure about recent change in tzsetup



On Thu, Nov 12, 2009 at 02:10:30PM +0100, Frans Pop wrote:
> From recent commit to tzsetup:
> 
> + * Merge from Ubuntu:
> +   - Make it possible to select from a worldwide list of timezones if the
> +     default list is insufficient, including UTC (closes: #442856). This is
> +     a bit more general than the previous approach suggested by Frans Pop;
> +     my reasoning is that the country element of the locale is not
> +     necessarily always tightly bound to the user's location, since the
> +     full locale also determines such things as dialect, default keyboard
> +     layout, preferred currency, preferred date/time display, default paper
> +     size, etc.

I stand by this change.

> The reasoning above is flawed. Although the "country element of the
> locale" is indeed not tightly bound with the user's location, that is
> irrelevant for timezone selection as we base that on the *country* that
> was selected in localechooser and NOT the country part of the locale.

This distinction is not relevant. If I am a speaker of British English
living in Germany, the only way I can get the behaviour I want is to
select language English, country United Kingdom, timezone Europe/Berlin.
The same applies to many other perfectly reasonable combinations. You
might say that we do not currently support that (or at any rate not
well); I say that we absolutely should.

As you well know, the country selected in localechooser is used to
determine the country part of the locale; for example, if you want en_GB
(which differs from en_US in a host of little ways important to British
English speakers), selecting Germany at the country question is just not
going to cut it. We both know that not all combinations of language and
country form a valid locale, so in reality the only way to get sensible
behaviour is to select the country that matches your desired set of
localisation conventions, not the country where you currently happen to
live. By contrast, the timezone you should select is very definitely the
latter.

People these days are pretty mobile, and I do not believe it is
reasonable to assume that their desired conventions for how to use their
computer happen to match their current location. That's a reasonable
default, sure, but enough people need something more sophisticated that
d-i should support it - especially since it really isn't that difficult
to do so.

> The downside of the merged change is that it means the tzsetup selection
> is now displayed at high priority for *all* users, while in the past it
> would only be displayed for countries that have multiple timezones.

No it doesn't. If there's only one choice for the timezone, then you get
a medium-priority question asking you to confirm your current time, as
before. The only difference is that this question is now more useful,
because it gives you the option of bailing out and selecting a different
timezone when d-i's default is wrong. I did not change any question
priorities.

In some ways it is suboptimal to offer this facility only at medium
priority just because the country you selected only has one timezone,
but I didn't want to add an extra question and risk the wrath of Frans.
So much for that, eh? ;-)

> While I agree that the option of selecting UTC is worthwhile, I'm not sure
> it's worth the raised priority. My suggestion would be to allow UTC to be
> preseeded instead, and/or selectable at medium priority.

The bug report I closed with my change happens to be primarily about
UTC, but I think that focusing on UTC here is a mistake. It is far from
uncommon to need to choose a timezone which differs from your desired
set of localisation conventions; UTC is just a special case of this.

> I'm particularly unhappy with the added tzsetup/select_all template, which
> adds significantly to the size of the udeb.

After applying #flag:partial to avoid bias due to untranslated "Select
from worldwide list" choices, 0.27 is 4KB bigger than 0.26. Since
tzsetup-udeb isn't in any initrd, I really can't say I care.

The untranslated bit is unfortunate, and as I noted in a comment in the
source code it would be nice to turn the worldwide list into
per-continent lists (for consistency with tzdata) so that it can be more
easily translated and be less of a giant list. But I still think it's
much better than nothing.

> IMO is the cost of adding the worldwide list way too high for the very few
> cases where it helps users. Because basically, if they're getting the wrong
> timezone they selected the wrong country in localechooser.

This is only true if we use a very specific definition of "wrong" that
doesn't really match users' requirements in many cases.

Regards,

-- 
Colin Watson                                       [cjwatson@debian.org]


Reply to: