Показаны сообщения с ярлыком xorg. Показать все сообщения
Показаны сообщения с ярлыком xorg. Показать все сообщения

2009-05-20

Клавиатура определяется HAL

Решил-таки перейти на определение раскладки клавиатуры HAL'ом. Задолбался каждый раз заново настраивать xorg.conf при новой установке. Да и вообще запарило возиться с xorg'гом, ведь прогресс не стоит на месте.
Почитав у настроивших до меня, извлек для себя некоторую весьма полезную информацию.
В /usr/share/hal/fdi/policy/10osvendor находятся шаблоны XML-конфигов для HAL, нам нужен 10-keymap.fdi. В файле /usr/share/X11/xkb/rules/base.lst находятся опции настройки раскладки клавиатуры.
Собственно, начнем с xorg.conf. Удаляем в секции:

Section "ServerLayout"
Identifier "Xorg Configured"
Screen 0 "aticonfig-Screen[0]-0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "USB Mouse" "CorePointer"
EndSection


упоминание об устройстве ввода Keyboard0. Удаляем, соответственно, саму секцию:

Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us,ru"
Option "XkbVariant" "winkeys"
Option "XkbOptions" "grp:toggle,grp_led:scroll"
EndSection

выписав, естественно, свои настройки :) Разрешаем автодобавление новых устройств:

Section "ServerFlags"
Option "AutoAddDevices" "true"
EndSection

Или можно вообще удалить эту секцию, так как она была создана именно для блокирования HAL. Далее копируем указанный выше 10-keymap.fdi в каталог /etc/hal/fdi/policy/. Приводим этот файл к виду:


<?xml version="1.0" encoding="UTF-8"?>
<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>

<!-- If we're using Linux, we use evdev by default (falling back to keyboard otherwise). -->
<merge key="input.xkb.model" type="string">keyboard</merge>
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" string="Linux">

<merge key="input.xkb.model" type="string">evdev</merge>
</match>

<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="string">grp:toggle,grp_led:scroll,caps:internal</merge>

</match>
</device>
</deviceinfo>


Чтобы настройки вступили в силу, надо перезапустить HAL и рестартануть X-сервер. После такой настройки мы хотя бы немного разгрузим xorg.conf от "лишней" информации. Огорчает только, что до сих пор не пофиксена "фича" с отсутствием реакции на двойной клик тачпада...

2009-04-14

Что лучше: radeonhd или fglrx?

Уже несколько дней. как не мог обновить систему, т.к. обновление было заблокировано тем, что catalyst требует ядро 2.6.28, а оно должно быть обновлено до 2.6.29. В связи с этим задумался над переходом на свободный драйвер radeonhd.
Впечатления, в принципе, положительные. Только заметил, что если любое окно увеличить почти до полного размера экрана, а потом в быстром темпе потаскать его мышью, то заметны сильные тормоза. стоит уменьшить размер окна, все сразу приходит в норму. В остальном он меня вполне устроил.
Мне бы еще надо поиграть с выводом видео на разные мониторы, как это делалось в проприетарном драйвере ATI/AMD. Погуглив на эту тему, я так понял, что мне в этом поможет xrandr из пакета утилит xorg. Хотя бы эта статья, тем более, что там именно моя встроенная видеокарта (x1200 series). Есть и более ранняя статья. К слову, в Gnome существует специальная утилита с графическим интерфейсом, очень облегчающая сей процесс. Но и в других менеджерах окон, как я понял, с помощью скриптов можно существенно облегчить эту работу.

2008-12-18

Обновление xorg и evdev. Отказ от hotplug.

Еще вчера отключил hotplug в xorg.conf:

Section "ServerFlags"
Option "AutoAddDevices" "False"
EndSection

т.к. заметил, что touchpad ноута не воспринимает двойной щелчок по поверхности, имитирующий клик левой клавишей. Решил переждать, пока пофиксят. Сегодня, обновив сабжевые пакеты, не нашел ничего нового в поведении, и решил оставить ручное конфигурирование xorg.conf, пока не доведут до ума эти функции. Обнаружил также, что прокрутка страниц в браузере клавишами PgUp/PgDn при включенном hotplug не действует.
Правда, я не создавал правила hal, т.к. все в принципе работает, но думаю, и правила эти не помогут, да и нафига их писать, когда проще и понятнее отредактировать xorg.conf?

