Решение представлено для Gentoo, но возможно проблема актуальна и для других дистрибутивов.
При обновлении hal до версии 0.5.10 перестает нормально работать
клавиатура. По множественным отзывам в Сети, у всех перестает
работать преключатель раскладки, у меня еще были глюки с другими
клавишами (например кнопка "вверх" работала как PrtScr и др.)Для начала приведу часть xorg.conf который у меня работал испокон веков:
Section "InputDevice"
Identifier "Chicony"
Driver "kbd"
Option "Protocol" "Standard"
Option "XkbModel" "pc105"
Option "XkbRules" "xorg"
Option "XkbLayout" "us,ru,ua"
Option "XkbVariant" ",winkeys"
Option "XkbOptions" "grp:lwin_toggle,grp_led:scroll"
Option "AutoRepeat" "250 30"
EndSectionПричина того, что эта конфигурация отвалилась, состоит в том, что новая
версия hal просто игнорирует конфиг xorg.conf.Нашел два метода решения проблемы.
Первый метод:
http://ru.gentoo-wiki.com/HOWTO_hal_и_устройства_вводаСмысл в том, что создается файл политики hal, который содержит конфигурацию клавиатуры:
/usr/share/hal/fdi/policy/20thirdparty/10russian-layout.fdi
Учитывая, что в статье есть небольшие ошибки, приведу свой файл
конфигурации. Рекомендую сопоставлять с приведенным выше xorg.conf<?xml version="1.0" encoding="ISO-8859-1"?><!-- -*- SGML -*- -->
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_driver" type="string">kbd</merge>
<merge key="input.xkb.model" type="string">pc105</merge>
<merge key="input.xkb.rules" type="string">xorg</merge>
<merge key="input.xkb.layout" type="string">us,ru</merge>
<merge key="input.xkb.variant" type="string">,winkeys</merge>
<merge key="input.xkb.options" type="strlist">grp:lwin_toggle,grp_led:scroll</merge>
</match>Думаю смысл понятен.
После создания файла следует пергрузить hald и перегрузить иксы.
Недостаток этого метода состоит в том, что я так и не смог настроить переключение трех языков.
Второй метод:
Второй метод состоит в том, что мы отключаем автоопределение
устройств. Для этого в xorg.conf в секцию ServerLayout дописываем
Option "AutoAddDevices" "False". После перегрузки иксов настройки
клавиатуры берутся из xorg.conf.Подозреваю, что у второго метода есть свои недостатки, но я их пока не обнаружил.
URL: http://ru.gentoo-wiki.com/HOWTO_hal_и_устройства_ввода
Обсуждается: http://www.opennet.me/tips/info/1628.shtml
> но возможно проблема актуальна и для других дистрибутивоввы подумаете что это фантастика, но эта проблема в других дистрибутивах не актуальна.
так как пакетные дистрибутивы содержат одну и ту же версию пакета и обновляют ее только патчами на багфиксы.
у меня hal 0.5.9, глюков не замечал
я прибил .fdi где есть упоминания об input.keyboard/input.mouse и пропали странные тормоза периодически в кедах.
Правда у меня 0.5.11r4
А у меня стабильная ветка Gentoo, в ней 0.5.9.1-r3 и нет никаких проблем.
Возможно проблема действительно существует только в 0.5.10, а может даже только в гентушной сборке.
Debian Lenny hal 0.5.11~rc2-1 - полет нормальный, конфиг иксов не игнорируется, AutoAddDevices в xorg.conf отсутствует
Option "AutoAddDevices" "False" - помогло - спасибо !
А у мя Ваш конфиг глючит :(, а с гентувики - работает :)
Blin, u menia toge ne rabotaut oba sposoba!A gentoo-wiki v daune: "Gentoo-Wiki восстанавливается после потери базы данных"
Moget kto-nibud' vilogit' rabochiy fdi ottuda?
P.S. U menia Fedora 10 Preview Release
Синтаксис файла настройки изменился. Это мой работающий конфиг:<?xml version="1.0" encoding="utf-8"?><!-- -*- SGML -*- -->
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_driver" type="string">evdev</merge>
<merge key="input.x11_options.XkbModel" type="string">pc105</merge>
<!--merge key="input.x11_options.XkbModel" type="string">evdev</merge-->
<merge key="input.x11_options.XkbLayout" type="string">us,ru(winkeys)</merge>
<merge key="input.x11_options.XkbVariant" type="string">winkeys</merge>
<merge key="input.x11_options.XkbOptions" type="strlist">grp:alt_shift_toggle</merge>
<append key="input.x11_options.XkbOptions" type="strlist">grp:switch</append>
<append key="input.x11_options.XkbOptions" type="strlist">grp_led:scroll</append>
<append key="input.x11_options.XkbOptions" type="strlist">compose:ralt</append>
</match>
</device>
</deviceinfo>
Спасибо за рабочий конфиг. До этого работал вариант с gentoo-wiki
в arch linux испробовал второй способ. работает.
В Xubuntu 8.10 такая-же беда, долго бился с иксами, пока не понял что это хал виноват. Дома попробую поправить, спасибо.
Как можно убедиться, что работает вариант от hal?В начале недели поломалась переключался, вроде бы из-за libxi но возврат на предыдущую версию проблемы не решил. Языки переключились, но аплет сменой флажка не реагировал. Кроме того при переключении между окнами раскладка сбрасывалась на дефолтную.
Попробовал сконфигурировать, как описано в варианте 2. AutoAddDevice=false у меня отсутствовал. Поведение не изменилось.
DE: xfce
дистр: Arch current
Спасибо ! Все ожило.У меня hal-0.5.11 ubuntu8.10.
Такая же проблема в SLES10.
Попробовал оба конфига - помогло. Когда работаешь с консоли клавиатура работает.
Но если зайти удаленно через VNC - клавиатура не работает.
Что можно сделать?
Воспользовался вторым методом - переключение раскладки заработало, но перестало работать колесо мышки - точнее прокрутка. ((