CoreSystem/Xorg
Sisyphus Core — X.org
Поддержка в актуальном состоянии драйверов (сделано)
От версии к версии xorg-server X.Org Video Driver ABI/X.Org XInput Driver ABI частенько меняется. Для более простого отслеживания изменения ABI в xorg-server добавлены:
Provides: XORG_ABI_VIDEODRV = X.X Provides: XORG_ABI_XINPUT = X.X
в xorg-sdk сделаны rpm макросы %get_xorg_abi_xinput, %get_xorg_abi_videodrv.
Использование в xorg-drv-XXX:
Requires: XORG_ABI_XINPUT = %get_xorg_abi_xinput
или
Requires: XORG_ABI_VIDEODRV = %get_xorg_abi_videodrv
соответственно для драйвера устройства ввода и видео драйвера.
Перевод устройств ввода на input-hotplug (сделано)
Начиная с версии 1.4.2 xorg-server собран с поддержкой input-hotplug. По умолчанию input-hotplug выключен, для его включения в xorg.conf в секцию ServerFlags необходимо добавить:
Option "AutoAddDevices" "true"
и убрать все упоминания InputDevice.
Для клавиатур используется драйвер kbd, для мышей и touchscreen — evdev, для touchpad - synaptics. Для остальных устройств ввода поддержка input-hotplug не реализована ввиду их отсутствия.
Все настройки/изменения умолчаний для клавиатуры прописываются в /etc/hal/fdi/policy/10-x11-input.fdi.
Переход на /etc/X11/xorg.conf.d/
Предыдущий пункт уже устарел (кроме AutoAddDevices). Теперь конфигурацию нужно описывать в /etc/X11/xorg.conf.d/
Пример для трекоблла marblemouse. Взято, с изменениями, отсюда. Прокрутка перенесена под большой палец, начинает работать если нажать и удерживать левую маленькую кнопку. Горизонтальная прокрутка закомментирована.
/etc/X11/xorg.conf.d/50-marblemouse.conf
Section "InputClass" Identifier "Marble Mouse" MatchProduct "Logitech USB Trackball" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "SendCoreEvents" "true" # Physical buttons come from the mouse as: # Big: 1 3 # Small: 8 9 # # This makes left small button (8) into the middle, and puts # scrolling on the button after short timeout. # Option "Buttons" "9" Option "ButtonMapping" "1 8 3 4 5 6 7 2 9" Option "EmulateWheel" "true" Option "EmulateWheelTimeout" "300" Option "EmulateWheelButton" "8" Option "YAxisMapping" "4 5" #Option "XAxisMapping" "6 7" EndSection
Alterator-X11
Поиск видео драйвера в /usr/share/hwdatabase/videoaliases/*.xinf пора уже считать ересью. Видео драйвер запрашивается одной командой у hal (который уже тоже признан ересью):
$ hal-get-property --udi $(hal-find-by-capability --capability vga) --key video.x11_driver
Для конвертации xinf в fdi существует скрипт xinf2fdi, взять его можно в git (например в драйвере intel, использование есть в спекфайле). Кроме того, туда же можно засунуть опции для конкретных чипов, по аналогии с
$ hal-device $(hal-find-by-capability --capability input.keyboard) | \ sed -ne "s|^[[:space:]]*input.x11_options.\(.*\)[[:space:]]=[[:space:]]'\(.*\)'[[:space:]].*|Options \"\1\" \"\2\"|p"
Обновление Xorg до версии 7.4 (сделано)
- http://xorg.freedesktop.org/wiki/ReleaseSchedule
- X.Org 7.4 tracker http://bugs.freedesktop.org/show_bug.cgi?id=10101