понеділок, 13 квітня 2009 р.

upgrade to xorg-server-1.5 notes

Краткая и основная информация для обновления на xorg 1.5

Короче, в этом xorg серьёзно поменялся принцип конфигурирования клавы и мыши. Сначала я плевался, а потом просветился - всё сделано правильно, в духе "TAOUP" 8)


Но к сожалению официальные доки как-то невнятно и "взагалі" обьясняют, что делать. Про локализацию той-же клавы вообще умалчивают (видать считают этот вопрос банальным, да-да...), т.е. в итоге как минимум приходится рыться по официальным и не очень форумам. А что самое противное, те-же проблемы локализации копипастой не решаются, (ибо участники форумов только то и делают, что сетуя обмениваются нерабочими fdi-конфигами)

Значит основное - настройками клавы (раскладка и т.п), мыши и остальных INPUT_DEVICES теперь занимается hal. Всё, что касалось этого и было в секциях "InputDevice" из /etc/X11/xorg вынесено в отдельные файлы политик hal'а

Внимание! мой вам совет - удалите xdm из автостарта!


root ~ # rc-update del xdm


А то если всё пойдёт боком, то вы круто прилипнете с иксами, которые не реагируют даже на Ctrl+Alt+Bs. Тогда прийдётся грузиться в однопользовательском режиме для починки иксов


Делаем следующие действия:

меняем содержание строки INPUT_DEVICES в /etc/make.conf на:


/etc/make.conf
...
INPUT_DEVICES="evdev"
...



обновляем xorg-server:


root ~ # emerge xorg-server


резервируем старый конфиг xorg.conf:


root ~ # mv /etc/xorg.conf /etc/xorg.conf-no_evdev


генерим новый:


root ~ # X -configure


вдумчиво глядим в /var/log/Xorg.0.log на предмет того, что hal обнаружил ваши клавы, мыши, etc...
Если всё в порядке, ставим новый конфиг как конфиг по умолчанию:


root ~ # cp xorg.conf.new /etc/X11/xorg.conf


проверяем под обычным пользователем факт запуска X :


user ~ % X -probeonly


читаем последние строки на предмет отсутствия строки "no screens чо-то-там"

после это настоятельно прошу Вас сделать sync, т.к. есть вероятность "зависнуть" (вернее, клава с мышкой в иксах могут не заработать вообще)


root ~ # sync


запускаем сессию X от обычного пользователя через startx (не забываем про наполнение .xinitrc)


user ~ % startx


справка: приблизительное наполнение .xinitrc:


.xinitrc
...
xterm &
openbox # или что-то подобное, чтобы было лёгенькое
# и минималистическое для быстрой загрузки теста
...


в запущеных иксах пишем что-нибудь в xterm. Радуемся, что клава пашет и выходим из них нахрен, чтобы настроить раскладки клавиатуры. Вот вам мой рабочий конфиг:


user ~ % cat /etc/hal/fdi/policy/10-xinput-configuration.fdi
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keymap">
<append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
</match>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.xkb.rules" type="string">base</merge>
<merge key="input.xkb.layout" type="string">us,ru,ua</merge>
<merge key="input.xkb.variant" type="string">winkeys</merge>
<merge key="input.xkb.options" type="string">grp:alt_shift_toggle,grp_led:scroll</merge>
</match>
</device>
</deviceinfo>


копипастите его в указанный файл (/etc/hal/fdi/policy/10-xinput-configuration.fdi), после чего перегрузите hald:


root ~ # /etc/init.d/hald restart


После чего загружаем иксы и радуемся работаюим переключениям раскладок.

2 коментарі:

Ostrich's Poison сказав...

долбаный браузер вылетел после того, как я причесал эту статью. Значит не судьба

Ostrich's Poison сказав...

Нет, судььба. Теперь материал несколько исправлен и причёсан.