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