Linux для всех

индекс
247,20

Xsplash — делаем тему для себя

Не так давно я рассказал, как сделать свою тему для usplash. Однако, предвидя переход от usplash (он не лучшим образом влияет на время загрузки) на xsplash, я решил описать процесс создания темы для последнего.

Необходимо отметить, что создание темы для xsplash в разы проще, нежели чем для usplash.

К сожалению, xsplash недостаточно документирован, поэтому сразу оговорюсь, все что я сделал — делал методом научного тыка.

Нам понадобятся:
1) Фоновые картинки в разных разрешениях
2) Файл индикатора загрузки (покадровая нарезка файлов, анимированный GIF, или многофреймовый PNG)
3) Файлы логотипа.

Все вышеперечисленное можно взять из стандартной темы xsplash.

Разрешения для фалов фона следующие: 2560x1600, 1920x1200, 1680x1050, 1440x900, 1280x1024, 1024x768, 800x600. Если вы не собираетесь делиться своей заставкой с кем-либо, то можно оставить только свое разрешение.
Все файлы фона должны быть формата PNG или JPG, и иметь имена bg_resolution.png(jpg). Т.е. для 1024x768 — bg_1024x768.png

Далее займемся логотипом. Логотип — картинка, которая загружается в верхнюю часть экрана — в центр по горизонтали. Можете написать что-то или разместить фото любимой девушки. Сохраняем файл: logo_large.png, logo_xtra_large.png, logo_medium.png, logo_small.png — для разных разрешений (наверное). Соответсвтенно нужно учесть, что размеры картинок должны быть разными. Я за основу взял стандартную убунтовскую тему и размеры подсмотрел там.

Далее нужно заняться полосой загрузки.
Может очень помочь вот этот сайт
Если у вас есть анимированный GIF с вашей полосой загрузки — его нужно сконверитровать в многокадровый PNG (нужен ImageMagick):

convert animated.gif not_animated.png

Получится несколько картинок с именем not_animated-?.png, где "?" — порядковый номер кадра.
Далее при помощи того же convert превращаем последовательность PNG в один файл:

convert not_animated* -append throbber.png

Полученный throbber.png — и есть наш многостраничный PNG.
Все созданные файлы, копируем в /usr/share/images/xsplash

Проверяем, что все работает:

# xsplash -t throbber.png -f 12

Где throbber.png — ваша полоса загузки, 12 — количество кадров в ней.

Далее делаем так, чтобы оно срабатывало при загрузке так же. Ищем файл Default в папке ../gdm/presession (в моем случае gdm лежит в /etc/) — и изменяем его:

if [ -x '/usr/bin/xsplash' ];
then
/usr/bin/xsplash -t /usr/share/images/xsplash/trobber.png -f 12 --daemon
fi


Ну вот вроде бы и все, спасибо за внимание!

P.S. Время загрузки после удаления usplash сократилось на 4 секунды.
+4
7 февраля 2010, 17:38
5

комментарии (22)

0
SerGold #
а кто такой этот xsplash?
мы с дебианом о нем ни разу не слыхали…
+1
lavi #
Заставка в процессе загрузки- призвана ускорить загрузку системы в целом. Подробнее модно читать тут и тут.
0
AlexcYeCu #
Ускорить?
0
lavi #
Ну да :) Подсмотрел где-то в блоге одного из людей Canonical. Оно быстрее за счет того, что системе не надо несколько раз переключаться на FB и обратно, как в случае с usplash. Да и проще оно :)
–1
Tiradoir #
Это она заменяет вместо страшного консольного процесса загрузки init до иксов на модную картиночку?
Или я перепутал?)
+1
lavi #
А что в нем страшного?? :) Я так понял, что оно срабатывает после старта X, но до логина.
–1
Tiradoir #
Для неопытного человека тайнственно и пугающее.
Для меня привычное.А ну значит я уже видел эту плюшку в новых убунтах у начинающих линуксойдов.
Тупо замениться экран загрузки до логина и индикатор загрузки.
Не интересно=(
0
lavi #
Ну вообще-то по заверениям Canonical они сделают 10-секундную загрузку при помощи в том числе и usplash.
+1
Tiradoir #
Ну с минимум служб, оно так и загружаеться примерно.
Гнаться за 10-30 секундами я не вижу смысла.
Хотя переход на ext4 и xplash видимо им очень поможет в апреле 2010 года.
0
lavi #
Я действовал по принципу «зачем ждать апреля» :)
0
Tiradoir #
Действуйте по принципу «я впереди планеты всей».
0
Tiradoir #
То есть я хотел сказать используйте BootChart и SSD винч.
9.10 убунта за 5 секунд стартует.
+1
lavi #
Ну собсно я не имел в виду xsplash :) Просто собираюсь вернуться на Arch.
–1
Tiradoir #
А зачем уходили и куда?
И зачем решили вернуться? Вот это интересный пост для дискуссии и холивара на хабре.
+1
lavi #
Терпеть ненавижу холивары (хоть иногда и участвую). Убунту — отличная система, особенно для тех, кто находится в самом начале своего знакомства с линукс.

С арча ушел после неудачного обновления, когда понадобилась работоспособная система быстро.
0
Tiradoir #
А снапшот(образ) рабочей системы где нить на облаках не?(
Ну да ладно довод принят, холивар офф.
Мир, дружба, жевачка.
0
leshaogonkov #
Спасибо за подробный разбор полетов :)

вот ещё по теме, подборка уже готовых экранов
www.howtogeek.com/howto/7939/how-to-change-xsplash-themes-in-ubuntu-9.10/
0
linuxoid #
По прочтении статьи не совсем понял, в какой момент стартует эта программа. Ролик на ю-тубе показывает, что оно стартует после логина…
www.youtube.com/watch?v=njkqFdkSRbE
На моей системе (ноутбуке Fujitsu-Siemens AMILO Pa2548) старт самого X-сервера + десктоп-окружение в виде Compiz + Cairo Dock занимает в общей сложности секунды две-три. Какие вещи так долго делаются при логине в Убунте\ГНОМе, даже с учетом, что Х уже запущен?

На всякий случай текст .xinitrc:

cairo-dock -o &
ck-launch-session exec compiz cpp
0
lavi #
Хороший ноут :) Как я понял — xsplash «ждет», пока не загрузится вся рабочая среда — WM+панель+что-то еще. У меня после загрузки xsplash проходит секунда-две и появляется мой рабочий стол — причем уже полностью готовый.

GDM у меня автологинит, поэтому точно не скажу, когда запускается xsplash.
0
linuxoid #
Спасибо, понял. А разве на загрузку самого Xsplash время не тратится? Пусть там и 0.5 секунды… Он же еще и процессор ест у «нужных» процессов.
0
lavi #
А сколько там того xsplash'а :) Тем более, я убрал usplash. Кстати, непонятный шаг со стороны разработчиков — в комплекте поставки дистрибутива есть и usplash и xsplash… А зачем?
0
linuxoid #
Видимо, usplash для загрузки, начиная с ядра и до Х-ов, Хspalsh- после старта Х и до входа в рабочее окружение…

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.