Сизиф (Sisyphus)
Один из крупнейший репозиториев открытого ПО в мире
Last updated
Один из крупнейший репозиториев открытого ПО в мире
Last updated
Sisyphus (Сизиф) — это разрабатываемый ALT Linux Team проект, целью которого является развитие репозитория свободного ПО для удобной разработки на его основе дистрибутивов и других решений.
Проект Sisyphus включает следующие компоненты:
собственно репозиторий ПО (rpm- и src.rpm-пакеты);
инструментарий для подготовки и тестирования программных пакетов (hasher, gear, git; sisyphus_check, qa-robot, repocop; etc);
инструментарий обеспечения целостности репозитория (apt);
инструментарий для разработки конечных решений и, в частности, дистрибутивов (mkimage, Alterator, Installer).
В настоящий момент Sisyphus доступен для архитектур x86, x86_64, aarch64, armh, RISC-V, MIPS, Эльбрус (e2kv3, e2kv4) и ведется работа по портированию на другие платформы.
Sisyphus прежде всего предназначен для использования в качестве основы для разработки продуктов/решений для конечных пользователей:
разработка дистрибутивов общего назначения (например, ALT Server, ALT Workstation);
разработка специализированных дистрибутивов (OEM решения, ALT СП, ИВК Кольчуга и другие);
разработка дополнений к существующим дистрибутивам;
разработка решений для использования на виртуальных машинах (например, шаблоны OpenVZ, docker и т.д.).
Пожалуй, самым распространённым вариантом на сегодня является создание компанией «Базальт СПО» линейки дистрибутивов ALT .
Достаточно важно понимать, чем Sisyphus точно не является, чтобы по ошибке не создать себе больших проблем.
Sisyphus не является самостоятельным дистрибутивом. Несмотря на наличие регулярных сборок.
Sisyphus не является обновлениями для дистрибутивов. Для этого есть updates бранчи.
Sisyphus не является дополнением к дистрибутивам. Для этого есть backports бранчи.
Sisyphus не является стабильным решением для применения в mission critical задачах. Для этого есть дистрибутивы.
Косвенные варианты пока не рассматриваем, но они тоже есть.
Разработчикам решений на базе Linux
Sisyphus можно использовать в качестве основы для создания собственных решений — репозиториев, дистрибутивов и т. д.
Используя Sisyphus, разработчик получает в своё распоряжение большую базу подготовленных и в достаточной мере протестированных пакетов и набор полезных инструментов (hasher, gear, mkimage, etc), существенно сокращающих время на создание готового решения.
Достаточно логичным вариантом оказывается участие таких разработчиков в ALT Linux Team, что позволяет более активно влиять на направление развития проекта Sisyphus и, как следствие, получающихся на его основе продуктов. Таким образом можно существенно сократить затраты (временные, финансовые, человеческие) на создание конечного решения.
Продвинутым пользователям
Если пользователь не входит в Team, то ему Sisyphus может быть полезен в следующих случаях:
Можно взять отдельные пакеты, которые отсутствуют или устарели в дистрибутиве. Только сперва рекомендуется хорошо подумать, потом проверить отсутствие в backports, а уж потом брать (и то обычно лучше src.rpm, каковой и бэкпортить сборкой в бинарном окружении целевого дистрибутива).
Можно почувствовать себя «в струе», на своей шкуре ощущая, как развивается свободный софт и какие новшества (включая грабли) светят в ближайших релизах :-)
Участие в разработке Sisyphus дает возможность непосредственно влиять на вектор развития проекта и производных от него решений. Как следствие, возможность получить более качественный продукт и/или снизить затраты на разработку своих решений. Например, можно опубликовать сборку необходимого пакета и получить в ближайшем стабильном дистрибутиве этот пакет «из коробки».
См. основную страницу и далее по разделам.
Основные инструменты для подготовки пакетов
etersoft-build-utils — набор скриптов, автоматизирующий рутинные действия мантейнера
apt (apt-rpm)
repocop — платформа для запуска интеграционных тестов над пакетами
qa-robot
Нормативные документы (полиси)
Чтобы обеспечить некоторую упорядоченность в развитии проекта, существует ряд нормативных документов, регламентирующих различные (чаще технологические) аспекты разработки.
Для присоединения к разработке Sisyphus достаточно пройти процедуру вступления в ALT Linux Team.
Процедура состоит из идентификации кандидата — регистрации GPG и ssh-ключей, и проверки уровня технической подготовки — тестового задания, обычно состоящего из сборки пакета по правилам Sisyphus.
Тестовое задание может варьироваться для разных кандидатов: желающих заниматься преимущественно поддержанием пакетов в репозитории, документированием, дизайном, тестированием и т. д.
Так как Sisyphus является не сферическим конём в вакууме, а прежде всего инструментарием, то должны быть связи между ним, его потребителями и конечными продуктами/решениями.
Sisyphus и ALT Linux Team
Разработкой проекта Sisyphus занимается независимая команда ALT Linux Team. Sisyphus является главным продуктом, создаваемым командой.
Sisyphus и компания «Базальт СПО»
Разработка Sisyphus происходит при заметной поддержке (технической, организационной и т. д.) со стороны компании «Базальт СПО». Собственно, большая часть сотрудников компании также является участниками ALT Linux Team и занимается разработкой Sisyphus.
Sisyphus и дистрибутивы ALT Linux
Компания «Базальт СПО», среди прочего, выпускает дистрибутивы операционной системы Linux, которые создаются на основе стабильных срезов репозитория Sisyphus.
Процесс превращения нестабильного Сизифа в стабильный дистрибутив приблизительно описывается такой схемой:
Постоянно меняющийся Sisyphus ⇒ стабилизация Sisyphus ⇒ создание стабильной ветки ⇒ готовый дистрибутив (или линейка)
Решения других разработчиков
На базе Sisyphus построено некоторое количество публично доступных сторонних решений:
Дистрибутив для терминальных серверов ALT Linux Terminal;
Решение для IP-АТС — SeirosPBX;
Прошивка для маршрутизаторов — RAD Linux;
Наверняка есть и другие
Создать кастомную иконку в GNOME
01. Устанавливаем редактор меню Alacarte
epmi alacarte
02. Создаём ссылку посредством браузера, например Yandex Browser
Для стабильной платформы p11
yandex-browser-stable https://packages.altlinux.org/ru/p11/
Для Сизифа
yandex-browser-stable https://packages.altlinux.org/ru/sisyphus/
Добавляем кастомную иконку
Проект иконки в Krita
Получаем на выходе: