diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/changelog /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/changelog
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/changelog	2006-10-12 02:42:26.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/changelog	2006-10-20 18:44:32.000000000 +0100
@@ -1,3 +1,19 @@
+console-setup (1.7ubuntu19) edgy; urgency=low
+
+  * If upgrading from an older version than this one, check for the Terminus
+    font face and change it to VGA (if you do like it, you can change it
+    back and it won't be touched again). If Terminus was in use, also check
+    for the 12x6 font size and change it to 16, since that was apparently
+    selected due to a strange use-of-debconf bug.
+  * Run kbd_mode on each tty in ACTIVE_CONSOLES rather than on the current
+    tty, since the current tty might belong to X and changing X's tty out of
+    raw mode is a very bad idea (closes: Malone #66929; requires kbd 1.12-15
+    or console-tools 1:0.2.3dbs-62ubuntu10).
+  * Adjust the default keyboard model for Brazilian (closes: Malone #66774)
+    and Japanese (closes: Malone #66719) layouts.
+
+ -- Colin Watson <cjwatson@ubuntu.com>  Fri, 20 Oct 2006 18:44:30 +0100
+
 console-setup (1.7ubuntu18) edgy; urgency=low
 
   * Change the default font to VGA where supported; Terminus does not seem
diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/config.proto /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/config.proto
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/config.proto	2006-10-11 23:11:51.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/config.proto	2006-10-20 18:43:56.000000000 +0100
@@ -995,6 +995,7 @@
     di_keymap="${RET##mac-usb-}"
     di_keymap="${di_keymap%%-latin1}"
 
+    XKBMODEL=''
     XKBLAYOUT=''
     XKBVARIANT=''
     case "$di_keymap" in
@@ -1067,6 +1068,9 @@
 	    layout_priority=high
 	    ;;
 	*)
+	    if [ "$XKBMODEL" ]; then
+		default_model="$XKBMODEL"
+	    fi
 	    default_layout="$XKBLAYOUT"
 	    default_variant="$XKBVARIANT"
 	    layout_priority=medium
@@ -1320,6 +1324,25 @@
 	    else
 		STATE=$(($STATE - 1))
 	    fi
+	    # Adjust the keyboard model for some layouts requiring extra keys.
+	    case $model in
+		pc105|abnt2|jp106)
+		    case $layout in
+			br)
+			    model=abnt2
+			    db_set console-setup/modelcode "$model"
+			    ;;
+			jp)
+			    model=jp106
+			    db_set console-setup/modelcode "$model"
+			    ;;
+			*)
+			    model=pc105
+			    db_set console-setup/modelcode "$model"
+			    ;;
+		    esac
+		    ;;
+	    esac
 	    ;;
 	5)
 	    adjust_layout=false
diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/console-setup-mini.postinst /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/console-setup-mini.postinst
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/console-setup-mini.postinst	2006-09-22 16:53:09.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/console-setup-mini.postinst	2006-10-20 17:47:50.000000000 +0100
@@ -72,6 +72,22 @@
 	acm_option=''
     fi
 
+    if which dpkg >/dev/null && \
+       dpkg --compare-versions "$2" lt 1.7ubuntu19; then
+	# Try to fix up some old mistakes.
+	if [ "$fontface" = Terminus ]; then
+	    # Terminus was used for a while during the Ubuntu Edgy
+	    # development cycle, but we don't want to default to it any
+	    # more. However, if people set it back, then we won't argue.
+	    fontface=VGA
+	    if [ "$fontsize" = 12x6 ]; then
+		# This appears to have been selected by mistake due to some
+		# obscure bug in our use of debconf.
+		fontsize=16
+	    fi
+	fi
+    fi
+
     if [ ! -e $CONFIGFILE ]; then
 	cat /usr/share/doc/console-setup/examples/console-setup \
 	    /usr/share/doc/console-setup-mini/examples/console-setup \
diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/console-setup-udeb.postinst /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/console-setup-udeb.postinst
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/console-setup-udeb.postinst	2006-09-22 16:53:09.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/console-setup-udeb.postinst	2006-10-20 17:47:50.000000000 +0100
@@ -72,6 +72,22 @@
 	acm_option=''
     fi
 
