Alt-components: различия между версиями

Материал из ALT Linux Wiki
(руководства пользователя и администратора)
Нет описания правки
 
(не показаны 44 промежуточные версии 2 участников)
Строка 9: Строка 9:
|}
|}
<noinclude>[[Категория:Неоконченные страницы|{{PAGENAME}}]]</noinclude>
<noinclude>[[Категория:Неоконченные страницы|{{PAGENAME}}]]</noinclude>
 
'''alt-components''' - приложение с графическим интерфейсом для управления наборами пакетов, называемых компонентами.
'''AMC - Alterator (Module) Components - alterator-components''' - приложение с графическим интерфейсом для управления наборами пакетов, называемых компонентами.


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


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


Предназначен для:
Предназначен для:
Строка 23: Строка 22:
# Продвинутых пользователей
# Продвинутых пользователей
Возможности программы:
Возможности программы:
* Установка компонент.
* Установка компонентов.
* Удаление компонент.
* Удаление компонентов.
* Проверка наличия компонент.
* Проверка наличия компонентов.


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


= Установка =
= Установка =
Для установки alterator-components из задания (таски), воспользуйтесь [https://packages.altlinux.org/ru/tasks/search/?q=alterator-application-components поиском].
== Установка из репозитория ==
 
Команды установки
Команды установки
<pre>
<pre>
# apt-repo add <номер задания>
# apt-get update
# apt-get update
# apt-get install alterator-application-components
# apt-get install alterator-application-components
Строка 41: Строка 38:


= Запуск =
= Запуск =
Вызов инструмента Alterator Components возможен через графическое меню либо через терминал.
Вызов инструмента alt-components возможен через графическое меню либо через терминал.
=== Через графическое окружение ===
=== Через графическое окружение ===
# Запустить [[Alterator_Browser | Alterator Browser]] из меню приложений.
# Запустить [[Alterator_Browser | Alterator Browser]] из меню приложений.
Строка 49: Строка 46:
Выполнить команду
Выполнить команду
<pre>
<pre>
$ alterator-application-components
$ alt-components
</pre>
</pre>
[[Файл:Alterator-application-components.png|Внешний вид программы]]
[[Файл:Интерфейс нового AMC.png|безрамки|800x800пкс]]


=== Интерфейс ===
=== Интерфейс ===
Пользовательский интерфейс программы состоит из секций:  
Пользовательский интерфейс программы состоит из секций:  
* Компоненты - представлен список компонент по категориям.
* Компоненты - представлен список компонентов по категориям.
* Описание - выводится информация о компонентах.
* Описание - выводится информация о компонентах.


Строка 63: Строка 60:
* [https://gitlab.basealt.space/alt/alterator-entry/-/blob/kozyrevid/specification/doc/README.md#%D1%81%D1%83%D1%89%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D1%82%D0%B8%D0%BF%D0%B0-component Документация на Component].
* [https://gitlab.basealt.space/alt/alterator-entry/-/blob/kozyrevid/specification/doc/README.md#%D1%81%D1%83%D1%89%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D1%82%D0%B8%D0%BF%D0%B0-component Документация на Component].


== Руководство пользователя ==
= Руководство пользователя =
* Чтобы раскрыть список компонент в категории, необходимо нажать на её имя.
* Чтобы раскрыть список компонентов в категории, необходимо нажать на её имя.
* Чтобы увидеть информацию о компоненте, необходимо нажать на её имя.
* Чтобы увидеть информацию о компоненте, необходимо нажать на его имя.
* Чтобы установить/удалить компоненту, необходимо установить/снять галочку рядом с именем компоненты.
* Чтобы установить/удалить компонент, необходимо установить/снять галочку рядом с его именем.
* Чтобы установить/удалить все компоненты из одной категории, необходимо установить/снять галочку рядом с именем категории.
* Чтобы установить/удалить все компоненты из одной категории, необходимо установить/снять галочку рядом с именем категории.
* Чтобы изменения вступили в силу, необходимо нажать Применить.
* Чтобы изменения вступили в силу, необходимо нажать Применить.
* Чтобы отменить не примененные изменения, необходимо нажать Cбросить.
* Чтобы отменить непримененные изменения, необходимо нажать Cбросить.
 
= Руководство администратора =
 
== Принцип работы ==
 
Приложение alt-components представлено объектом на шине межпроцессного взаимодействия D-Bus. Этот объект создает сервис alterator-manager, выполнив инструкции файлов типа "alterator entry":
 
* '''.backend''' - описывает интерфейс компонента на D-BUS, обеспечивающий взаимодействие с D-Bus. В нем же описаны методы интерфейса:
** Description - выводит описание компонента;
** Info - выводит содержимое файла .component;
** Status - Проверяет, установлены пакеты компоненты или нет (возвращает 0 при положительном результате);
* '''.component''' - Описывает компонент. Содержит название компонента и список пакетов компонента;


== Руководство администратора ==
Также для компонента необходим файл с описанием в формате html.
=== Создание компонент ===
Для создания компоненты необходимо сформировать три файла:
* '''.backend'''
* '''.component'''
* '''описание'''


==== Файлы .backend и .component ====
Порядок обработки составляющих alt-components:
Файлы .backend и .component являются текстовыми и содержат описание в виде секций. Имеют следующий синтаксис:
# alterator-module-executor собирает информацию из файлов .backend обо всех компонентах, и создает объекты на D-Bus с именами вида org.altlinux.alterator.<Имя компонента>;<br>[[Файл:Компоненты в d-feet.png|безрамки|600x600пкс]]
<pre>
# alt-components обращается к D-Bus, чтобы получить информацию о существующих компонентах;
[имя секции1]
# Чтобы получить описание определенного компонента alt-components вызывает метод Description;
Поле1 = значение
# Чтобы получить список пакетов определенного компонента alt-components вызывает метод Info;
Поле2 = значение
# Чтобы проверить, установлены ли пакеты для определенного компонента alt-components вызывает метод Status;
ПолеN = значение
 
== Добавление компонентов в базовый набор ==
Базовый набор компонентов содержится в пакета '''alt-components-base''' ([https://gitlab.basealt.space/alt/alt-components-base ссылка на репозиторий]).
 
Добавление нового компонента представляет из себя добавление файлов в каталог репозитория '''./components/<имя компонента>'''


[имя секции2]
<big>'''Процедура добавления категории'''</big>
Поле1 = значение
Поле2 = значение
ПолеN = значение


[имя секциN]
[[Файл:AMC категории.png|безрамки|500x500пкс]]
Поле1 = значение
Поле2 = значение
ПолеN = значение
</pre>


===== Принятые правила написания =====
Необходимо создать файл с именем вида '''name.category''' и разместить его в каталоге '''./categories'''
* все поля чувствительны к регистру и начинаются с большой буквы;
* перед и после знака <code>=</code> пробелы;
* значения полей указываются без кавычек;
* значения могут содержать пробелы;
* если строка начинается с <code>#</code>, то она считается комментарием и при чтении информации из файла игнорируется.}}


==== Файл описания ====
Содержимое предоставляется в формате TOML и имеет вид:
Файл с описанием содержит информацию о компоненте и имеет синтаксис, соответствующий языку html.
<syntaxhighlight>
type = "Category"
name = "имя категории"
category = "родительская категория"
display_name.en = "Имя категории на английском"
display_name.ru = "Имя категории на русском"
comment.en = "Комментарий на английском"
comment.ru = "Комментарий на русском"
</syntaxhighlight>
Поле category необходимо только если это вложенная категория.


==== Создание категории ====
<big>'''Процедура добавления компонента'''</big>
Категории компонент являются сущностями [https://gitlab.basealt.space/alt/alterator-entry/-/blob/specification/doc/README.md?ref_type=heads#введение Alterator Entry] и описываются файлами ''.category'' в каталоге '''/usr/share/alterator/components/'''. Имена этих файлов имеют формат '''<номер>-<имя>.category''', содержат секцию ''Alterator Entry'' и следующие параметры:
* Type - тип сущности, всегда <code>Category</code>;
* Name -
* DisplayName - имя категории;
* DisplayName[локаль] - имя категории, которое выводится с использованием указанной в скобках локали.


===== Пример готового файла =====
[[Файл:Компоненты AMC.png|безрамки|500x500пкс]]
<pre>
[Alterator Entry]
Type=Category
Name=centaurus/20-server-apps
DisplayName=Server applications
DisplayName[ru_RU]=Серверные приложения
</pre>


==== Создание компоненты ====
каждый компонент описывается файлами:
Каждая компонента представлена следующими файлами:
* <имя компонента>.component - файл компонента
* /usr/share/alterator/backends/samba.backend
* description.html - описание компонента на английском
* /usr/share/alterator/components/20-server-apps.category
* description.ru.html - описание компонента на русском
* /usr/share/alterator/components/centaurus/samba/description.html
* <имя компонента>.backend - отображает объект компонента в сервисе alterator-manager на шине D-bus;
* /usr/share/alterator/components/centaurus/samba/samba.component
Файл .backend создавать не нужно, он генерируется автоматически.
Файлы описания необходимо составлять в формате '''markdown'''. В '''html''' формат они будут автоматически переведены при установке пакета.
Все созданные файлы необходимо разместить в каталоге '''./components/<имя компонента>'''
'''Создание файла .component'''
Содержимое предоставляется в формате TOML и имеет вид:
<syntaxhighlight>
type = "Component"
name = "компонент"
category = "категория"
display_name.en = "Имя компонента на английском"
display_name.ru = "Имя компонента на русском"


===== Файл .backend =====
[packages]
<pre>
"имя_пакета_1" = {}
# cat /usr/share/alterator/backends/samba.backend
"имя_пакета_2" = {}
"имя_пакета_3" = {}


[Alterator Entry]
</syntaxhighlight>
Type = Backend
Сначала идут параметры компонента, а затем секция [packages], содержащая списки пакетов.
Module = executor
Name = component_centaurus_samba
Interface = component1


[Info]
[[Файл:Пакеты AMC.png|безрамки|500x500пкс]]
execute = cat /usr/share/alterator/components/centaurus/samba/samba.component
stdout_strings = enabled


[Description]
Если имя пакета содержит пробелы или спецсимволы, необходимо указывать их имена в кавычках.
execute = /usr/lib/alterator-interface-component/basic_get_component_description /usr/share/alterator/components/centaurus/samba
Для каждого пакета в фигурных скобках указываются его параметры/фильтры (пока не реализовано)
stdout_strings = enabled


[Status]
'''Создание описания'''
execute = /usr/lib/alterator-interface-component/basic_check_component_installed /usr/share/alterator/components/centaurus/samba/samba.component
</pre>


===== Файл .category =====
[[Файл:Описание компонента AMC.png|безрамки|500x500пкс]]
<pre>
# cat /usr/share/alterator/components/20-server-apps.category


[Alterator Entry]
Для создания описания необходимо составить 2 файла в формате MarkDown
Type = Component
* description.md - на английском
Name = centaurus/samba
* description.ru.md - на русском
Category = centaurus/20-server-apps
Эти файлы имеют вид:
DisplayName = Samba Server
<syntaxhighlight>
DisplayName[ru_RU] = Сервер Samba
# Имя компонента
Packages = samba samba-common-tools samba-usershares samba-client
Абзац 1
</pre>
Абзац 2
Абзац 3
</syntaxhighlight>


===== Файл description.html =====
<big>'''Проверка корректности работы'''</big>
<pre>
Соберите пакет '''alt-components-base''' со своими изменениями, установите и проверьте одним из следующих способов:
# cat /usr/share/alterator/components/centaurus/samba/description.html
'''Проверка через alt-components'''
<ul>
    <li>samba</li>
    <li>samba-common-tools</li>
    <li>samba-usershares</li>
    <li>samba-client</li>
</ul>
</pre>


===== Файл samba.component =====
# Запустите alt-components
<pre>
# Выберете нужную категорию и подкатегорию
# cat /usr/share/alterator/components/centaurus/samba/samba.component
# Выберете нужный компонент. Проверьте правильность описания и список пакетов


[Alterator Entry]
[[Файл:AMC без подписей.png|безрамки|500x500пкс]]
Type = Component
Name = centaurus/samba
Category = centaurus/20-server-apps
DisplayName = Samba Server
DisplayName[ru_RU] = Сервер Samba
Packages = samba samba-common-tools samba-usershares samba-client
</pre>


Планируются "редакции" - наборы компонентов.
'''Проверка через alteratorctl'''
<syntaxhighlight>
$ alteratorctl components list
</syntaxhighlight>
Убедитесь, что ваш компонент появился в списке.
'''Проверка через D-Feet'''
[[Файл:Компоненты в d-feet.png|безрамки|500x500пкс]]
# Запустите D-Feet
# В левой секции выберете службу org.altlinux.alterator
# В правой выберете созданный компонент
# Найдите интерфейс org.altlinux.alterator.component1
# Проверьте правильность работы следующих методов:
#* Вызовите метод ''Description'' через alt-components для отображения описания.
#* Убедитесь, что метод ''Info'' корректно выводит содержимое файла .component.
#* Проверьте, что метод ''Status'' возвращает 0 при установке необходимых пакетов.

Текущая версия от 15:34, 19 марта 2025


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 при установке необходимых пакетов.