diff -Nru friendly-recovery-0.2.10/debian/changelog friendly-recovery-0.2.11/debian/changelog --- friendly-recovery-0.2.10/debian/changelog 2010-04-06 14:45:33.000000000 +0200 +++ friendly-recovery-0.2.11/debian/changelog 2011-04-19 16:57:31.000000000 +0200 @@ -1,3 +1,11 @@ +friendly-recovery (0.2.11) UNRELEASED; urgency=low + + * usr/share/recovery-mode/l10n.sh: + - blacklist certain locales where we don't have good console + fonts (LP: #573502) + + -- Michael Vogt Tue, 19 Apr 2011 16:56:44 +0200 + friendly-recovery (0.2.10) lucid; urgency=low * usr/share/recovery-mode/options/xfix renamed to failsafeX: diff -Nru friendly-recovery-0.2.10/usr/share/recovery-mode/l10n.sh friendly-recovery-0.2.11/usr/share/recovery-mode/l10n.sh --- friendly-recovery-0.2.10/usr/share/recovery-mode/l10n.sh 2010-04-06 14:45:33.000000000 +0200 +++ friendly-recovery-0.2.11/usr/share/recovery-mode/l10n.sh 2011-04-19 16:53:15.000000000 +0200 @@ -1,12 +1,31 @@ + +# blacklist some languages that we don't have a good console fonts for +# see bug #573502 +in_lang_blacklist() { + LANG_BLACKLIST="ar_ he_IL ja_JP ko_KR ru_RU sl_SI vi_VN zh_" + LANG=$1 + for b in $LANG_BLACKLIST; do + # equal to lang.startswith(b) + if expr match "$LANG" ^"$b"; then + return 0 + fi + done + return 1 +} + # There is no environment set, as these steps are skipped, # so we need to source the variables needed for localization ourselves if [ -r /etc/default/locale ]; then . /etc/default/locale -export LANG LANGUAGE + if ! in_lang_blacklist "$LANG"; then + export LANG LANGUAGE + fi elif [ -r /etc/environment ]; then . /etc/environment -export LANG LANGUAGE + if ! in_lang_blacklist "$LANG"; then + export LANG LANGUAGE + fi fi # default eval_gettext() to ensure that we do not fail