2008-12-13

X.org 7.4 / xorg-server 1.5.3. История продолжается!

История с X.org не закончилась. Провидение :) избавило меня от мучений в прошедшее воскресенье, но час расплаты наступил.
Вчера я дождался выхода пакета catalyst 8.12, который, естественно, потянул за собой этот проклятый пакет :) Но вроде ужасы прошлого раза миновали, ну разве что, по совету в инете, закомментировал строку "RgbPath" в xorg.conf для успешного старта X-сервера.
Но на этом приключения не закончились. Сначала я никак не мог понять, почему не переключается раскладка клавиатуры по заданной мной клавише Right-Alt. Вместо этого почему-то все выглядело так, как будто я нажимаю Enter. Самые худшие мои подозрения подтвердились, когда я обнаружил, что Arrow-Left переключает раскладку, а все вместе клавиши управления курсором не работают! Опять всё поломали!!! Я был вне себя...
К счастью, все оказалось не настолько жутко, как выглядело на первый взгляд. На IRC-канале мне подсказали лежащее на поверхности решение. Я уже писал, что была новость на сайте об этой проблеме со ссылкой на тему. Вот она и сопутствующие ей "дебаты":
Xorg_input_hotplugging
Проблеммы после последнего обновления системы
Привет от X.Org: не было печали - апдейтов накачали
Даже по первой ссылке все написано достаточно прозрачно и предлагаются 2 решения проблемы: настройка оконного окружения или отключение hotplug в xorg.conf. Опробовав первый вариант, я пришел к выводу, что мне пока его хватит, ибо клавиатура работает как надо, и кривизны пока не замечено. А там посмотрим :)

2008-12-08

Первая пересборка Arch. Сломанный xorg.

Вчера (точнее, позавчера, но пакеты скачивались в течение почти 1,5 суток) решился в первый раз пересобрать Arch, несмотря на жалобы пользователей, что иногда бывают неприятные неожиданности в виде отваливающихся и неработающих функций.
Увы, все оказалось правдой. Скачав все пакеты, pacman известил меня несколькими сотнями сообщений. что такой-то файл в системе существует и обновление невозможно. Оказалось, с этой ситуацией столкнулись уже давно, и я, в силу того, что установил его недавно, просто не знал об этом. Ошибка давала о себе знать сообщениями вида:

klibc: /usr/lib/klibc/include/asm/<некий файл> уже существует в файловой системе

Проблема решалась двумя способами:

1. удалением символьной ссылки sudo rm /usr/lib/klibc/include/asm
2. принудительным обновлением pacman -Sfu

Ну да это можно было пережить. Другая проблема была намного серьезнее. После запуска X-сервера экран был черный, и ничего не показывалось. Оказалось, последний драйвер Catalyst не поддерживает последний X.org. И никакого обходного решения. Придется ждать обновления драйвера от ATI. Хотя в описании к последнему catalyst написано о решении проблем с xorg, полагаю, что это относилось к предпоследнему билду.
Соответственно. чтобы не иметь перед собой экран на драйвере vesa с ужасным разрешением экрана, решил откатиться на предыдущие версии xorg-server, catalyst-utils и catalyst. Но многие программы завязаны на графические библиотеки, поэтому удаление новейших версий пакетов повлекло их удаление. Записал их названия. откатился на предыдущие версии пакетов xorg-server, catalyst-utils и catalyst и заново переустановил программы по списку. Вроде все нормально.
Так как с помощью hwd -x создавал новый xorg.conf, после перезагрузки по умолчанию в gdm стоял русский язык, и никак не переключался на английский. Таким образом, попасть в графику, введя свой логин и пароль, не получалось. Для решения проблемы необходимо в секции параметров клавиатуры подправить строки:

Option “XkbLayout” “us,ru”
Option “XkbVariant” “,winkeys”
Option “XkbOptions” “grp:ctrl_shift_toggle,grp_led:scroll”


Вот и все. Выводы, которые я сделал из этих проблем:

1. Читай новости;
2. Сначала узнай. не было ли проблем у других.