История дистрибутивов проекта PuppyRus после 2013 года
Положение дел на август 2013 года
В настоящее время команда разработчиков PuppyRus столкнулась с важными проблемами в дистрибутиве:
Недостаточное для компиляции и обновления своего репозитория количество разработчиков
Отсутствие своего пакетного менеджера с закачкой и контролем зависимостей. Невозможность использовать чужой из-за собственного формата пакетов .pfs Это создает трудности разработчикам при сборке дистрибутива и пользователям при установке софта.
Поиск решения
В результате обсуждений на форуме, проверки существующих сторонних репозитoриев, проведенных тестовых сборок систем на базе различных deb, rpm и и др. пакетов был выбран репозиторий Arch linux.
При работе над новым дистрибутивом ориентир будет взят на использовать лучшего из
3 источника и 3 составные части
-
-
Общее: frugal,
DEVX, некоторые утилиты
Отличия: initrd, софт модулями (не «все включено»), только русская версия, более свежий софт (из arch), свой
менеджер модулей
-
Общее: frugal, initrd, некоторые утилиты
Отличия: построен на пакетах slackware
Остальное - собственные разработки : свои скрипты и программы, скомпиленные по своим рецептам
Преимущества использования репозитория Arch Linux
Достаточно большой размер репозитария и современные версии программ
Если отдельные пакеты не устраивают размером или зависимостями можно перекомпилировать и использовать свой дополнительный репориторий вплоть до полного перехода на свой репозиторий, как в
Manjaro_Linux или
ConnochaetOS
Упрощение сборки дистрибутива и установки софта. Возможно обновление дистрибутива силами одного разработчика за час
pacman не имеет единого файла (базы данных) списка установленных пакетов. Это позволяет удобно делить дистрибутив на модули
-
Наличие очень качественной
wiki Arch Linux. Многие материалы уже переведены на русский язык
3 уровня использования FRUGAL с ПМ (пакетным менеджером)
По квалификации пользователя
FRUGAL.
sfs-get подключение готовых модулей.pfs. Доступно каждому. Достаточно скопировать в /modules. В итоге каждый получает дистрибутив с тем софтом, который нравится ему
Работа с ПМ (пакетным менеджером) (в PRAR :
pacman) - установка в сохраненку и создание модулей или FULL
-
Подробности, обсуждение
Методика сборки PRA
Непонятные термины и сокращения - в нашей и arch wiki
Цель
маленький и быстрый модульный фругал для дома.
Оптимизирован для флэшек и copy2ram
В мин. конфигурации пригоден для устаревшего железа
Реализация
porteus-initrd (русифицирован и допилен) - оптимален для модульного фругала. Приглядываюсь к uird
Компилим ядро по спец рецепту (определенные модули монолитно) - дает возможность не иметь в initrd модулей ядра.
Средствами pacman, в chroot , на базе замороженного (ARollbackM) среза Arch репы собираем минимальную базу с Х. Можно часть (все) пакетов перекомпилить и использовать свои.
-
Скриптом trim удаляем маны и т.п. и отделяем dev часть. База пакетов (pkg) pacman /var/lib/pacman/local - разделяема. Каждый модуль у которого сохранена dev часть должен содержать свою часть pkg базы. Порезанные модули не имеют pkg информации и невидимы для ПМ. При использовании pacman * –force замещаются. Оптимально все портировать
Свои скрипты - отдельным модулем 070 - собираются pfsmerge. Можно бы сделать pkg и собирать pacman-ом, но pfsmerge проще
Остальной софт собирается методом:
В итоге получаем
ПМ Совместимость с использованным срезом арчрепы при любой комбинации модулей
Независимость модулей софта друг от друга (если эти зависимости - только крупные типа qt mesa - не прописаны)
Совместимость с AUR ABS при подключении dev модуля
Мы создали свой 1й уровень. На котором неподготовленному и (или) ленивому юзеру проще, чем юзеру full+ПМ. При этом 2,3 уровень не сломаны. Т.е. возможно все (если умеешь)
Arch выбран не по политическим мотивам, а из-за ARM (морозить репу) и pacman (т.к. база пакетов без общих индексов)
На 1м уровне проще :
На 2м уровне можно встроить в арч репу свою
Заплатить за «маленький и быстрый » пришлось урезанием функционала ненужного домашнему юзеру
Ну так для других применений PRA и не планировался
По изложенной методе можно собирать дистр на любом доноре, но без заморозки репы и pacman будут проблемы с работоспособностью ПМ (раздувание сохраненки обновлениями репы). Можно решать регулярным обновлением базы
Март 2017 г. PRA Roll
-
Пришло понимание, что оптимизация размера и портирование актуально только для определенных приложений и ситуаций (запуск с флэшки и т.п.)
В итоге - прекращение поддержки PRA03middle, PRA03game, PRA64 и …
PRA-roll с глобальными изменениями:
Декабрь 2018 г. PRA6408
Ноябрь 2019 г. LF01
Освоена сборка на репозитории debian :
DDR01 i686
Двойная сборка LF01 = LFA1801 (переименован PRA6408) + LFD10 (Debian 10) x86_64. Портированные модули подходят к обоим дистрибутивам
-
Июль 2020 г. PRAR20.08
Апрель 2021 г. LFDS
Октябрь 2022 г. Вынужденная замена баннерной рекламы google -> yandex. Монетизация https://boosty.to/sfslinux
Март 2023 г. LFU
Заключение
PuppyRus остается дистрибутивом
максимально компактным
функциональным
модульным
Добавляется совместимость с репозиториями больших linux и пакетный менеджер.
Текст подготовлен : sfs, Pro