[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