Утилита cas-pm
В составе KasperskyOS Community Edition поставляется утилита cas-pm
(исполняемый файл toolchain/bin/cas-pm
), устанавливающая KPA-пакеты в собираемый образ решения на базе KasperskyOS.
Синтаксис shell-команды для запуска утилиты cas-pm
:
Параметры:
- {
-p
|--pkgsdir
} <DIR
>Путь в системе, где установлен SDK, к директории, в которой расположены KPA-пакеты для установки.
- {
-d
|--dbpath
} <PATH
>Полное имя файла базы данных SQLite, которая содержит данные об установленных KPA-пакетах. Если база данных еще не создана, она будет автоматически сгенерирована при запуске утилиты с указанным именем, и в нее будет добавлена информация об устанавливаемых KPA-пакетах.
Чтобы компонент PackageManager смог обнаружить базу данных после запуска решения на базе KasperskyOS, выполните следующие шаги:
- После вызова утилиты
cas-pm
скопируйте файл базы данных в файловую систему, которая будет помещена в образ решения на базе KasperskyOS. Если полное имя файла базы данных изначально указывалось в такой файловой системе, этот шаг можно пропустить. - Передайте полное имя файла базы данных в файловой системе, которая будет помещена в образ решения на базе KasperskyOS, через параметр
DB_PATH
в CMake-командуcreate_package_manager_entity()
(подробнее см. "Сценарий использования компонента PackageManager").
- После вызова утилиты
- {
-a
|--appsdir
} <DIR
>Путь в системе, где установлен SDK, к директории, в которую будут размещены KPA-пакеты перед записью в образ решения на базе KasperskyOS.
--rootdir
<DIR
>Директория, относительно которой будут установлены KPA-пакеты в образ решения на базе KasperskyOS. Директорию указывайте в той файловой системе, которая будет помещена в образ решения на базе KasperskyOS. Информация о размещении KPA-пакетов будет внесена в базу данных и потребуется компоненту PackageManager при удалении KPA-пакетов.
- {
-l
|--layout
} <PATH
>Полное имя файла формата JSON, который используется для переопределения путей установки компонентов KPA-пакета. Полное имя файла указывайте в системе, где установлен SDK. По умолчанию при установке KPA-пакета его компоненты размещаются в директориях в зависимости от типа компонента KPA-пакета (подробнее смотри ключ
componentType
в статье "Список объектов components".). Чтобы изменить названия директорий по умолчанию, следует задать свои значения для ключей:bin
,res
,lib
иmanifestLocale
. Чтобы компонент PackageManager смог обнаружить компоненты KPA-пакета после запуска решения на базе KasperskyOS, имя этого файла нужно передать в параметреCUSTOM_LAYOUT
CMake-командыcreate_package_manager_entity()
(подробнее см. "Сценарий использования компонента PackageManager").Пример файла
custom_layout_schema.json
:{ "bin" : "custom-bin-path", "res" : "CustomResPath", "lib" : "CustomLibPath", "manifestLocale" : "Custom_manifestLocale_Path" } - {
-e
|--extention
} <ARG
>Расширение для файла KPA-пакета. Значение по умолчанию:
kpa
. - {
-r
|--reinstall
}Переустановка KPA-пакетов.
-v[v...]
Уровень журналирования действий, выполняемых утилитой. Количество знаков
v
отображает уровень журналирования. Сообщения выводятся в стандартный вывод. Возможные значения:-v
На этом уровне журналируется информация о нормальной работе утилиты без детализации, а также ошибки и предупреждения о потенциальных проблемах.
-vv[v...]
На этом уровне добавляется детальное журналирование информации о работе утилиты, которая может быть полезна для разработчиков при диагностике проблем.
--sign-ext
<ARG
>Расширение для файла внешней подписи KPA-пакета. Подробнее про внешнюю подпись KPA-пакета см. "Работа с KPA-пакетами".
--index-ext
<ARG
>Расширение для индексного файла KPA-пакета. Подробнее про индексный файл KPA-пакета см. "Работа с KPA-пакетами".
- <
PACKAGES
>Список полных имен устанавливаемых KPA-пакетов в системе, где установлен SDK. Расширение файла указывать не нужно. Элементы списка разделяйте знаком пробела.
--version
Версия утилиты.
-h
|--help
Текст справки.
Примеры shell-команд для запуска утилиты cas-pm
: