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

Автор Тема: Реализация .PFS (тестирование)  (Прочитано 206745 раз)

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

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
  • Автор темы
Re:Реализация .PFS (тестирование)
« Ответ #435 : 19 Май 2013, 19:18:55 »
pet2pfs Version 0.8 : pet.specs получается в корне pfs - можно поправить?
Вроде поправил.
Оказалось что в petinstall соотв. код был, а в pet2pfs я его забыл поставить.

Обновлённый пакет во вложении.
Шапку обновлю чуть позже, сейчас со временем напряг...

UPD: Обновил шапку.



По поводу прогрессбара - я вижу два варианта:
   Выводить окно терминала с pfsmerge вместо окна "Идёт процесс... " (можно сделать опционально).
   Выводить в окне информацию о конкретном действии (Добавление, Удаление, Чистка, Сжатие).

Парсить скриптом прогрессбар mksquashfs'а, даже если получится, не рационально (ИМХО), это вполне может замедлить процесс на слабых компьютерах.
« Последнее редактирование: 21 Май 2013, 21:17:59 от Zay »

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
  • Автор темы
Re:Реализация .PFS (тестирование)
« Ответ #436 : 21 Май 2013, 21:16:12 »
Обновлены скрипты pet2pfs и petinstall.

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Реализация .PFS (тестирование)
« Ответ #437 : 24 Май 2013, 16:06:56 »
http://forum.puppyrus.org/index.php/topic,14229.msg76946.html#msg76946

наверное надо добавить в скрипты графического подключения pfs
формат команды glib-compile-schemas /usr/share/glib-2.0/schemas/
« Последнее редактирование: 24 Май 2013, 16:09:25 от Pro »
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
  • Автор темы
Re:Реализация .PFS (тестирование)
« Ответ #438 : 24 Май 2013, 17:35:54 »
Может не в графические скрипты, а в pfsload и pfsunload лучше?

Сейчас там есть вот такой код:
Код
[ `find "${mountpoint}/lib/modules/$(uname -r)" 2>/dev/null | grep -ic "ko$"` -gt 0 ] && depmod &
if [ ! -z "$(which ldconfig)" ]; then
  [ -d  "${mountpoint}/usr/lib" -o -d "${mountpoint}/usr/local/lib" ] && ldconfig &
fi

Надо ещё запускать "glib-compile-schemas /usr/share/glib-2.0/schemas/" при наличии каталога "/usr/share/glib-2.0/schemas/", правильно?

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Реализация .PFS (тестирование)
« Ответ #439 : 24 Май 2013, 17:47:53 »
да и надо подумать стоит ли воткнуть такую проверку в скрипты автозапуска
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
  • Автор темы
Re:Реализация .PFS (тестирование)
« Ответ #440 : 11 Июнь 2013, 20:15:18 »
Пакет обновлен.

Добавлен код запуска glib-compile-schemas в скрипты pfsload и pfsuloand.


Добавлена новая функция, полезная для сборки программных модулей PFS:

