Index.html Policy
Полиси на создание indexhtml-пакетов
Содержание indexhtml-пакета
indexhtml-distro (branding-distro-indexhtml) пакеты представляют из себя дистрибутивоспецифичную «приветственную» страничку, которая открывается по умолчанию браузерами. Кроме этого, ссылка на такую страницу должна находиться в меню (и на рабочем столе?) на случай смены страницы по умолчанию пользователем.
Этот простой html-файл содержит как правило:
- Ссылки на документацию. Как минимум:
- руководство пользователя
- онлайновая документация
- Wiki
- Информацию о компании. Ссылки на web-ресурсы:
- сайт компании
- интернет-магазин
- техническая поддержка
- контакты
- Информацию о сообществе. Ссылки на web-ресурсы:
- списки рассылки
- форум пользователей
- репозиторий
- сборочная среда
Так же стартовая страница, может содержать ссылки на группы обсуждени в социальных сетях.
Стартовая страница дистрибутива может быть переведена на несколько языков. В этом случае крайне желательно размещать на странице ссылки на другие языковые варианты.
Требования к indexhtml-пакетам
Именование пакетов
Пакеты следует именовать по следующей схеме: branding-<название_дистрибутива>-indexhtml
Группа для указания в spec-файле: System/Base
Пример:
Name: branding-simply-linux-indexhtml
Group: System/Base
Каталог установки
Файлы indexhtml-пакета (html, стили, логотипы и т. п.) устанавливаются в каталог /usr/share/doc/indexhtml/
(? Совместимость со старым месторасположением index.html файла (/usr/share/doc/HTML/index.html) на переходный период обеспечивается indexhtml-common пакетом.)
Именование html-файлов
html-файлы именуются по следующей схеме: index-$lang.html, где $lang — друзначный языковой код (en, ru, uk, be, de и тп.). По крайней мере index-en.html файл обязан присутсвовать в пакете, так как именно он будет использован по умолчанию в случае ненахождения подходящего index-$lang.html файла.
Конфликты
Так как indexhtml-пакеты устанавливают свои файлы в один и тот же каталог, а также по причине того, что indexhtml-пакет дистрибутивоспецифичен, в системе не должно одновременно присутствовать более одного indexhtml-пакета. Для обеспечения этого пакеты должны иметь конфликты на каждый branding-distro-indexhtml пакет, то есть содержать в своём spec-файле:
Provides: indexhtml Cоnflicts: branding-firstdistro-indexhtml, branding-seconddistro-indexhtml, branding-thirddistro-indexhtml
Расположение в меню
indexhtml-пакеты должны содержать desktop-файл для интеграции в меню. При этом в desktop-файле указывается:
... Categories=System;Documentation; ...
Использование пакета indexhtml-common
Скрипт indexhtml-update, входящий в состав пакета indexhtml-common, создаёт ссылку (index.html) на нужный языковой вариант приветственной страницы и должен использоваться в %post-секциях spec-файла. Важно помнить, что именно index.html файл является файлом, открываемым по умолчанию браузерами. Поэтому наличие этого файла является обязательным.
Пример использования indexhtml-update в spec-файле:
... %files %ghost %_indexhtmldir/index.html ... %post %_sbindir/indexhtml-update ...
На переходный период (пока мантейнеры браузеров не перейдут на использование нового месторасположения index.html-файла) indexhtml-common также содержит страницу перенаправления со старого месторасположения index.html файла /usr/share/doc/HTML/index.html на новое /usr/share/doc/alt-docs/indexhtml/index.html