пятница, 21 августа 2009 г.

Выкидываем XDM или Qingy

Многие наверно задумывались зачем вообще нужны эти дисплейные менеджеры (X Display Manager) когда в большинстве случаев для простого пользователя всего-то от них что и требуется выбрать сессию да ввести имя и пароль. При этом на фоне борьбы за каждую секунду загрузки системы лишний запуск/перезапуск X'ов какбы совсем не к месту. Поэтому если от XDM ничего выдающегося не надо можно его смело выкинуть и установить Qingy.
Qingy - это замена для getty на определенном этапе, которая использует Framebuffer и DirectFB для вывода графики. Вместо традиционного приглашения getty ввести логин а затем пароль на экране будет некая замена XDM но на основе DirectFB при этом без всяких X'ов, все что требуется это устройство framebuffer.
Программа хорошо конфигурируема, вот некоторые возможности:
  • Поддерживает темы, их изготовление довольно простое занятие
  • Поддерживает как X-сессии так и текстовую консоль
  • Запустить более одной X-сессии
  • Хранитель экрана
  • Автоматический вход в систему
Более подробно с возможностями можно ознакомиться на странице разработчика. Что, понравилось так это возможность запуска X-сессии в тойже консоли в которой зарегистрировался(возможен и традиционный режим). Получается по сессии на консоль. Также можно, например, для 1 и 2 консоли прописать Qingy, а для остальных оставить стандартный agetty. Примеры уже готовых тем можно посмотреть тут, скачать пакет с этими темами тут.
Установка проста до безобразия и подробна описана в FAQ на сайте разработчика. Я устанавливал на Gentoo, процесс установки описан. Если коротко то необходимо сделать следующее:
  1. устанавливаем dev-libs/DirectFB (-X +fbdev) и sys-apps/qingy (+directfb)
  2. берем fbset и его вывод записываем в /etc/fb.modes, также в /etc/directfbrc указываем этот режим
  3. меняет в inittab на нужных нам консолях agetty на qingy
  4. в конфиге qingy указываем нужную тему (мне понравились matrix и vendetta3)
  5. отключаем XDM и перезагружаемся для верности
И вуаля, все должно работать, скорость загрузки изменилась в лучшую сторону. Думаю отличная вещь для нетбуков, леговесных десктопов и энтузиастов.

6 комментариев:

Murz комментирует...

А насколько реально скорость загрузки увеличилась? И что ещё улучшилось по сравнению с использованием kdm или gdm?
Просто я в своем ноуте использую только графику (kde) и всегда автологин стоит в kdm с последующим залоком, вот думаю стоит ли выкорчевывать kdm и менять его на qingy или игра не стоит свеч...

TheMixa комментирует...

Ну прикинь сколько времени стартует kdm вот на столько и улучшилась. Стоит-нестоит вопрос относительный, ради эксперимента и хобби стоит, а для дела корежить дистр ради 2-3сек неразумно. Каждый решает сам.

Murz комментирует...

Дык вот именно ради 2-3 секунд лениво ;) А в процессе работы (когда уже залогинился в kde) kdm съедает память/ресурсы или нет?
Вообще конешно kdm меня тоже не устраивает, на домашнем компе, хочется найти окно логина и переключалку юзеров как в winxp:
чтобы когда машина лочится по таймауту бездействия - не висело окно с вводом моего пароля, а висел бы список залогиненных пользователей, чтобы сразу было видно кто уже залогинен, с возможностью клацнуть мышкой на другого и ввести его пароль, а тут приходится делать ещё доп. действие - тыкать switch user. А то часто получается что жена, когда видит что у меня всё залочилось, себе открывает не 1 сессию (потом перключаясь в неё), а каждый раз новую, не замечая что уже залогинена, в итоге получаются 2-5 её активных сессий, которые жрут ресурсы ;(

Анонимный комментирует...

Кстати xdm (не kdm или gdm) не так и долго грузится, и его можно настраивать более гибко

Анонимный комментирует...

А оправдано ли это? Ну, допустим, сеанс запускается быстрее. А как с производительностью графики? Иксы, как я понял, вообще не стартуют? Реально ли игрушки запускать с opengl? fps там какой будет?
Просто всё же вроде завязано на иксы, разве нет?

Анонимный комментирует...

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