Сайт | Скачать | Видео | Wiki

Автор Тема: Рекомендации по созданию портируемых модулей  (Прочитано 9086 раз)

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

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
  • Автор темы
Актуально для PRA прежде всего. Надо расписать как правильнее делать портируемые модули и возможно даже автоматизировать процесс.

1. Что не надо делать в виде портируемого модуля?
Не надо делать модули библиотек используемые другими программами.




Дальше непридумал, пишите в теме, будем дополнять.
« Последнее редактирование: 03 Ноябрь 2015, 16:26:54 от sfs »
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
Актуально для PRA прежде всего.
С точки зрения того, что PRA совместим с замороженным срезом арчрепы - для ПРА актуально меньше других (если юзать либы только из своего среза).
1. Что не надо делать в виде портируемого модуля?
Не надо делать модули библиотек используемые другими программами.
Все что портируется - нужно обязательно портировать. Я не выявил побочных эффектов
Не получается с некоторыми либами , которые имеют под-либы в /usr/lib/подлибы , которые не перенести
Для автоматизации написал mkport
Если бинарников несколько - см. пример ffmpeg
Проги, использующие зависимый модуль надо портировать в /opt/зависимый_модуль. Т.е. mpv и vlc портируем в /opt/ffmpeg

Надо ли это расписывать? Модули делают пара человек...

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
  • Автор темы
закрываем тему. пусть эти двое и дальше трудятся. интересно кто второй конечно
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
закрываем тему. пусть эти двое и дальше трудятся. интересно кто второй конечно
2й - ты :) Закрывать не надо. В надежде на 3го  ;)
Надо ли расписывать - имел ввиду что человек , посмотревший ffmpeg+mpv+vlc сам все поймет
Если не поймет - рано делать модули

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
Еще один побочный плюс портирования:
При сборке нового модуля можно не париться, что пропустишь какую-то либу, которая окажется в системе из другого модуля софта

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
  • Автор темы
сделай модуль blueman и приведи последовательность действий.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
Из чего сделать blueman?
1. из арчрепы pra03 среза
2. из свежей арчрепы
3. aur
Для чего:
а. продемонстрировать мое видение методики создания
б. нужен рабочий модуль blueman
в. есть рабочий blueman - надо портировать
Сразу предупрежу - мне проверить не на чем и опыта использования нет

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
  • Автор темы
а, б
НУ откуда я знаю из какой репы надо делать.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
Если версия в свежем срезе не изменилась (нет нужных нам улучшений) - проще из pra03 среза
ок - попробую сделать

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
Посмотрел bluman - пропало желание его делать
Предлагайте для обучения что-то более полезное

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
  • Автор темы
очень показательный модуль, gtk3, python

в систему ты все равно bluetooth не включаешь, так что за компактностью гнаться не стоит.

я на LOR тему создавал, два калеки отписались что под xfce они юзают blueman
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
очень показательный модуль, gtk3, python
Показательнее некуда  :) Уже по одному из них для ПРА не подходит
Вроде можно перекомпилить на gtk2
Давай про блютуз в его тему перейдем

Оффлайн dim-kut

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 1021
  • Репутация: +41/-0
Всем привет !
Надо ли это расписывать? Модули делают пара человек...
Надо! Если не распишите, то эта самая пара человек и сможет только делать модули. Хотя там в теме >2 человек, но сколько разговоров о неправильных действиях. А как сделать правильно нигде не написано. Я искал на форуме и в документации, не нашел.

Вы извините, что я тут приперся и сразу критикую. Я хотел тихо сделать свои модули и заниматься своим делом, но не выходит. Два вечера я потратил, чтобы подразобраться с новой системой, сейчас целый вечер сижу и не могу вкурить как их правильно  делать. Скрипт mkport поражает своей информативностью :-) Бинарники и либы надо в /opt ? А каким механизмом либы цепляются ?

P.S. И да, mkport без параметров портит систему, уже нарвался.
« Последнее редактирование: 20 Январь 2016, 20:37:41 от dim-kut »
Engineering is the art of making what you want from things you can get.

Оффлайн Pro

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
  • Автор темы
P.S. И да, mkport без параметров портит систему, уже нарвался.
исправили уже.

Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33974
  • Репутация: +231/-0
    • PuppyRus-A
Всем привет !
Какие люди!!! Надолго к нам?

http://wiki.puppyrus.org/setups/portable
Практически (кроме теста модулей делать от root; делать на минимально базовой системы, чтобы либы из левых модулей не учлись):
1. Берем непортированный модуль. Проверяем работоспособность
2. unsquashfs mod.pfs
3. cd squashfs-root/usr/bin
4. mkmod запускаемый_бинарник
5. если в /usr/lib были папки - возможно их придется вернуть на место. В идеале перекомпилить в /opt
6. Пакуем готовый порт. модуль mkpfs
7. Проверяем работоспособность
Разберите пару портированных модулей - и так все поймете
Основано на http://wiki.puppyrus.org/setups/portable#ld_library_path