Beyond Linux From Scratch. Версия 6.0

Глава 25. Система X Window

Компоненты системы X Window

Проверка установки Direct Rendering Infrastructure (DRI)

DRI это инструмент, позволяющий программам безопасно и эффективно получать доступ к графической подсистеме. DRI устанавливается в X по умолчанию при наличии поддерживаемой видеокарты. Для проверки правильной установки DRI проверьте содержимое файла /var/log/XFree86.0.log или /var/log/Xorg.0.log на наличие содержания, похожего на это:

(II) R128(0): Direct rendering enabled

Из xterm запустите glxinfo и ищите фразу:


direct rendering: Yes

Также Вы можете запустить тестовую программу glxgears. Эта программа выводит окно с тремя вращающимися шестеренками. xterm отобразит количество кадров в секунду, выводимое каждые пять секунд. Это окно масштабируемо, и количество кадров в секунду сильно зависит от размеров окна.

Для разрешения проблем проверьте руководство пользователя по DRI на http://dri.sourceforge.net/doc/DRIuserguide.html .

Добавление шрифтов TrueType в X

Поддержка TrueType-шрифтов встроена в X. Чтобы шрифты стали доступными, должны быть откомпилированы следующие пункты. Детальное описание этих пунктов приведено после их перечисления.

Установка каталога шрифтов TrueType

Как указано выше, сборка X автоматически создает каталог шрифтов TrueType : /usr/X11R6/lib/X11/fonts/TTF. Этот каталог уже имеет некоторые TrueType-шрифты и настроен правильно. Если этот каталог устраивает, то скопируйте любые другие желаемые TrueType-шрифты в него. Если нет, то создайте новый, предпочтительно в /usr/X11R6/lib/X11/fonts/, и положите TrueType-шрифты в него.

Скачивание шрифтов

Есть два известных ресурса со свободными качественными шрифтами: ftp://ftp.gnu.org/savannah/files/freefont/ и http://corefonts.sourceforge.net/. Скопируйте шрифты (файлы с суффиксом .ttf) в только что созданный каталог.

Создание fonts.scale и fonts.dir

Теперь войдите в каталог, в котором находятся TrueType-шрифты и выполните:


mkfontscale &&
mkfontdir

Убедитесь, что TrueType загружается в XF86Config или xorg.conf

Раздел "Module" должен выглядеть примерно так:

Section "Module"
...
Load "freetype"
...
EndSection

Убедитесь, что FontPath в XF86Config или xorg.conf указывает на каталог TrueType-шрифтов

Раздел "Files" должен выглядеть примерно так:

Section "Files"
...
FontPath "/usr/X11R6/lib/X11/fonts/[TrueTypeDir]/"
...
EndSection

Обновление файлов кэша шрифтов

Убедитесь, что у Вас есть следующие содержания каталогов в /etc/fonts/local.conf внутри следующих меток:


sed -i -e '/^<\/fontconfig>/i\
    <dir>/usr/X11R6/lib/X11/fonts/TTF</dir>\
    <dir>/usr/X11R6/lib/X11/fonts/Type1</dir>' /etc/fonts/local.conf

Программа fc-cache будет автоматически искать вышеуказанные каталоги и все подкаталоги для требуемых шрифтов.

Наконец, для обновления всех файлов кэша шрифтов запустите:


fc-cache

X теперь сможет использовать TrueType-шрифты после своей перезагрузки. Вы можете проверить доступность новых шрифтов при помощи программы xlsfonts или xfontsel.

[Замечание]

Замечание

Вы должны перезапустить mkfontscale и mkfontdir каждый раз после добавления или удаления TrueType-шрифтов. Вы также должны перезапустить fc-cache каждый раз после добавления или удаления любых шрифтов.

Настройка клавиатуры

В этой версии X не-Latin раскладки клавиатуры не включают настройки Latin, как было ранее. Для настройки клавиатуры для Latin и не-Latin ввода измените опции драйвера клавиатуры XkbLayout в разделе InputDevice файла XF86Config или xorg.conf. Например:

Section "InputDevice"
   Identifier"Keyboard0"
   Driver"Keyboard"
   Option "XkbModel" "pc105"
   Option "XkbLayout""en_US,ru"
   Option "XkbOptions" "grp:switch,grp:alt_shift_toggle,grp_led:scroll"
EndSection

В этом примере Вы можете использовать комбинацию Alt-Shift для переключения между раскладками и использовать светодиод Scroll Lock для индикации включения второй раскладки.

Настройка шрифтов

Пользователи, использующие кодировки символов, отличные от ISO-8859-1, должны сделать некоторые изменения в их настройках шрифтов, чтобы для шрифтов "fixed", "variable", "10x20" и аналогичных использовалась корректная кодировка:

Для кирилического алфавита достаточно поместить следующую строку вверху раздела "Files" в XF86Config или xorg.conf, так как этот каталог уже содержит необходимые растровые шрифты и их псевдонимы:

FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/"

Для локалей, основанных на ISO-8859-[X] , вместо предидущей используйте следующую команду:


sed -i 's,iso8859-1\( \|$\),iso8859-[X]\1,g' \
    /usr/X11R6/lib/X11/fonts/{75dpi,100dpi,misc}/fonts.alias

Настройка XDM

xdm предоставляет возможность графической регистрации и обычно устанавливается в /etc/inittab. Большинство информации, необходимой Вам для настройки xdm, находится на его man-странице. Для запуска xdm во время загрузки измените уровень запуска по умолчанию на 5 и добавьте следующие строки в /etc/inittab:


# Run xdm as a separate service
x:5:respawn:/usr/X11R6/bin/xdm -nodaemon

Если в Вашей системе установлен Linux-PAM, то Вы должны создать содержимое PAM для xdm дублированием содердимого login, используя следующую команду:


cp /etc/pam.d/login /etc/pam.d/xdm

Использование X-ресурсов

Есть много опций, которые могут быть установлены для X и клиентов X через ресурсы. Обычно ресурсы устанавливаются в файле ~/.Xresources.

Формат файла ~/.Xresources состоит из списка спецификаций в виде:

object.subobject[.subobject...].attribute: значение

Компоненты спецификации ресурса связаны вместе одной из двух плотностей, представленных точкой (.) или разделителем, представленным в виде звездочки (*) и ограничителей. Плотная связь означает, что компоненты с двух сторон точки должны непосредственно следовать друг за другом как указано в особой реализации. Звездочка это символ-маска, означающий, что между компонентами может быть любое число уровней в описанной иерархии. Например, X предлагает два специальных курсора: redglass и whiteglass. Для использования одного из этих ресурсов Вам надо добавить следующую строчку:

Xcursor.theme: whiteglass

Также Вы можете описать задний план для всех клиентов при помощи:

*background: blue

Более точные описания ресурса перепишут менее точные.

Описания ресурсов могут быть найдены в man-страницах для каждого соответствующего клиента.

Для загрузки Ваших ресурсов программа xrdb должна быть вызвана с соответствующими параметрами. Обычно, загружая ресурсы в первый раз, Вы используете:


xrdb -load <имя файла>

Для добавления ресурсов в базу данных X в памяти используйте:


xrdb -merge <имя_файла>

Инструкция xrdb обычно размещается в ~/.xinitrc или ~/.xsession. Для получения большей информации смотрите man-страницу xrdb.

Последнее обновление 2005-02-25 16:51:59 -0700.