Hi, I just started my machine and X a few minutes ago, after no obvious X-related upgrades, and my keyboard is pretty broken, many keys and combinations no longer work. Xorg.0.log says:
... (EE) Error compiling keymap (server-0) (EE) XKB: Couldn't compile keymap (WW) Couldn't load XKB keymap, falling back to pre-XKB keymap (**) Option "CoreKeyboard" (**) Genius ErgoMedia 700 Keyboard: always reports core events (**) Option "Protocol" "standard" (**) Genius ErgoMedia 700 Keyboard: Protocol: standard (**) Option "AutoRepeat" "500 30" (**) Option "XkbRules" "base" (**) Genius ErgoMedia 700 Keyboard: XkbRules: "base" (**) Option "XkbModel" "pc105" (**) Genius ErgoMedia 700 Keyboard: XkbModel: "pc105" (**) Option "XkbLayout" "hr" (**) Genius ErgoMedia 700 Keyboard: XkbLayout: "hr" (**) Option "CustomKeycodes" "off" (**) Genius ErgoMedia 700 Keyboard: CustomKeycodes disabled ... (II) evaluating device (Genius ErgoMedia 700 Keyboard) (II) XINPUT: Adding extended input device "Genius ErgoMedia 700 Keyboard" (type: KEYBOARD) (II) evaluating device (Logitech M-S48a/M-BJ69) (II) XINPUT: Adding extended input device "Logitech M-S48a/M-BJ69" (type: MOUSE) (EE) Error compiling keymap (server-0) (EE) XKB: Couldn't compile keymap (WW) Couldn't load XKB keymap, falling back to pre-XKB keymap Could not init font path element /usr/share/fonts/X11/cyrillic, removing from list! Could not init font path element /usr/share/fonts/X11/Type1, removing from list! [config/hal] couldn't initialise context: (null) ((null)) ... SetClientVersion: 0 9 SetKbdSettings - type: 0 rate: 30 delay: 500 snumlk: 0 (II) 3rd Button detected: disabling emulate3Button ... When I tried to run setxkbmap, I got: % setxkbmap Error loading new keyboard description and Xorg.0.log just got another iteration of the generic error. Here is the relevant part of xorg.conf: Section "InputDevice" Identifier "Genius ErgoMedia 700 Keyboard" Driver "keyboard" Option "CoreKeyboard" Option "XkbRules" "base" Option "XkbModel" "pc105" Option "XkbLayout" "hr" EndSection And here's how it looks: % setxkbmap -print xkb_keymap { xkb_keycodes { include "xfree86+aliases(qwertz)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+hr" }; xkb_geometry { include "pc(pc105)" }; }; % xkbcomp :0 - Warning: Could not load keyboard geometry for :0 BadName (named color or font does not exist) Resulting keymap file will not describe geometry xkb_keymap { xkb_keycodes "unknown" { minimum = 8; maximum = 255; indicator 1 = "Caps Lock"; indicator 2 = "Num Lock"; indicator 3 = "Shift Lock"; virtual indicator 4 = "Mouse Keys"; virtual indicator 5 = "Scroll Lock"; virtual indicator 6 = "Group 2"; }; xkb_types "unknown" { virtual_modifiers NumLock,Alt,ModeSwitch; type "ONE_LEVEL" { modifiers= none; level_name[Level1]= "Any"; }; type "TWO_LEVEL" { modifiers= Shift; map[Shift]= Level2; level_name[Level1]= "Base"; level_name[Level2]= "Shift"; }; type "ALPHABETIC" { modifiers= Shift+Lock; map[Shift]= Level2; map[Lock]= Level1; preserve[Lock]= Lock; level_name[Level1]= "Base"; level_name[Level2]= "Caps"; }; type "KEYPAD" { modifiers= Shift+NumLock; map[Shift]= Level2; map[NumLock]= Level2; level_name[Level1]= "Base"; level_name[Level2]= "Number"; }; type "PC_BREAK" { modifiers= Control; map[Control]= Level2; level_name[Level1]= "Base"; level_name[Level2]= "Control"; }; type "PC_SYSRQ" { modifiers= Alt; map[Alt]= Level2; level_name[Level1]= "Base"; level_name[Level2]= "Alt"; }; type "CTRL+ALT" { modifiers= Control+Alt; map[Control+Alt]= Level2; level_name[Level1]= "Base"; level_name[Level2]= "Ctrl+Alt"; }; type "THREE_LEVEL" { modifiers= Shift+2; map[Shift]= Level2; map[2]= Level3; map[Shift+2]= Level3; level_name[Level1]= "Base"; level_name[Level2]= "Shift"; level_name[Level3]= "Level3"; }; type "SHIFT+ALT" { modifiers= Shift+Alt; map[Shift+Alt]= Level2; level_name[Level1]= "Base"; level_name[Level2]= "Shift+Alt"; }; }; xkb_compatibility "unknown" { virtual_modifiers NumLock,Alt,ModeSwitch; interpret.useModMapMods= AnyLevel; interpret.repeat= False; interpret.locking= False; interpret ISO_Level2_Latch+Exactly(Shift) { useModMapMods=level1; action= LatchMods(modifiers=Shift,clearLocks,latchToLock); }; interpret Eisu_Shift+Exactly(Lock) { action= NoAction(); }; interpret Eisu_toggle+Exactly(Lock) { action= NoAction(); }; interpret Kana_Shift+Exactly(Lock) { action= NoAction(); }; interpret Kana_Lock+Exactly(Lock) { action= NoAction(); }; interpret Shift_Lock+AnyOf(Shift+Lock) { action= LockMods(modifiers=Shift); }; interpret Num_Lock+AnyOf(all) { virtualModifier= NumLock; action= LockMods(modifiers=NumLock); }; interpret Alt_L+AnyOf(all) { virtualModifier= Alt; action= SetMods(modifiers=modMapMods,clearLocks); }; interpret Alt_R+AnyOf(all) { virtualModifier= Alt; action= SetMods(modifiers=modMapMods,clearLocks); }; interpret Scroll_Lock+AnyOf(all) { virtualModifier= 4; action= LockMods(modifiers=modMapMods); }; interpret ISO_Lock+AnyOf(all) { action= ISOLock(modifiers=modMapMods,affect=all); }; interpret ISO_Level3_Shift+AnyOf(all) { virtualModifier= 2; useModMapMods=level1; action= SetMods(modifiers=2,clearLocks); }; interpret ISO_Level3_Latch+AnyOf(all) { virtualModifier= 2; useModMapMods=level1; action= LatchMods(modifiers=2,clearLocks,latchToLock); }; interpret Mode_switch+AnyOfOrNone(all) { virtualModifier= ModeSwitch; useModMapMods=level1; action= SetGroup(group=2,clearLocks); }; interpret KP_1+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=-1,y=+1); }; interpret KP_End+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=-1,y=+1); }; interpret KP_2+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+0,y=+1); }; interpret KP_Down+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+0,y=+1); }; interpret KP_3+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+1,y=+1); }; interpret KP_Next+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+1,y=+1); }; interpret KP_4+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=-1,y=+0); }; interpret KP_Left+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=-1,y=+0); }; interpret KP_6+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+1,y=+0); }; interpret KP_Right+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+1,y=+0); }; interpret KP_7+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=-1,y=-1); }; interpret KP_Home+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=-1,y=-1); }; interpret KP_8+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+0,y=-1); }; interpret KP_Up+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+0,y=-1); }; interpret KP_9+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+0,y=-1); }; interpret KP_Prior+AnyOfOrNone(all) { repeat= True; action= MovePtr(x=+1,y=-1); }; interpret KP_5+AnyOfOrNone(all) { repeat= True; action= PtrBtn(button=default); }; interpret KP_Begin+AnyOfOrNone(all) { repeat= True; action= PtrBtn(button=default); }; interpret KP_F1+AnyOfOrNone(all) { repeat= True; action= SetPtrDflt(affect=button,button=1); }; interpret KP_Divide+AnyOfOrNone(all) { repeat= True; action= SetPtrDflt(affect=button,button=1); }; interpret KP_F2+AnyOfOrNone(all) { repeat= True; action= SetPtrDflt(affect=button,button=2); }; interpret KP_Multiply+AnyOfOrNone(all) { repeat= True; action= SetPtrDflt(affect=button,button=2); }; interpret KP_F3+AnyOfOrNone(all) { repeat= True; action= SetPtrDflt(affect=button,button=3); }; interpret KP_Subtract+AnyOfOrNone(all) { repeat= True; action= SetPtrDflt(affect=button,button=3); }; interpret KP_Separator+AnyOfOrNone(all) { repeat= True; action= PtrBtn(button=default,count=2); }; interpret KP_Add+AnyOfOrNone(all) { repeat= True; action= PtrBtn(button=default,count=2); }; interpret KP_0+AnyOfOrNone(all) { repeat= True; action= LockPtrBtn(button=default,affect=lock); }; interpret KP_Insert+AnyOfOrNone(all) { repeat= True; action= LockPtrBtn(button=default,affect=lock); }; interpret KP_Decimal+AnyOfOrNone(all) { repeat= True; action= LockPtrBtn(button=default,affect=unlock); }; interpret KP_Delete+AnyOfOrNone(all) { repeat= True; action= LockPtrBtn(button=default,affect=unlock); }; interpret Pointer_Button_Dflt+AnyOfOrNone(all) { action= PtrBtn(button=default); }; interpret Pointer_Button1+AnyOfOrNone(all) { action= PtrBtn(button=1); }; interpret Pointer_Button2+AnyOfOrNone(all) { action= PtrBtn(button=2); }; interpret Pointer_Button3+AnyOfOrNone(all) { action= PtrBtn(button=3); }; interpret Pointer_DblClick_Dflt+AnyOfOrNone(all) { action= PtrBtn(button=default,count=2); }; interpret Pointer_DblClick1+AnyOfOrNone(all) { action= PtrBtn(button=1,count=2); }; interpret Pointer_DblClick2+AnyOfOrNone(all) { action= PtrBtn(button=2,count=2); }; interpret Pointer_DblClick3+AnyOfOrNone(all) { action= PtrBtn(button=3,count=2); }; interpret Pointer_Drag_Dflt+AnyOfOrNone(all) { action= LockPtrBtn(button=default,affect=both); }; interpret Pointer_Drag1+AnyOfOrNone(all) { action= LockPtrBtn(button=1,affect=both); }; interpret Pointer_Drag2+AnyOfOrNone(all) { action= LockPtrBtn(button=2,affect=both); }; interpret Pointer_Drag3+AnyOfOrNone(all) { action= LockPtrBtn(button=3,affect=both); }; interpret Pointer_EnableKeys+AnyOfOrNone(all) { action= LockControls(controls=MouseKeys); }; interpret Pointer_Accelerate+AnyOfOrNone(all) { action= LockControls(controls=MouseKeysAccel); }; interpret Pointer_DfltBtnNext+AnyOfOrNone(all) { action= SetPtrDflt(affect=button,button=+1); }; interpret Pointer_DfltBtnPrev+AnyOfOrNone(all) { action= SetPtrDflt(affect=button,button=-1); }; interpret AccessX_Enable+AnyOfOrNone(all) { action= LockControls(controls=AccessXKeys); }; interpret Terminate_Server+AnyOfOrNone(all) { action= Terminate(); }; interpret ISO_Group_Latch+AnyOfOrNone(all) { virtualModifier= ModeSwitch; useModMapMods=level1; action= LatchGroup(group=2); }; interpret ISO_Next_Group+AnyOfOrNone(all) { virtualModifier= ModeSwitch; useModMapMods=level1; action= LockGroup(group=+1); }; interpret ISO_Prev_Group+AnyOfOrNone(all) { virtualModifier= ModeSwitch; useModMapMods=level1; action= LockGroup(group=-1); }; interpret ISO_First_Group+AnyOfOrNone(all) { action= LockGroup(group=1); }; interpret ISO_Last_Group+AnyOfOrNone(all) { action= LockGroup(group=2); }; interpret Any+Exactly(Lock) { action= LockMods(modifiers=Lock); }; interpret Any+AnyOf(all) { action= SetMods(modifiers=modMapMods,clearLocks); }; group 2 = ModeSwitch; group 3 = ModeSwitch; group 4 = ModeSwitch; indicator "Caps Lock" { !allowExplicit; whichModState= locked; modifiers= Lock; }; indicator "Num Lock" { !allowExplicit; whichModState= locked; modifiers= NumLock; }; indicator "Shift Lock" { !allowExplicit; whichModState= locked; modifiers= Mod3; }; }; xkb_symbols "unknown" { modifier_map Control { <> }; modifier_map Shift { <> }; modifier_map Shift { <> }; modifier_map Mod1 { <> }; modifier_map Lock { <> }; modifier_map Mod2 { <> }; modifier_map Mod5 { <> }; modifier_map Control { <> }; modifier_map Mod1 { <> }; }; }; % dpkg -S /usr/share/X11/xkb/symbols/hr xkb-data: /usr/share/X11/xkb/symbols/hr % dpkg -s xkb-data | grep Version Version: 1.3-2 % zgrep xkb $(ls -1t /var/log/dpkg.log*) | head -10 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 upgrade libxkbfile1 1:1.0.3-2 1:1.0.5-1 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 status half-configured libxkbfile1 1:1.0.3-2 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 status unpacked libxkbfile1 1:1.0.3-2 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 status half-installed libxkbfile1 1:1.0.3-2 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 status half-installed libxkbfile1 1:1.0.3-2 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 status unpacked libxkbfile1 1:1.0.5-1 /var/log/dpkg.log.7.gz:2009-01-29 16:06:22 status unpacked libxkbfile1 1:1.0.5-1 /var/log/dpkg.log.7.gz:2009-01-29 18:22:47 configure libxkbfile1 1:1.0.5-1 1:1.0.5-1 /var/log/dpkg.log.7.gz:2009-01-29 18:22:47 status unpacked libxkbfile1 1:1.0.5-1 /var/log/dpkg.log.7.gz:2009-01-29 18:22:47 status half-configured libxkbfile1 1:1.0.5-1 % dpkg -s libxkbfile1 x11-xkb-utils | grep Version Version: 1:1.0.5-1 Version: 7.4+1 -- 2. That which causes joy or happiness. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org