Consider reverting default clock format to 24h and adding an en_US localization
Commit 73e83eae changed the default clock format to 24 hour, with this reasoning:
Currently the default clock format is unconditionally set to a 24-hour clock. This is incorrect because the default locale is US English, which uses a 12-hour clock. But we really do want to default to 24-hour clocks in other locales.
This means that the default time format regresses for every locale that has not yet been updated for this change (for example British English, en_GB), and also for every locale for which gsettings-desktop-schemas does not have translations (to pick an arbitrary example: Welsh, cy_GB).
I would argue that the default locale is not, in fact, US English (en_US), but rather international English (C). The easiest way to observe a difference is to sort strings alphabetically, which sorts alphabetically after case-folding (A = a < B) in both en_US and en_GB, but sorts by byte value (strcmp order, A < B < a) in the C locale.
Also, pragmatically, if the US English locale wants a setting that is the wrong default for the majority of other locales, it should probably be US English that is special-cased.
I think the most straightforward implementation of this would be an en_US localization that translates 24h
to 12h
, and leaves all other strings untouched.