В файл PFS теперь можно добавить команду запуска основной программы, имеющеся в готовом модуле.
После подключения такого PFS пользователю будет предложено запустить указанную команду. Так удобнее использовать PFS с одной основной программой.
Этот функционал задуман как альтернатива скрипту, запускающемуся при подключении модуля (скрипты автозапуска, выполняемые от root'а - потенциальная угроза).

Команду запуска можно добавить в существующий модуль с помощью скрипта pfsmerge (параметр -a / --add-command) или с помощью стандартного графического редактора PFS.
После повторного редактирования / пересборки PFS встроенная команда теряется.
Рекомендуется писать команду максимально кратко (например "firefox"). Можно указывать только название исполняемого файла (параметры командной строки использовать нельзя).
Пользователь увидит предложение запустить программу только при наличии исполняемого файла.
Текст команды будет показан пользователю перед запуском.

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Реализация .PFS (тестирование)
« Ответ #441 : 18 Июль 2013, 16:13:32 »
Добавлен код запуска glib-compile-schemas в скрипты pfsload и pfsuloand.
есть информация что не срабатывает при автоподключении модуля puppyrus-soft.pfs
автоподключение делается через pfsload или как то иначе?
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
  • Автор темы
Re:Реализация .PFS (тестирование)
« Ответ #442 : 19 Июль 2013, 15:56:36 »
Насколько я помню, при загрузке системы pfsload запускается с параметром -n (это отключает некоторые проверки, в т.ч. запуск glib-compile-schemas).
Думаю лучше всего добавить в rc.sysinit код запуска glib-compile-schemas после кода подключения модулей.

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Реализация .PFS (тестирование)
« Ответ #443 : 19 Июль 2013, 16:24:42 »
ок понял добавлю
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн RoDoN

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 6287
  • Репутация: +141/-0
Re:Реализация .PFS (тестирование)
« Ответ #444 : 22 Август 2013, 09:45:15 »
Столкнулся с такой проблемой, разобрал в PRA пакет zzzz-rootcopy-s06.pfs через pfsextract, а потом для получившегося файла (размер уже почему-то 4096 байт вместо 52 Кб) сделал unsquashfs - результат верхние два окна на рисунке:
    
в нижнем окне тот же zzzz-rootcopy-s06.pfs открытый как каталог  ???
То, что на рисунке делал в ROX по ПКМ, но тоже самое получается и в mc. Т.е., если через pfsextract разобрать мета-пакет, то в получившихся одиночных pfs-файлах внутри уже чего-то будет не хватать, а если для мета-пакета сделать просто unsquashfs, то все файлы на месте.
Файл zzzz-rootcopy-s06.pfs взят просто для примера, такие проблемы бывают иногда и с др. файлами. Провел подобный эксперимент с этим же файлом в PR-13.07 - результат тот же  :(.

При разборке в консоли пишет:
Код
# pfsextract /mnt/home/pr3/modules/zzzz-rootcopy-s06.pfs
cp: невозможно выполнить stat для `/tmp/.pfs/extract/zzzz-rootcopy-s06.pfs/pmount/home/live/.config/rox.sourceforge.net/OpenWith/.application_x-ext2-image/Подключитьотключить': Нет такого файла или каталога
Extract error!
Так вот "Подключитьотключить" в оригинале было, как "Подключить\отключить"  (я брал из PR-13.07 без изменения) и оказывается все проблемы из-за слеша "\" в имени, т.к. когда заменил на "Подключить(отключить)" и сделал новый .pfs, то он нормально разобрался, а потом опять собрался с тем же размером 52 Кб и ничего не было потеряно.
Напрашивается вывод, что нельзя использовать слеши "\" в именах файлов, которые будут упаковываться в .pfs !

З.Ы. Но ведь, если система позволяет использовать слеш "\" в именах файлов, то наверно стоит в скриптах сборки или разборки .pfs добавить проверку на наличие слеша "\" в именах упаковываемых файлов, конечно если это сильно не затормозит процесс обработки или хотя бы в инструкцию по .pfs инфу добавить.
Lenovo G500 (i3-3110M, 8 Гб, Intel + Radeon HD 8570)
PRA 16.12 JWM, Runtu 22.04 x64 XFCE

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Реализация .PFS (тестирование)
« Ответ #445 : 28 Сентябрь 2013, 15:52:04 »
прошу рассмотреть возможность выполнения команды ldconfig при подключении pfs в котором имеются файлы *.so в каталогах /lib , /usr/lib и /usr/X11R7/lib в случае если таких файлов нет, выполнять ldconfig ненадо.
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34033
  • Репутация: +231/-0
    • PuppyRus-A
Re:Реализация .PFS (тестирование)
« Ответ #446 : 28 Сентябрь 2013, 16:51:01 »
А что не так если не сделать ldconfig ?

Оффлайн Pro

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

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
  • Автор темы
Re:Реализация .PFS (тестирование)
« Ответ #448 : 29 Сентябрь 2013, 17:27:16 »
прошу рассмотреть возможность выполнения команды ldconfig при подключении pfs в котором имеются файлы *.so в каталогах /lib , /usr/lib и /usr/X11R7/lib в случае если таких файлов нет, выполнять ldconfig ненадо.
Сейчас ldconfig выполняется если в подключаемом PFS есть каталоги "/usr/lib" или "/usr/local/lib" (наличие файлов *.so не проверяется).
Нужно ещё добавить проверку если есть "/usr/X11R7/lib" ?

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re:Реализация .PFS (тестирование)
« Ответ #449 : 30 Сентябрь 2013, 02:36:38 »
сейчас ldconfig никак не может выполняться т.к. находится в devx

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