
Дистрибуция Avalonia-приложений под Linux через Flatpak
xtraroman 38 минут назад Дистрибуция Avalonia-приложений под Linux через Flatpak Средний 12 мин 1.3K Блог компании ЭРЕМЕКС .NET * Linux * Кейс Avalonia UI решает задачу кроссплатформенной разработки. Правильно...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. xtraroman 38 минут назад Дистрибуция Avalonia-приложений под Linux через Flatpak Средний 12 мин 1. 3K Блог компании ЭРЕМЕКС . NET * Linux * Кейс Avalonia UI решает задачу кроссплатформенной разработки.
Правильно написанный код без изменений работает под Windows, Linux и macOS. Сложности начинаются на следующем этапе - при подготовке приложения к распространению. Под Windows и macOS есть универсальные форматы инсталлеров, которые работают на всех версиях этих ОС.
Технические детали
А вот с Linux ситуация иная. Экосистема Linux фрагментирована. Применяется несколько разных форматов упаковки приложений: deb, rpm.
К этому добавляется проблема версий системных библиотек: сборка, работающая на одном дистрибутиве, может не запуститься на другом из-за иной версии glibc или отсутствия необходимой . В результате один и тот же бинарник Avalonia-приложения требуется упаковывать несколько раз, разными инструментами, с разными конфигурациями сборки, и каждую такую сборку затем отдельно тестировать, поскольку успешная сборка пакета не гарантирует его работоспособность у конечного пользователя. Сегодня мы рассмотрим одно из решений этой проблемы - Flatpak.
Поддержка Flatpak официально заявлена и документирована у крупных российских дистрибутивов:Astra Linux (входит в базовый репозиторий начиная с версии 1. 7)РЕД ОС (отдельная статья в официальной базе знаний)Альт ЛинуксПоэтому для разработок, ориентированных на российский рынок, Flatpak - вполне подходящий вариант. Flatpak версия “Delta Design Домашняя”У нас недавно был релиз хоббийной версии Delta Design.
Отраслевые последствия
Мы писали о нём в этой статье. Линукс версия “Delta Design Домашняя” получила унифицированный Flatpak инсталлер. Инсталлер в теории может работать на любой Linux-системе, которая поддерживает Flatpak, но мы в системных требованиях сейчас указываем только те дистрибутивы, на которых у нас запускаются автоматизированные тесты.
Как это устроено внутриЧтобы не пересказывать документацию по Flatpak, рассмотрим только самые интересные места и проблемы, с которыми мы столкнулись. Если где-то будет непонятно - приходите в комментарии. DeltaDesignHome представляет собой Avalonia-приложение, которое публикуется в CI в заданную папку.
dotnet publish DeltaDesignHome. slnf -bl -c Release --use-current-runtime --self-contained -o bin/PublishProduction Далее эти бинарные файлы пакуются с помощью утилиты flatpak-builder. Рассмотрим файл манифеста для упаковки нашего приложения.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.





