[newbies] Документация по сборке пакетов под ALT
Alexei Mezin
alexei.mezin на gmail.com
Вт Окт 4 11:55:09 MSK 2022
> Какие моменты стоит максимально подробно осветить в
> документации, которые на данный момент являются важными, но информации
> о которых крайне мало?
А АЛьТа есть проблема: вся технология сборки и поддержания пакетов
ориентирована "на программистов", поэтому документации по основным
техническим моментам нет или она скудна. Подразумевается, что сборщик
пакетов в достаточной мере владеет git'ом. Наверняка это так и есть для
программистов. Но НЕпрограммисты иногда тоже хотят поддерживать пакеты.
Как именно писать spec-Файл -- это не самая сложная проблема. spec'и
всех пакетов доступны в два клика, всегда можно посмотреть примеры. А
вот документации по собственно технологии сборки мало и/или она очень
разрозненная.
Есть простейшая пошаговая инструкция "клонируем репо - обновляем -
собираем", но мне всегда казалось, что они неполная и не покрывает чуть
более сложные, но типовые случаи.
По моему НЕпрограммистскому опыту поддержки пакетов, нужны следующие
пошаговые инструкции
* (уже есть, но надо пересмотреть, актуализировать, дополнить)
"Сборка пакета, который был в репозитории, но сейчас не поддерживается"
- клонирование имеющегося пакета себе
- способы обновления исходников
- способы внесения изменений в spec, включая chahgelog
-- хорошо бы с отсылкой сразу на страницу с RPM-макросами и полиси по
упаковке иконок, документации и т.п.
- локальная сборка, включая ссылку на сборку под другие архитектуры
- сборка на сборочнице и добавление в репозиторий, включая полиси и
инструкции по добавлению в другие ветки
* "сборка пакета с нуля"
- с рассмотрением вариантов "исходники в архиве", "исходники в git". С
указанием типовых действий при дальнейшем обновлении пакета
* "пересборка/обновление пакета, который обновил другой член команды"
- с объяснением возникающими проблемами с наследованием, и как их
объезжать
* "пересборка пакета другого мэйнтейнера"
- полиси кто когда и как может обновлять чужой пакет, как избежать
проблемы с наследованием
* "подготовка исходников для сборки"
Что-то вроде "установка исходников и зависимостей в хашере, тестовая
configure;make;make install в нем же, тестовый запуск, проверка
работоспособности, проверка валидности desktop/mime файлов, документации
и прочее, создание патчей для исправления выявленных ошибок, перенос
результатов в git-репозиторий пакета". Ну или как там правильно
проделывать все эти вещи с минимальными усилиями, минимальным вредом для
хост-системы и т.п.
Подробная информация о списке рассылки devel-newbies