Alt-components

Материал из ALT Linux Wiki


Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

alt-components - приложение с графическим интерфейсом для управления наборами пакетов, называемых компонентами.

Цель создания

alt-components позволяет устанавливать и удалять компоненты. Компонент представляет собой набор пакетов, предоставляющих определенную функциональность, и некоторую последовательность действий (deploy) для его конфигурации. alt-components должен запускаться при первом запуске системы, но доступен всегда, т.е. набор установленных компонентов можно поменять в любой момент.

Назначение

Приложение alt-components предназначено для управления группами пакетов под названием компоненты. Использование компонентов позволяет работать с функциональными подсистемами без необходимости самостоятельного поиска отдельных пакетов. Для работы достаточно выбрать желаемый компонент, после чего alt-components установит недостающие пакеты или удалит избыточные. Приложение ориентировано на корпоративную инфраструктуру.

Предназначен для:

  1. Администраторов
  2. Продвинутых пользователей

Возможности программы:

  • Установка компонентов.
  • Удаление компонентов.
  • Проверка наличия компонентов.

Условия применения

Приложение alt-components может использоваться как на серверах, так и на рабочих станциях. Для корректной работы alt-components требуется apt, сконфигурированный на работу с репозиториями, содержащими необходимые RPM-пакеты и доступ к этим репозиториям.

Установка

Установка из репозитория

Команды установки

# apt-get update
# apt-get install alterator-application-components

Запуск

Вызов инструмента alt-components возможен через графическое меню либо через терминал.

Через графическое окружение

  1. Запустить Alterator Browser из меню приложений.
  2. Ввести пароль учетной записи root.
  3. Выбрать пункт Управление компонентами.

Через терминал

Выполнить команду

$ alt-components

Интерфейс нового AMC.png

Интерфейс

Пользовательский интерфейс программы состоит из секций:

  • Компоненты - представлен список компонентов по категориям.
  • Описание - выводится информация о компонентах.

Спецификация

Руководство пользователя

  • Чтобы раскрыть список компонентов в категории, необходимо нажать на её имя.
  • Чтобы увидеть информацию о компоненте, необходимо нажать на его имя.
  • Чтобы установить/удалить компонент, необходимо установить/снять галочку рядом с его именем.
  • Чтобы установить/удалить все компоненты из одной категории, необходимо установить/снять галочку рядом с именем категории.
  • Чтобы изменения вступили в силу, необходимо нажать Применить.
  • Чтобы отменить непримененные изменения, необходимо нажать Cбросить.

Руководство администратора

Принцип работы

Приложение alt-components представлено объектом на шине межпроцессного взаимодействия D-Bus. Этот объект создает сервис alterator-manager, выполнив инструкции файлов типа "alterator entry":

  • .backend - описывает интерфейс компонента на D-BUS, обеспечивающий взаимодействие с D-Bus. В нем же описаны методы интерфейса:
    • Description - выводит описание компонента;
    • Info - выводит содержимое файла .component;
    • Status - Проверяет, установлены пакеты компоненты или нет (возвращает 0 при положительном результате);
  • .component - Описывает компонент. Содержит название компонента и список пакетов компонента;

Также для компонента необходим файл с описанием в формате html.

Порядок обработки составляющих alt-components:

  1. alterator-module-executor собирает информацию из файлов .backend обо всех компонентах, и создает объекты на D-Bus с именами вида org.altlinux.alterator.<Имя компонента>;
    Компоненты в d-feet.png
  2. alt-components обращается к D-Bus, чтобы получить информацию о существующих компонентах;
  3. Чтобы получить описание определенного компонента alt-components вызывает метод Description;
  4. Чтобы получить список пакетов определенного компонента alt-components вызывает метод Info;
  5. Чтобы проверить, установлены ли пакеты для определенного компонента alt-components вызывает метод Status;

Добавление компонентов в базовый набор

Базовый набор компонентов содержится в пакета alt-components-base (ссылка на репозиторий).

Добавление нового компонента представляет из себя добавление файлов в каталог репозитория ./components/<имя компонента>

Процедура добавления категории

AMC категории.png

Необходимо создать файл с именем вида name.category и разместить его в каталоге ./categories

Содержимое предоставляется в формате TOML и имеет вид:

type = "Category"
name = "имя категории"
category = "родительская категория"
display_name.en = "Имя категории на английском"
display_name.ru = "Имя категории на русском"
comment.en = "Комментарий на английском"
comment.ru = "Комментарий на русском"

Поле category необходимо только если это вложенная категория.

Процедура добавления компонента

Компоненты AMC.png

каждый компонент описывается файлами:

  • <имя компонента>.component - файл компонента
  • description.html - описание компонента на английском
  • description.ru.html - описание компонента на русском
  • <имя компонента>.backend - отображает объект компонента в сервисе alterator-manager на шине D-bus;

Файл .backend создавать не нужно, он генерируется автоматически. Файлы описания необходимо составлять в формате markdown. В html формат они будут автоматически переведены при установке пакета. Все созданные файлы необходимо разместить в каталоге ./components/<имя компонента> Создание файла .component Содержимое предоставляется в формате TOML и имеет вид:

type = "Component"
name = "компонент"
category = "категория"
display_name.en = "Имя компонента на английском"
display_name.ru = "Имя компонента на русском"

[packages]
"имя_пакета_1" = {}
"имя_пакета_2" = {}
"имя_пакета_3" = {}

Сначала идут параметры компонента, а затем секция [packages], содержащая списки пакетов.

Пакеты AMC.png

Если имя пакета содержит пробелы или спецсимволы, необходимо указывать их имена в кавычках. Для каждого пакета в фигурных скобках указываются его параметры/фильтры (пока не реализовано)

Создание описания

Описание компонента AMC.png

Для создания описания необходимо составить 2 файла в формате MarkDown

  • description.md - на английском
  • description.ru.md - на русском

Эти файлы имеют вид:

# Имя компонента
Абзац 1
Абзац 2
Абзац 3

Проверка корректности работы Соберите пакет alt-components-base со своими изменениями, установите и проверьте одним из следующих способов: Проверка через alt-components

  1. Запустите alt-components
  2. Выберете нужную категорию и подкатегорию
  3. Выберете нужный компонент. Проверьте правильность описания и список пакетов

AMC без подписей.png

Проверка через alteratorctl

$ alteratorctl components list

Убедитесь, что ваш компонент появился в списке. Проверка через D-Feet Компоненты в d-feet.png

  1. Запустите D-Feet
  2. В левой секции выберете службу org.altlinux.alterator
  3. В правой выберете созданный компонент
  4. Найдите интерфейс org.altlinux.alterator.component1
  5. Проверьте правильность работы следующих методов:
    • Вызовите метод Description через alt-components для отображения описания.
    • Убедитесь, что метод Info корректно выводит содержимое файла .component.
    • Проверьте, что метод Status возвращает 0 при установке необходимых пакетов.