Темы для экзамена по курсу «Сопровождение пакетов в Linux»
- Дистрибутив ОС на основе свободного ПО
- Что такое СПО
- Принципы формирования свободного сообщества
- Структура свободного сообщества
- Определение дистрибутива (любое разумное)
- Хранилище
- Пакет как составная часть дистрибутива
- FHS
- Пакет-дистрибутив, пакет-дерево каталогов и пакет-архив (3 подхода)
- Возможности пакета-архива (FHS, регистрация в системе, служебные сценарии, триггеры)
- Свойства пакета в дистрибутиве (зависимости, конфликты, альтернативы)
- Причины возникновения зависимостей; зависимости и разноверсица
- Виды зависимостей
- Установщик пакета (rpm)
- Диспетчер пакетов (apt)
- Сопровождающий (maintainer) пакета
- Структура сообщества вокруг технологической площадки (дистрибутива/хранилища)
- Действия сопровождающего
- Получить исходники
- Развернуть сборочную среду
- Создать/обновить спецификацию
- Собрать пакет
- Оттестировать пакет
- Поместить пакет в хранилище
- Реагировать на собощения об ошибках
- Необходимый сопровождающему уровень знаний
- Как записаться в майнтейнеры?
- Сборка пакета
- upstream
- спецификация
- сборочные зависимости и их поиск
- заплатки
- понятие об инструментах сборки («что такое configure; make; make install»?)
- поиск зависимостей
- пакет исходников (src.rpm)
- Спецификация пакета («spec-файл»)
- Для чего нужен spec-файл?
- Разделы (паспорт, развёртывание, сборка, установка, архив, changelog)
- Макросы и зачем они нужны
- Типичный фронт работ в борьбе с upstream: пути, разноверсица, сборка/установка из-под root
- Изолированная среда сборки
- Недостатки configure; make; make install
- Недостатки сборки в базовой системе с помощью сборщика (rpm)
- Защищённость, воспроизводимость и системная независимость изолированной сборки
- Hasher как пример среды изолированной сборки
- Недостатки hasher
- Выкладывание пакета в хранилище и обратная связь с пользователями
- Путь пакета в хранилище после его сборки сопровождающим на своей домашней машине
- Безопасность установки пакетов из хранилища и угрозы этой безопасности
- Выкладывание пакета в хранилище посредством gear и git.alt
- BTS как класс программных инструментов: цели и задачи
- Bugzilla: разделение product и component; зависимости и дубли ошибок
- Статус ошибки
- Списки рассылки
- Как правильно задавать вопросы
- Как правильно отвечать на вопросы
- VCS, DVCS и GIT
- VCS, назначение и примеры
- Отличие VCS от DVCS (например, SVN от GIT), в т. ч. на примере организации групповой работы
- GIT
- ALT-специфичный инструментарий: gear и git.alt