Для того, чтобы сделать свой модуль (назовём его для примера mtry), который бы появлялся в rss_menu нужно сделать следующее:
1. Файлы: eсли это чисто web/rss модуль, то достаточно создать каталог mos/www/modules/mtry и положить туда пхп файлы.
2. Прописать модуль в Package Manager:
Добавить строки в mos/etc/pm/installed
- Code: Select all
[mtry]
revision = 1
title = "test module"
role = rss
files = "www/modules/mtry/"
3. Прописать модуль в rss_menu:
Создать файл www/modules/mtry/def_rss.php
- Code: Select all
<?php
// define RSS item
$nav_rss['mtry'] = array (
'module'=> 'mtry',
'rss' => getMosUrl().'/modules/mtry/index.php',
'icon' => 'mtry-logo.png',
'title' => 'Test module'
);
?>
Всё. Теперь в главном меню плеера будет пункт "Test module"
Чтобы собрать модуль в пакет, который можно потом устанавливать стандартными средствами нужно дать команду
- Code: Select all
pm make mtry
В /tmp будет создан файл mtry.tar.bz2
Чтобы потом его установить (если он не прописан в репозитории)
- Code: Select all
pm install mtry alone
Если в /tmp есть уже файл, то он просто установится, если нет - будет качаться с репо.
Параметры модуля, которые можно использовать в mos/etc/pm/installed :
revision - номер ревизии (обязательный)
title - Название модуля (обязательный)
role - роль (обязательный) Возможные роли:
daemon - служба
core - модуль ядра moS
patch - патч
package - пакет (скрыт в списке модулей)
web - веб модуль
rss - RSS модуль
util - Утилиты
Деление условное и сделано чисто для удобства.
Исключение - rss. При вызове такого модуля цепляются классы для работы с RSS.
files - список файлов/каталогов модуля (обязательный).
check - вызов скрипта проверки модуля. Если опущен, pm пытается найти скрипт
в mos/etc/pm/check с именем, совпадающим с именем модуля. Если скрипта
нет, то считается, что модуль можно устанавливать всегда.
check возвращает 0 - можно устанавливать,
1 - нельзя (модуль не показывается в списке модулей), 2 - встроенный.
env - enviroment. Описание конфигурации системы.
Версия ядра + версия uclibc. Возможные варианты 1228, 1230, 3430.
Если опущено, то устанавливается на любую конфигурацию.
require - список необходимых для работы модуля модулей.
init - управляющий скрипт модуля в mos/etc/init
backup - список файлов, которые бекапятся при обновлении модуля
config_before - действие перед редактированием конфига.
Параметр, который передаётся в управляющий скрипт init
config_after - действие после редактирования конфига.
Параметр, который передаётся в управляющий скрипт init
config_edit - путь файла конфига
config_link - ссылка на страницу конфига модуля.
config_edit и config_link взаимоисключающие.
Либо вы редактируете файл, либо вызываете страницу.
navy_title - название в меню Навигация
navy_frame - url того, что откроется при клике на пункт в меню Навигация
size - размер модуля в Кбайтах. Считается автоматом при сборке модуля.