On Sat, Nov 27, 2004 at 03:34:48PM +0200, Tapio Lehtonen wrote: > I installed Debian GNU/Linux sarge from rc2 netinst cd, not choosing > Desktop in the tasksel. After installing, I used aptitude to install > Gnome et al. Then when gdm did not start, I noticed xserver-xfree86 was > not installed and used aptitude to install also that. > > Now gdm worked but I could not type some characters. Middle of the > keyboard did not work (and it worked OK in console). I saw in > /etc/X11/XF86Config-4 that XkbVariant was fi. I had not typed that > there, the file was as is from installing xserver. I was not asked > during install about keyboard variant. > > I ran dpkg-reconfigure xserver-xfree86, chose empty to XkbVariant and > keyboard started working even in X. I have absolutely no idea how "fi" magically got poked into the debconf database. If you didn't see any debconf questions about the X server until you ran dpkg-reconfigure, then this must be what happened. The xserver-xfree86 configure script has no logic for automatically populating the keyboard variant parameter. It always defaults to blank[1]. My *only* guess is that language-chooser or some similar mechanism in d-i stuffed this bogus value into the debconf database. I am CCing debian-boot to see if they find that to be a plausible explanation. If they don't, then I have no clue how your debconf database got corrupted in this fashion. It sounds like pure magic. [1] Here's the code, if you're interested: /var/lib/dpkg/info/xserver-xfree86.config: 1644 MAY_BE_NULL=yes validate_string_db_input "$(priority_ceil $PRIORITY)" xserver-xfree86/config/inputdevice/keyboard/variant (Yup, just that one line.) /usr/bin/dexconf: 230 ### KEYBOARD / INPUTDEVICE 231 232 fetch xserver-xfree86/config/inputdevice/keyboard/rules 233 XKB_RULES="$RET" 234 fetch xserver-xfree86/config/inputdevice/keyboard/model 235 XKB_MODEL="$RET" 236 fetch xserver-xfree86/config/inputdevice/keyboard/layout 237 XKB_LAYOUT="$RET" 238 # XkbVariant and XkbOptions are permitted to be null. 239 db_get xserver-xfree86/config/inputdevice/keyboard/variant 240 XKB_VARIANT="$RET" 241 db_get xserver-xfree86/config/inputdevice/keyboard/options 242 XKB_OPTIONS="$RET" 243 244 exec 4>"$DEXCONFTMPDIR/InputDeviceKeyboard" 245 cat >&4 <<SECTION 246 Section "InputDevice" 247 Identifier "Generic Keyboard" 248 Driver "keyboard" 249 Option "CoreKeyboard" 250 Option "XkbRules" "$XKB_RULES" 251 Option "XkbModel" "$XKB_MODEL" 252 Option "XkbLayout" "$XKB_LAYOUT" 253 SECTION 254 if [ -n "$XKB_VARIANT" ]; then 255 printf "\tOption\t\t\"XkbVariant\"\t\"$XKB_VARIANT\"\n" >&4 256 fi 257 if [ -n "$XKB_OPTIONS" ]; then 258 printf "\tOption\t\t\"XkbOptions\"\t\"$XKB_OPTIONS\"\n" >&4 259 fi 260 printf "EndSection\n" >&4 -- G. Branden Robinson | You are not angry with people when Debian GNU/Linux | you laugh at them. Humor teaches branden@debian.org | them tolerance. http://people.debian.org/~branden/ | -- W. Somerset Maugham
Attachment:
signature.asc
Description: Digital signature