Sfs-get. Менеджер модулей .pfs и .sfs
Функционал
Позволяет разместить свой репозиторий модулей на бесплатных общедоступных ресурсах
Поиск локально или в репозитории по названию модуля
Скачать модуль
Подключить (выше, ниже базы, в память)
Стартовать
Отключить
Логика работы
Ищет по названию пакета или его части файл локально (на hdd). Если находит - запускает
Если не находит - ищет с maxdept=3 на подключенных носителях и в списке репозиториев /etc/sfs-get
При нахождении предлагает загрузить , подключить и запустить
Во всех конфигах можно экранировать строки : #
Ярлык для загрузки программы
Можно делать ярлык (/usr/share/applications/*.desktop) для программы, которой нет в базе. Например Exec=sfs-get gpartedsfs-get doublecmd
Название программы можно указывать не до конца. Версию и т.п. можно опускать.
При его вызове произойдет запуск программы (если модуль уже подключен) или предложение скачать и запустить
Конфигурация репозиториев
Типы поддерживаемых репозиториев
C 2018 г. используются только
WWW репозиторий.
git.com тоже рабочий
WWW репозиторий (ftp-http)
Все совсем просто - добавляем файлы на ftp-http.
В /etc/sfs-get/www.list добавляем свой http
Их список, обновление sfs-get делает сам
Недостаток - требуется ftp-http , поддерживающий выдачу списка файлов wget –no-remove-listing . Такие бесплатные ресурсы редки.
Пример:
mirror.yandex.ru/puppyrus/pfs/packages-Icewm
mirror.yandex.ru/puppyrus/pfs/packages-base
github.com репозиторий
Реализован в версиях sfs-get >= 221130
Модули.pfs нужно заливать в Releases. Только сюда можно залить файлы больше 25мб
В /etc/sfs-get/www.list добавляем api.github.com/repos/аккаунт/репозиторий/releases/tags/таг
Пример:
api.github.com/repos/sfs-pra/portable/releases/tags/portable64-23
api.github.com/repos/sfs-pra/portable/releases/tags/portable64
Конфиг
Наиболее функциональный вариант. Часть функционала пока не реализована (зависимости). Трудозатратность - самая большая. Синтаксис конфига сложноват. Специального редактора конфига нет.
#1. название \
#2. версия \
#3. url \
#4. filename \
#5. md5sum \
#6. раздел(как в меню пуск) \
#7. альтернативы \
#8. размер Мб \
#9. зависимости \
#10. комментарий \
#11. проверен под
Браузер ;\
;\
http://ubuntuone.com/75TTZ5LUS2CWpAPKCwsdsU ;\
firefox_7.0.1ab_520.sfs ;\
;\
Интернет ;\
firefox chromium-browser opera midori dillo links lynx ;\
17 ;\
;\
;\
LupuRus520 SFSL Slacko5.3
doublecmd ;\
0.5.0-1.gtk2.i386.lite ;\
http://ubuntuone.com/p/1F2w/ ;\
doublecmd_0.5.0-1.gtk2.i386.lite.sfs ;\
;\
Файловая система ;\
;\
5 ;\
;\
;\
LupuRus520 SFSL Slacko5.3
Пока обрабатываются только поля 1,3,4,7. Остальные - на перспективу. Затейливый формат - для удобства редактирования.
Вместо непосредственно программы, можно предлагать целый класс с альтернативами (см. Браузер) в sfs-user.list
URL репозиторий (список ссылок)
Наиболее прост в реализации и развертывании
Название файла со ссылками (без путей) в /etc/sfs-get/links.list. Этот файл находится в /etc/sfs-get/
Ссылки - любые, которые сможет скачать wget.
Имена файлов - не хэши. Т.к. конфига здесь нет - по
URL нужно будет понять название программы и версию
Пример:
http://dl.dropbox.com/u/84540362/puppyrus/packages-pfs/abiword-2.9.1-i486.pfs
http://cdn.2safe.com/523226033048/OPERA-12.15f-s01.pfs
Эти же ссылке можно использовать в первом типе
Зависимости
sfs-get - это скрипт.
Должен работать в любом frugal-aufs дистрибутиве
Утилиты монтирования модулей можно менять в начале скрипта mnt_sfs
Необходимо наличие в дистрибутиве :