05 марта 2026 № 1 (2026)

ROSARIUM

газета советского программиста

Модуль 6: Продвинутые техники

Патчи, подпакеты, скриптлеты, условные сборки и архитектурные нюансы.

Вы освоили базовую упаковку. Теперь разберём продвинутые техники, которые нужны для сложных пакетов.

Цели модуля

После изучения этого модуля вы будете:

  • Создавать и применять патчи для исправления проблем
  • Разбивать пакет на подпакеты (-devel, -doc, -libs)
  • Использовать скриптлеты для действий при установке/удалении
  • Применять условные сборки для разных конфигураций
  • Правильно работать с версионированием и Epoch

Содержание модуля

  1. Патчи: создание, применение, backport
    Когда и как использовать патчи, создание из git, форматы.

  2. Подпакеты: -devel, -doc, -libs
    Разделение пакета на логические части.

  3. Скриптлеты и триггеры
    %pre, %post, %preun, %postun — действия при установке и удалении.

  4. Условные сборки и bcond
    Опции сборки, условная компиляция, архитектурные особенности.

  5. Версионирование и Epoch
    Правила версионирования, когда использовать Epoch, снапшоты.

Когда это нужно

СитуацияТехника
Баг не исправлен в upstreamПатчи
Библиотека с заголовкамиПодпакет -devel
Нужно создать пользователяСкриптлеты
Опциональная функцияУсловная сборка
Upstream сменил версионированиеEpoch

Следующий модуль

После освоения продвинутых техник переходите к Модулю 7: Качество и релиз — проверка пакета и публикация.