Хартия сообщества
Принципы работы общего репозитория и совместного сопровождения пакетов
На этой странице
Это живой документ, описывающий принципы работы общего пространства сообщества вокруг RPM-пакетов для РОСА: личных репозиториев, группового сопровождения и возможного общего репозитория.
Статус: хартия задаёт ориентиры для совместной работы. Конкретная техническая реализация может меняться по платформам и группам, но принципы ниже стоит считать базовой моделью взаимодействия.
Цели
- Дать пользователям РОСА понятный путь от личной сборки пакета до совместного сопровождения.
- Аккумулировать пакеты, собранные участниками на ABF, в общий набор проектов и репозиториев.
- Вовлечь растущее сообщество в развитие экосистемы.
- Сохранить минимум бюрократии и максимум ответственности за качество публикуемых пакетов.
Репозитории и доверие
- main — основной репозиторий. Подключен по умолчанию. Наполняется и контролируется сотрудниками РОСА. Все пакеты проходят QA перед публикацией. Максимальный уровень доверия.
- contrib — дополнительный репозиторий. Подключен по умолчанию. Наполняется и контролируется сотрудниками РОСА. Дополнительного контроля пакеты не проходят. Средний уровень доверия.
- non-free — официальный репозиторий с несвободными пакетами. Обычно присутствует в зеркалах вместе с
mainиcontrib; правила публикации и подключения определяются политиками РОСА. - community — общий репозиторий или группа сопровождения сообщества, если такая схема используется на вашей платформе. По умолчанию обычно не подключается. Уровень доверия ниже, чем у официальных репозиториев, поэтому к качеству и проверяемости пакетов требования должны быть особенно понятными.
Как подключить community
В официальных зеркалах платформ ROSA обычно присутствуют репозитории main, contrib и non-free (иногда также debug). Репозиторий community, если он используется, подключается отдельно.
- Рекомендуемый способ: использовать готовый пакет с описанием репозиториев, если он существует для вашей платформы.
- Ручной способ: уточнить актуальный адрес репозитория в телеграм-чате или на форуме и добавить его в конфигурацию пакетного менеджера.
Где искать адреса репозиториев
- Базовые репозитории описаны в пакете
rosa-repos. - Репозитории, опубликованные через ABF, размещаются на
abf-downloads.rosalinux.ruи имеют стандартную структуру путей. Личный репозиторий выглядит так:
https://abf-downloads.rosalinux.ru/%username_personal/repository/$PLATFORM/$ARCH/main/release/
- Адрес
communityможет отличаться по платформам; актуальный адрес уточняйте у администраторов или используйте пакет с описанием репозиториев, если он есть.
Как добавить проект и стать участником
Базовый процесс работы:
- Получить доступ к ABF. Напишите в телеграм-чате или на форуме.
- Собрать и отладить проект в личном репозитории.
- Проверить пакет локально, затем в
mockили ABF. - Запросить ревью или доступ в общую группу сопровождения, приложив ссылку на проект и сборку.
- Только после ревью переносить пакет в общий репозиторий или совместный проект.
Правила
Запрещено
- Публиковать пакеты, которые сознательно ломают систему или скрытно выполняют вредоносные действия.
- Выпускать пакеты, которые приводят к проблемам загрузки/обновления ОС при подключенном
community. - Хранить распакованные исходники в Git-репозитории пакета.
Обязательно
- Пакет должен собираться и устанавливаться на целевой платформе, актуальной на момент публикации.
- Пакет должен быть воспроизводим: как минимум локальная сборка и ещё одна чистая сборка (
mockили ABF). - В пакетах должны корректно отражаться лицензии и авторские права.
- Должны соблюдаться базовые правила качества: корректные зависимости, корректное размещение файлов, отсутствие конфликтов с системными пакетами.
Приветствуется
- Оформление SPEC-файлов в соответствии с принятыми правилами в РОСА.
- Указание источника при заимствовании SPEC-файлов.
- Пакеты, которые собираются без подключения
community(минимизация зависимостей от него). - Обновление/исправление уже существующих проектов вместо создания дубликатов.
Минимальные требования к участнику
- Адекватность при общении.
- Наличие одного проекта, удовлетворяющего правилам выше.
Что дальше
- После попадания проекта в общий репозиторий или группу сопровождения его поддержка становится совместной ответственностью.
- После сборки в группе пакеты проекта могут быть доступны пользователям соответствующего репозитория сообщества.
- Проект может быть перенесён в более официальный сопровождаемый контур, если пакет стабилен и востребован.
Причины удаления проекта
- Нарушения пунктов «Запрещено».
- Требования правообладателя исходного кода.
Причины лишения доступа
- Систематические нарушения правил.
Администрация ООО «НТЦ ИТ РОСА» здесь понимается как инфраструктурная и координирующая сторона, а не как обязательный повседневный редактор каждого пакета сообщества.
Гарантии
Внимание! Вы используете софт из репозитория “community” на свой страх и риск. ООО «НТЦ ИТ РОСА» не несет ответственности за софт, размещенный в репозитории, а только безвозмездно предоставляет свои ресурсы участникам для сборки и хранения пакетов.