Branding: различия между версиями
Строка 12: | Строка 12: | ||
%define brand altlinux | %define brand altlinux | ||
%define Brand ALT Linux | %define Brand ALT Linux | ||
%define status alpha</source> | |||
%define variants ... | |||
%define status альфа | |||
%define status_en alpha | |||
%define distro_name ALT Linux Lite (alpha) | |||
%define distro_name_ru Альт Линукс Лёгкий (альфа) | |||
</source> | |||
При желании можно поменять картинки. Но по крайней мере в текстах почти везде в качестве имени дистрибутива, версии и производителя будут введённые вами значения. | При желании можно поменять картинки. Но по крайней мере в текстах почти везде в качестве имени дистрибутива, версии и производителя будут введённые вами значения. | ||
{{Attention|Нелатинские буквы должны (например, в '''%define status''') должны идти сильно ниже заголовка. Поэтому в начале следует '''%define variants''' с большим объёмом текста}} | |||
{{Note|Непустой статус ('''%define status''') отрисовывается на обоях. Чтобы сделать его пустым, укажите <source lang="Spec">%define status %nil | |||
%define status_en %nil</source>}} | |||
Некоторые ресурсы могут попадать в несколько подпакетов, некоторые предназначены для целевой укладки. | Некоторые ресурсы могут попадать в несколько подпакетов, некоторые предназначены для целевой укладки. |
Версия от 16:51, 23 сентября 2013
Пакеты branding
Пакеты branding-бренд-дистрибутив содержат в себе по возможности всю дистрибутивоспецифичную информацию (графику, настройки и тексты). Исходный git-репозиторий находится в git.alt boyarsh@ (обратите внимание на набор бранчей).
Минимальная адаптация состоит в замене нескольких констант в spec-файле: например, для Lite:
%define theme lite
%define Theme Lite
%define codename none
%define brand altlinux
%define Brand ALT Linux
%define variants ...
%define status альфа
%define status_en alpha
%define distro_name ALT Linux Lite (alpha)
%define distro_name_ru Альт Линукс Лёгкий (альфа)
При желании можно поменять картинки. Но по крайней мере в текстах почти везде в качестве имени дистрибутива, версии и производителя будут введённые вами значения.
%define status %nil
%define status_en %nil
Некоторые ресурсы могут попадать в несколько подпакетов, некоторые предназначены для целевой укладки.
Политика конфликтов
Чтобы не было конфликтов по именам файлов, необходимо объявить возможные варианты брендингов для каждого подпакета:
%define variants altlinux-backup-server altlinux-desktop altlinux-gnome-desktop altlinux-kdesktop \
altlinux-lite altlinux-lxdesktop altlinux-office-desktop altlinux-office-server altlinux-school-server altlinux-sisyphus \
altlinux-spt altlinux-tablet altlinux-workbench informika-schoolmaster ivk-chainmail lxde-desktop lxde-school-lite \
Platform6-server-light school-junior school-lite school-master school-server school-teacher school-terminal simply-linux \
sisyphus-server-light
Далее в подпакетах (например, для bootloader) прописывается:
Conflicts: %(for n in %variants ; do [ "$n" = %brand-%theme ] || echo -n "branding-$n-bootloader ";done )
Состав
Обычно состоит из пакетов:
branding-<название дистрибутива>-alterator — стили оформление программы установки и Центра управления системой (Alterator), включая значки этапов branding-<название дистрибутива>-bootloader — оформление меню загрузки с диска и загрузчика ОС (lilo или grub) branding-<название дистрибутива>-bootsplash — оформление экрана прогресса загрузки (Plumouth) branding-<название дистрибутива>-graphics — обои, аватары и логотипы branding-<название дистрибутива>-indexhtml — титульная страница дистрибутва со ссылками branding-<название дистрибутива>-menu — пункты меню (если используется настраиваемое меню) branding-<название дистрибутива>-notes — лицензионный договор и примечания к выпуску (показываются в конце установки) branding-<название дистрибутива>-release — название дистрибутва (обычно с кодовым именем) в /etc/redhat-release branding-<название дистрибутива>-slideshow — изображения для слайдшоу при установке branding-<название дистрибутива>-xfce-settings — параметры среды по умолчанию
branding-*-bootloader
- images/boot.png
- первая картинка, которую увидит пользователь при загрузке образа или установленной системы. Автоматически ужимается до размера 800x600.
- components/bootloader/gfxboot.cfg.in или bootloader/gfxboot.cfg.in
- значение theme в секции [base] должно соответствовать тому, куда в подпакете branding-*-bootsplash укладываются файлы (/boot/splash/%theme)
NB: gfxboot (см. тж. здесь) весьма привередлив по части вариаций сжатия и прочего; см. скрипты zerg@ во избежание чёрной картинки под загрузочной менюшкой вместо images/boot.jpg (который становится back.jpg перед попаданием в cpio-архив bootlogo).
Известно, что grub не переваривает PNG с indexed color.
branding-*-bootsplash
- bootsplash/images/silent-*.jpg (если присутствуют, а не генерируются)
- картинки для отображения в процессе загрузки установленной системы (для разных разрешений фреймбуфера; начинать стоит либо с дефолтного 800x600, либо с наиболее высокого из поддерживаемых — уменьшать проще)
Внимание: bootsplash «переваривает» не всякие jpeg, при проблемах попробуйте сжать другим инструментом
Внимание: plymouth не поддерживает jpeg и принимает png, но будьте осторожны с размером — слишком большой full.cz[1] может привести к проблемам загрузки на UEFI, при проблемах включайте indexed color и/или понижайте разрешение (например, с 1920x1080 до 1600x900).
Подпакет должен содержать Provides: plymouth(system-theme) во избежание излишнего вытягивания, скажем, plymouth-theme-fade-in.
branding-*-graphics
альтернатива /usr/share/design/current; для совместимости могут быть альтернативы
- /usr/share/artworks
- /usr/share/design-current
фоновый рисунок: /usr/share/design/current/backgrounds/default.png
NB: для kde4 разрешение background.png и название каталога под graphics/kde4/ksplash-themes/Default/ должны соответствовать друг другу!
branding-*-indexhtml
- components/indexhtml/*
- содержание и оформление страницы по умолчанию для браузеров
branding-*-release
/etc/altlinux-release (%_sysconfdir/altlinux-release), генерируемый в branding.spec.
branding-*-notes
- notes/*.html*
- лицензионное соглашение, примечания к дистрибутиву, домашняя страница по умолчанию
branding-*-slideshow
- slideshow/*.{jpg,png,gif}
- картинки 650x300 для слайдов в процессе установки
Примечание: Если не хотите показа слайд-шоу, удалите все графические файлы и создайте текстовый файл любого содержимого (хоть пустой).
Настройки
Пакеты из серии *-settings-* содержат в себе настройки по-умолчанию, которые делают пользовательские окружения более удобными в работе и/или затачивают их под какую-нибудь задачу. В идеале настройки не должны производиться через /etc/skel-каталог, т.к. тогда они будут влиять только на новых пользователей и их нельзя будет централизованно сменить.
Более подробно настройки описываются далее:
Изменение всех branding-*
Изменения, которые хочется видеть во всех branding-*, надо делать в бранче master и потом мержить в другие бранчи. Писать по поводу принятия полезных вещей в апстрим стоит boyarsh@; при существенных изменениях стоит предварительно обсудить в devel-distro@ (подписывает mike@).
Отключение в инсталяторе
С версии installer-1.4.11-alt1 введена опция загрузки nodesign; см. тж. tests/ в mkimage-profiles-desktop.
Сообщения об ошибках
Примечания
- ↑ 30M уже слишком много, 24M работает; с 26M пока неясно