Начало работы#
Установка#
curl -fsSL https://dl.astralinux.ru/astra-flatpak/setup.sh | sudo bash
Что делает скрипт:
ставит
flatpak, если его нет в системе;ставит
aft-toolsсо всеми инструментами набора;подключает системные Flatpak-репозитории
astra-mainиastra-extended.
До запуска на машине должны быть подключены штатные репозитории дистрибутива,
причём оба: main и extended. Часть зависимостей инструментов лежит именно в
extended, на всех линиях 1.8 это dpkg-dev, appstream-util и ostree,
а на ранних ещё и libflatpak0 с libspdlog1.10. С одним подключённым main
установка прервётся на них.
Проверка#
apt-cache policy aft-tools
flatpak remotes --system
Ожидается установленный aft-tools и два подключённых репозитория:
astra-main и astra-extended.
Среды выполнения#
Приложение собирается на SDK и работает на среде выполнения. Обе ставятся парой одной версии, потому что собранное на одной версии среды на другой может не запуститься:
sudo flatpak install astra-main org.astra.Gtk//1.8.6
sudo flatpak install astra-extended org.astra.gtkSdk//1.8.6
Для новых сборок рекомендуется линия 1.8.6.
Какая среда под что:
org.astra.mainPlatform- базовая среда без графических библиотек, для консольных программ.org.astra.Gtk- GTK3 и GTK4, а также libsecret, libnotify и libappindicator3.org.astra.Qt- Qt5 целиком.org.astra.Qt6- Qt6, только на линии 1.8.6.
Список доступного выводит flatpak remote-ls:
flatpak remote-ls astra-main
flatpak remote-ls astra-extended
Подключение репозиториев вручную#
Репозитории подключаются и вручную, файлами .flatpakrepo:
sudo flatpak remote-add --if-not-exists --from astra-main \
https://dl.astralinux.ru/astra-flatpak/main.flatpakrepo
sudo flatpak remote-add --if-not-exists --from astra-extended \
https://dl.astralinux.ru/astra-flatpak/extended.flatpakrepo
В main лежат среды выполнения, драйверы GL и готовые приложения; в extended - SDK, базовые приложения и расширения сборки. Для сборочной машины нужны оба.
Подключение репозиториев на машине пользователя, которому нужно только установить готовое приложение, описано в разделе Установка на машине пользователя.
Состав поставки#
aft-tools - мета-пакет: он ставит набор целиком. Каждый инструмент
поставляется и отдельным пакетом, поэтому на сборочной машине можно обойтись
только нужными.
aft-app- сборка приложений из deb-пакетов (Создание приложений (aft-app)).aft-runtime- сборка сред выполнения и SDK (Создание сред выполнения (aft-runtime)).aft-extension- сборка расширений (Создание расширений (aft-extension)).aft-analyzer- анализ установленных приложений (Анализ приложений (aft-analyzer)).aft-scanner- поиск уязвимостей (Поиск уязвимостей (aft-scanner)).aft-sbom- получение состава ПО (Состав ПО (aft-sbom)).aft- графическая оболочка над остальными инструментами.
Ещё два пакета относятся к набору, но ставятся по-разному:
oval-db- база определений уязвимостей. Ставится вместе сaft-scannerкак рекомендуемый пакет. Без неё поиску уязвимостей не с чем сверять состав ПО.aft-ml-model- модель предсказания разрешений песочницы. Сам не ставится, устанавливается по желанию отдельной командой. Без него разрешения предлагаются по правилам. Его зависимостям (python3-sklearn,python3-scipy,python3-joblib) тоже нужен extended-репозиторий дистрибутива.