On properly working system I unmerged xfree-4.3.0-r6 and emerged xorg-x11-6.7.0-r1. After updating all config files, modify files in /etc/fonts, /etc/X11/fs and copy XF86Config-4 to xorg.conf my new "X" started successfully, but keyboard switching between english and slovak doesn't work. In XF86Config-4 I have this keyboard related lines: Section "InputDevice" Identifier "Keyboard0" Driver "keyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc105" Option "XkbLayout" "us,sk" Option "XkbOptions" "grp:shift_toggle" EndSection I started to experiment with setxkbmap command and learned "shift_toggle" doesn't work anymore, but "alt_shift_toggle" works, so command: setxkbmap -rules xorg -layout "us,sk" -option grp:alt_shift_toggle" gets my keyboard switching working correct :-). So I changed related lines in xorg.conf like this: Option "XkbRules" "xorg" Option "XkbOptions" "grp:alt_shift_toggle" And then restarted X server, but keyboard switching is still not working. (Above setxkbmap command still helps.) Reproducible: Always Steps to Reproduce: 1.modify xorg.conf for us and sk keyboards 2.startx 3.try keyboard switching using ALT+SHIFT Actual Results: switching between en and sk keyboards not working Expected Results: After switching to sk keyboard ISO8859-2 charset should be available, scroll LED shuld on/off. Tested in kde-3.2.3 xorg started in this way: LANG=sk_SK.ISO8859-2 startx Mozilla fails to start (see "Mozilla doesn't start under xorg-x11 if LANG=sk_SK.ISO8859-2" bug) This command still helps: setxkbmap -rules xorg -layout "us,sk" -option grp:alt_shift_toggle" emerge info: Portage 2.0.50-r9 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3.20040420-r1, 2.4.27) ================================================================= System uname: 2.4.27 i686 Intel(R) Pentium(R) 4 CPU 1.60GHz Gentoo Base System version 1.4.16 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium4 -O2 -mfpmath=sse -msse2 -mmmx -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail /var/qmail/alias /var/qmail/control /var/vpopmail/domains /var/vpopmail/etc" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O2 -mfpmath=sse -msse2 -mmmx -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X Xaw3d aalib acl acpi alsa apache2 arts audiofile avi bonobo cdr crypt cups dga directfb doc dvd encode esd ethereal evo fbcon flash foomaticdb freetds gd gdbm ggi gif gpm gps gtk gtk2 gtkhtml guile icc-pgo imap imlib innodb java jikes jpeg junit kde ladcca lcms libwww linguas_sk lirc mad maildir mikmod mmx motif mozilla mpeg mpi mule mysql nas ncurses nls oav odbc oggvorbis opengl oss pam pcmcia pdflib perl plotutils png pnp python qt quicktime readline sasl scanner sdl slang slp snmp socks5 spell sse ssl svga tcltk tcpd tiff truetype trusted usb video_cards_radeon wavelan wmf x86 xface xml xml2 xmms xv zeo zlib"
This seems potentially related to (or the same as) http://freedesktop.org/bugzilla/show_bug.cgi?id=865.
I added new user to system, started X as that user ... and found, that keyboard switching works properly. So the problem with keyboard switching on account existing before upgrading xorg is surprisingly not in xorg, but in KDE config files in ~/.kde, because after removing it switching starts to work properly without the need of additional commands.