diff -Nru localechooser-2.39ubuntu1/debian/changelog localechooser-2.39ubuntu2/debian/changelog --- localechooser-2.39ubuntu1/debian/changelog 2011-11-27 15:23:00.000000000 +0000 +++ localechooser-2.39ubuntu2/debian/changelog 2012-03-23 16:32:45.000000000 +0000 @@ -1,3 +1,12 @@ +localechooser (2.39ubuntu2) precise; urgency=low + + * Invert the set of locale categories set in case of a language/location + conflict, so we now set LC_NUMERIC, LC_TIME, LC_MONETARY, LC_PAPER, + LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT, and LC_IDENTIFICATION + instead (LP: #926207). + + -- Colin Watson Fri, 23 Mar 2012 16:32:43 +0000 + localechooser (2.39ubuntu1) precise; urgency=low * Resynchronise with Debian. Remaining changes: diff -Nru localechooser-2.39ubuntu1/post-base-installer.d/05localechooser localechooser-2.39ubuntu2/post-base-installer.d/05localechooser --- localechooser-2.39ubuntu1/post-base-installer.d/05localechooser 2011-10-05 22:08:20.000000000 +0000 +++ localechooser-2.39ubuntu2/post-base-installer.d/05localechooser 2012-03-23 16:09:28.000000000 +0000 @@ -34,9 +34,9 @@ pt|zh) # In the special cases of Portuguese and Chinese, selecting a # different location may imply a different dialect of the language. - # In such cases, make LANG reflect the selected location (for - # numeric, monetary, etc.) and make LC_MESSAGES, LC_CTYPE, and - # LC_COLLATE reflect the selected language. + # In such cases, make LANG reflect the selected language (for + # messages, character types, and collation) and make the other + # locale categories reflect the selected language. db_get localechooser/languagelist ORIG_LANGUAGE="$RET" db_get debian-installer/country @@ -81,7 +81,7 @@ # generated. DESTFILE="/target/etc/default/locale" if [ -e $DESTFILE ]; then - sed -i 's/^# LANG=$/LANG=\"'"$LOCALE"'\"/' $DESTFILE + sed -i 's/^# LANG=$/LANG=\"'"$LOCALE_TRANSLATIONS"'\"/' $DESTFILE # We set LANGUAGE only if the languagelist is a list of # languages with alternatives. Otherwise, setting it is useless if echo "$LANGLIST" | grep -q ":"; then @@ -92,15 +92,17 @@ # changed. if [ ! -e "$DESTFILE" ] || ! grep -q '^LANG=' $DESTFILE; then mkdir -p "${DESTFILE%/*}" - echo "LANG=\"$LOCALE\"" >> $DESTFILE + echo "LANG=\"$LOCALE_TRANSLATIONS\"" >> $DESTFILE if echo "$LANGLIST" | grep -q ":"; then echo "LANGUAGE=\"$LANGLIST\"" >> $DESTFILE fi fi if [ "$LOCALE_TRANSLATIONS" != "$LOCALE" ]; then - set_field /target/etc/default/locale LC_MESSAGES "$LOCALE_TRANSLATIONS" - set_field /target/etc/default/locale LC_CTYPE "$LOCALE_TRANSLATIONS" - set_field /target/etc/default/locale LC_COLLATE "$LOCALE_TRANSLATIONS" + for category in \ + LC_NUMERIC LC_TIME LC_MONETARY LC_PAPER LC_NAME LC_ADDRESS \ + LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION; do + set_field /target/etc/default/locale "$category" "$LOCALE" + done fi # For languages that have no chance to be displayed at the Linux console