0 Пользователей и 1 Гость просматривают эту тему.

Как правильно упаковать пакет скина
« : 23 Декабря | 2016г. | 14:00:52 »
Как правильно упаковать пакет скина

Для примера возьму свой скин HDLine-Rebrending

Начнём с файла control, вот его содержимое
Извините, вам запрещён просмотр содержимого спойлеров.
Package: enigma2-plugin-skins-hdline-rebranding

plugin - Отображается в плагинах
skins - Категория в которой отображается скин
hdline-rebranding - Имя скина
Version: v1.0 - Версия скина
Description: Skin HDLine-ReBranding v1.0 by MIC71 - Описание скина
Section: base - Для установки с пульта или телнета не важно
Priority: optional - Для установки с пульта или телнета не важно
Maintainer: mic71 < mic71@list.ru > - Автор скина
Architecture: all - Тут лучше писать all (все), т.к. ресиверы разные, если написать mips32el или mips32el-nf, то в некоторые ресиверы он не встанет
OE: enigma2-plugin-skins - Тут многие пишут ОЕ2.0 или ОЕ1.6, я пишу так как есть, если ставить с пульта роли не играет
Homepage: www.giscub.tv - Домашняя страница автора (можно оставить пустым)
Source: ссылка - исходники (можно не писать, оставить пустым)
ОБЯЗАТЕЛЬНО: В конце файла должна присутствовать пустая строка!

Далее рассмотрим описание файла postinst (можно оставить стандартным) это не столь критично
Извините, вам запрещён просмотр содержимого спойлеров.
Возьмём последние 3 строки, они не обязательны
sleep 5 - Рестарт Enigma2 через 5 сек
rm -rf /tmp/*.ipk - затирание ipk пакета после установки
killall -9 enigma2 >/dev/null 2>&1 - остановка Enigma2

Ну а теперь о самом интересном, можно оставить конечно стандартный файл postrm, ну либо немного изменить
Вот как пример:
Извините, вам запрещён просмотр содержимого спойлеров.
rm -rf /usr/share/enigma2/HDLine-ReBranding - Затирание папки скина
sleep 5 - Рестарт Enigma2 через 5 сек
killall -9 enigma2 >/dev/null 2>&1 - Остановка Enigma2
2 нижних строчки не обязательны

При удалении скина, команда с телнета будет такая
opkg remove enigma2-plugin-skins-hdline-rebrandingИменно та верхняя строчка из файла control Package: enigma2-plugin-skins-hdline-rebranding

Теперь рассмотрим вариант упаковки компонентов, я их упаковываю отдельно, файл control и postinst можно пропустить, они такие же как и в папке скина, кроме названия файла Package: dvpapi-components-hdline-rebranding
Из этого следует, что в плагинах компоненты отображаться не будут, т.к. категории dvbapi и components в плагинах просто нет, удаление только с телнета

Теперь маленькое отступление, в моём скине тоже присутствуют компоненты из клубной библиотеки, ниже приведу скрины, и чтобы при удалении компонентов они не удалились (удалятся только *.ру файлы) в файле postrm я прописываю только те компоненты, которые не входят в клубную библиотеку, чтоб при удалении компонентов у вас не осталось мусора от скина
Вот для наглядности компоненты и рендеры которые входят в библиотеку
Извините, вам запрещён просмотр содержимого спойлеров.
Это содержимое файла postrm
Извините, вам запрещён просмотр содержимого спойлеров.
Смотрим по порядку, то что удалится при удалении компонентов, заметьте что прописано расширение *.pyo, т.к. файлы *.py удаляются автоматом, итак у меня всего 3 конвертера, не входящие в клубную библиотеку, это:
rm -rf /usr/lib/enigma2/python/Components/Converter/MSNWeather2.pyo
rm -rf /usr/lib/enigma2/python/Components/Converter/ModuleControl.pyo
rm -rf /usr/lib/enigma2/python/Components/Converter/GoliathHDServiceInfo.pyo

И 3 рендера:
rm -rf /usr/lib/enigma2/python/Components/Renderer/GoliathHDCams.pyo
rm -rf /usr/lib/enigma2/python/Components/Renderer/GoliathHDemu.pyo
rm -rf /usr/lib/enigma2/python/Components/Renderer/ScrollLabel.pyo


Всё остальное из клубной библиотеки и удалять их не нужно, т.к. это может коснуться других скинов, замечу тут собраны только необходимые компоненты для работы скина, и всю клубную библиотеку ставить не нужно
Ну и ниже 2 строчки, это остановка Enigma2 и рестарт через 5 сек
sleep 5
killall -9 enigma2 >/dev/null 2>&1

Это вы делаете на своё усмотрение, я это делаю потому, чтобы потом руками с пульта не нужно перегружать ресивер, чтоб активировались или деактивировались те или другие компоненты скина
И последнее: Пакет скина в файле control нужно писать только через тире вот так - enigma2-plugin-skins-hdline-rebranding
Если написать так: Package: enigma2-plugin-skins_hdline-rebranding, т.е. употребить нижнее подчёркивание, то пакет встанет, но с ошибками и удалить с телнета его будет просто невозможно, т.к. при команде opkg remove писать будет нечего
Или некоторые называют пакет так: Package: enigma2-plugin-skins-hdline-rebranding_openpli, что есть неправильно, это лучше писать в строке Version: но опять через тире, вот так: Version: v1.0-openpli

Вобщем я написал и разложил по полкам как нужно делать по уму для корректной упаковки, а там сами решайте как вам упаковывать

P.S. файлы postinst, postrm нужны обязательно, без них сотрётся только запись в файле status а компоненты и скин при удалении останутся не тронутыми
1.png
2.jpeg
3.jpeg
4.jpeg
5.png
6.jpeg
  • DM-7080
Самое новое и интересное публикуем в Телеграм-канале. Подписывайтесь!
Поддержать проект
 
Сказали Вам Спасибо: Viva, Ser6, Марчелла, martina3, YoliKWolF, sety, Smit, rodina, сергей 999s, fff-fff