Библиотека kl_install_packages
Библиотека kl_install_packages входит в состав KasperskyOS SDK и содержит команду kl_install_packages(). Эта команда объявлена в файле /opt/KasperskyOS-Community-Edition-<platform>-<version>/toolchain/share/cmake/Modules/package_manager/kl_install_packages.cmake.
kl_install_packages(IMAGE_NAME ...)
Команда распаковывает KPA-пакеты в корневую файловую систему rootfs.
Это позволяет не копировать KPA-пакет в rootfs и затем устанавливать его при первом запуске с помощью системной программы ServiceManager исходя из описания initial_install.json, а сразу еще при создании rootfs распаковать пакет в нужную директорию внутри rootfs.
Параметры:
OUTPUT_FILES_VAR– имяCMake-переменной, которую создает команда. Обязательный параметр.PACKAGES_DIR– необходимо указать"${PACKAGES_BUILD_DIR}".DB_PATH– необходимо указать "${ROOTFS_DIR}/data${MINIMAL_KOS_PACKAGE_MANAGER_DB_PATH}".APPS_PATH– необходимо указать"${ROOTFS_DIR}/${MINIMAL_KOS_PACKAGES_INSTALLED_DIR}".SCHEMA_PATH– необходимо указать"${ROOTFS_DIR}/${MINIMAL_KOS_PACKAGE_MANAGER_SCHEMA_DIR}".PKG_EXTENSION– необходимо указать"kpa".PACKAGES– список KPA-пакетов для установки в корневую файловую систему rootfs.DEPENDS <DEPENDING_TARGET1> [<DEPENDING_TARGET2>]... – имена CMake-целей, которые должны быть выполнены до запуска этой команды.
Пример вызова:
kl_install_packages (
OUTPUT_FILES_VAR installed_packages
PACKAGES_DIR "${PACKAGES_BUILD_DIR}"
DB_PATH "${ROOTFS_DIR}/data${MINIMAL_KOS_PACKAGE_MANAGER_DB_PATH}"
APPS_PATH "${ROOTFS_DIR}/${MINIMAL_KOS_PACKAGES_INSTALLED_DIR}"
SCHEMA_PATH "${ROOTFS_DIR}/${MINIMAL_KOS_PACKAGE_MANAGER_SCHEMA_DIR}"
PACKAGES "PreinstalledApp"
PKG_EXTENSION "kpa"
DEPENDS PreinstalledApp.kpa rootfs_part_src)