Не работают клавиатура и мышь в xorg-server 1.5 и старше

x11-base/server версий 1.5-1.7 может работать через HAL (с USE="hal", естественно). Эта статья посвящена настройке именно такого варианта, более новые версии xorg-server работают через udev.

Пример для 3х языков (английский, русский, немецкий) и переключение по ctrl+shift.

emerge -vuDN --with-bdeps y world

Помните, что hal должен быть запущен для работы с Xorg:

/etc/init.d/hald start

Создайте файл /etc/hal/fdi/policy/10-x11-input.fdi следующего содержания:

<?xml version="1.0" encoding="utf-8"?>
<deviceinfo version="0.2">
  <match key="info.capabilities" contains="input.keys">
     <merge key="input.x11_options.XkbModel" type="string">evdev</merge>
     <merge key="input.x11_options.XkbLayout" type="string">us,ru(winkeys),de</merge>
     <merge key="input.x11_options.XkbOptions" type="strlist">grp:ctrl_shift_toggle</merge>
  </match>
</deviceinfo>

Уберите из xorg.conf все упоминания о клавиатуре и мыши:

  • удалите либо закомментируйте соответствующие разделы Section "InputDevice"
  • удалите либо закомментируйте указания "InputDevice" из раздела Section "ServerLayout"

Добавьте в xorg.conf новый раздел

Section "ServerFlags"
   Option "AllowEmptyInput" "True"
EndSection

Добавил ArtSh:
Если Вы используете KDE, в настройке переключателя раскладок KDE следует указать модель клавиатуры как "управляемая evdev"

Добавил IceBerk:
не забудьте добавить в make.conf

INPUT_DEVICES="evdev"

Добавил evadim:
для тех кого не устраивает новый метод, есть возможность настроить Х-сервер "по-старому"

Section "ServerFlags"
..............
        Option      "AllowEmptyInput"   "False"
        Option      "AutoAddDevices"    "False"
..............
EndSection

хотя необходима только вторая опция, чтобы не оказаться в без устройств ввода и возможности выключить Х-сервер лучше поставить обе.

Если всё верно настроено, но ничего не работает, как будто Hal не видит настроек, можно попробовать удалить

/var/cache/hald/fdi-cache

и перезапустить hald

Так же небесполезно прочитать официальное руководство по обновлению xorg

Также нужно проследить, чтобы

Также нужно проследить, чтобы в файле xorg.conf после последней строки (это обычно "EndSection") была хотя бы одна пустая строка, иначе будет ругаться на ошибку в синтаксисе файла.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".