+    if which dpkg >/dev/null && \
+       dpkg --compare-versions "$2" lt 1.7ubuntu19; then
+	# Try to fix up some old mistakes.
+	if [ "$fontface" = Terminus ]; then
+	    # Terminus was used for a while during the Ubuntu Edgy
+	    # development cycle, but we don't want to default to it any
+	    # more. However, if people set it back, then we won't argue.
+	    fontface=VGA
+	    if [ "$fontsize" = 12x6 ]; then
+		# This appears to have been selected by mistake due to some
+		# obscure bug in our use of debconf.
+		fontsize=16
+	    fi
+	fi
+    fi
+
     if [ ! -e $CONFIGFILE ]; then
 	cat /usr/share/doc/console-setup/examples/console-setup \
 	    /usr/share/doc/console-setup-mini/examples/console-setup \
diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/console-setup.postinst /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/console-setup.postinst
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/console-setup.postinst	2006-09-22 16:53:09.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/console-setup.postinst	2006-10-20 17:47:50.000000000 +0100
@@ -72,6 +72,22 @@
 	acm_option=''
     fi
 
+    if which dpkg >/dev/null && \
+       dpkg --compare-versions "$2" lt 1.7ubuntu19; then
+	# Try to fix up some old mistakes.
+	if [ "$fontface" = Terminus ]; then
+	    # Terminus was used for a while during the Ubuntu Edgy
+	    # development cycle, but we don't want to default to it any
+	    # more. However, if people set it back, then we won't argue.
+	    fontface=VGA
+	    if [ "$fontsize" = 12x6 ]; then
+		# This appears to have been selected by mistake due to some
+		# obscure bug in our use of debconf.
+		fontsize=16
+	    fi
+	fi
+    fi
+
     if [ ! -e $CONFIGFILE ]; then
 	cat /usr/share/doc/console-setup/examples/console-setup \
 	    /usr/share/doc/console-setup-mini/examples/console-setup \
diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/control /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/control
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/debian/control	2006-10-11 23:38:30.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/debian/control	2006-10-19 23:19:17.000000000 +0100
@@ -10,7 +10,7 @@
 Package: console-setup
 Section: utils
 Architecture: all
-Recommends: kbd (>= 0.99-12) | console-tools (>= 1:0.2.3-16)
+Recommends: kbd (>= 1.12-15) | console-tools (>= 1:0.2.3dbs-62ubuntu10)
 Depends: debconf (>= 0.5) | debconf-2.0, perl, console-terminus (>= 4.16), xkb-data (>= 0.8-7ubuntu2), lsb-base (>= 3.0-6)
 Description: Setup the font and the keyboard on the console
  The package provides the Linux console with the same versatile
diff -Nru /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/setupcon /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/setupcon
--- /tmp/nyfVcROEAE/console-setup-1.7ubuntu18/setupcon	2006-09-11 09:20:15.000000000 +0100
+++ /tmp/S7f4NCClFu/console-setup-1.7ubuntu19/setupcon	2006-10-20 09:14:46.000000000 +0100
@@ -240,7 +240,7 @@
 #        INPUT          #
 #-----------------------#
 
-if [ "$font_only" != yes ]; then
+if [ "$font_only" != yes ] && [ "$ACTIVE_CONSOLES" ]; then
     # On Mac PPC machines, we may need to set kernel vars first.  We need
     # to mount /proc to do that, but we need it set up before sulogin may
     # be run in checkroot, which will need the keyboard to log in...
@@ -256,13 +256,16 @@
 	fi
     fi
     
-    if which kbd_mode >/dev/null; then
-	if [ "$CHARMAP" = UTF-8 ] || [ -z "$ACM" ]; then
-	    kbd_mode -u
-	else
-	    kbd_mode -a
-	fi	
-    fi
+    for console in $ACTIVE_CONSOLES; do
+	[ -w $console ] || continue
+	if which kbd_mode >/dev/null; then
+	    if [ "$CHARMAP" = UTF-8 ] || [ -z "$ACM" ]; then
+		kbd_mode -u <$console
+	    else
+		kbd_mode -a <$console
+	    fi	
+	fi
+    done
     
     if which loadkeys >/dev/null; then
 	if which ckbcomp >/dev/null; then
