Після оновлення
Xorg, якому тепер не потрібно мати файл настройки
xorg.conf, виявилося, що не все так радісно, як би мало бути. Проблема проявилася як на мому лаптопі з
Убунту Jaunty, так і на
Archlinux, який віднедавна загніздився в мене на стаціонарному компі. Проблемка проявилася в тому, що при клацанні лівою клавішою миші, наприклад, при згортуванні програми, один клік ідентифікувався як два кліка, тому програма спочатку згорталася і потім відразу відкривалася. Це також проявлялося на закриванні вкладок в Вогнелисиці і в інших програмах. Аналіз
/var/log/Xorg.0.log показав, що
hal якогось чорта знаходить 2 миші, одна як "
USB mouse", що відповідає дійсності, і друга "
Macintosh mouse button emulation". Зрозуміло, що при натисканні клавіші на миші сигнал йшов два рази від кожного знайденого девайса, що і спричиняло ефект подвійного кліку. Це легко можна було побачити, запустивши
xev і перевіривши за допомогою
xinput list скільки мишей є в системі. Досить тривалий пошук по інтернету дав купу згадувань про цю проблему, як в
Убунту, так і інших дистрибутивах. Знайшов і вирішення цієї проблеми, досить просте - заблокувати Macintosh мишку в полісах
hal. Робиться все досить просто:
1. Створити файлик
/etc/hal/fdi/preprobe/10-blacklist.fdi з таким вмістом:
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.category" contains="input">
<match key="input.product" contains="Macintosh">
<merge key="info.ignore" type="bool">true</merge>
</match>
</match>
</device>
</deviceinfo>
2. Записати файл, перезапустити
hal через
sudo /etc/init.d/hal restart в
Убунту чи
sudo /etc/rc.d/hal restart в Archlinux.
3. Рестартувати X-сервер
sudo /etc/init.d/gdm restart в Убунту або
/etc/rc.d/gdm restart в Archlinux.
4. Перевірити, що є одна миша, заглянувши в
/var/log/Xorg.0.log або запустивши
xinput list.Рецепт взятий
звідси. Крім того, постійно в інтернеті є нарікання, що hal-івські правила погано документовані, причому немає аплікації, яка б могла на ходу змінювати їх по бажанню користувача. Наприклад, я довго бився, як в новому
Xorg зробити так, щоб по замовчуванні були ті розкладки клавіатури, які мені потрібні. Виявилося, що це робиться досить просто через hal правила. А саме, треба створити файлик
/etc/hal/fdi/policy/10-keymap.fdi з таким вмістом:
<?xml version="1.0" encoding="utf-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keypad">
<merge key="input.xkb.rules" type="string">base</merge>
<merge key="input.xkb.model" type="string">pc105</merge>
<merge key="input.x11_driver" type="string">evdev</merge>
<merge key="input.xkb.layout" type="string">pl,ua</merge>
<merge key="input.xkb.variant" type="string">,unicode</merge>
<merge key="input.xkb.options" type="string">grp:alt_shift_toggle,lv3:ralt_switch,grp_led:scroll</merge>
</match>
</device>
</deviceinfo>
фактично прописавши те, що раніше було в
xorg.conf. Правила hal, які вміщаються в
/etc/hal/fdi/policy, перезаписують правила по замовчуванню, які можна знайти в
/usr/share/hal/fdi/. Позадававши таким чином відповідні пристрої в власноручно написаних правилах, можна дійсно спокійно видаляти
xorg.conf. Не знаю, наскільки такий спосіб є зручніший від того, щоб все було компактно в
xorg.conf...