Немецкое агентство Sovereign Tech Agency через свою инициативу Sovereign Tech Fund (STF) выделило €508 640 на развитие и сопровождение Flatpak. Двухлетняя программа организована компанией Modal совместно с Para-Real Ltd. в качестве поддерживающей организации. Цель инициативы — ускорить развитие Flatpak как безопасной, изолированной платформы для упаковки и распространения десктопного ПО в Linux.

Flatpak — основной способ распространения приложений для образных операционных систем, включая Fedora Silverblue, openSUSE Aeon, SteamOS и GNOME OS. Это предпочтительный формат для таких экосистем, как GNOME, KDE и elementary. Расширение возможностей Flatpak должно напрямую повысить безопасность, надёжность и удобство работы как для пользователей, так и для разработчиков в экосистеме свободного ПО для десктопов.

Готова ли песочница?

Flatpak — зрелый проект и лучший из доступных вариантов для GNU/Linux на сегодняшний день, однако его возможности безопасности и изоляции всё ещё отстают от хорошо профинансированных проприетарных платформ вроде Android и iOS. Сохраняются технические ограничения — например, невозможность разделить доступ к выводу звука и к микрофону. Кроме того, в ряде критических областей, включая работу с сетью и VPN, до сих пор нет выделенных Portals.

После заметного прогресса, достигнутого в рамках проекта GNOME STF 2023/2024, темпы разработки в последние годы снизились — сказались как узкоспециализированный характер работы на уровне платформы, так и ограниченные ресурсы перегруженных мейнтейнеров Flatpak. Это затрудняет распространение безопасных, образных операционных систем, которые полагаются исключительно на приложения Flatpak.

Совместная работа

Для Modal надёжная модель песочницы для приложений — необходимое условие для создания свободной ОС, конкурентоспособной по сравнению с современными мобильными платформами. Опираясь на опыт совместной организации STF-проектов для GNOME и systemd, команда объединилась с другими участниками сообщества, чтобы запустить новую инициативу и продвинуть развитие экосистемы вперёд.

Техническую сторону проекта возглавляют Себастьян и Адриан, организационную поддержку обеспечивают Катерина и Кейд. Para-Real Ltd. выступает поддерживающей организацией. Инвестицию планируется использовать не только для решения технических задач, но и для наращивания долгосрочного потенциала сообщества — расширения круга людей, разбирающихся в этой части стека, и выстраивания более формальных структур управления проектом Flatpak.

К технической реализации проекта присоединилась команда опытных контрактников: Филип Уитнолл, Джулиан Спарбер и Дханука Варусадура — участники проекта GNOME STF 2023/2024, а также Зельда Ахмед, Игнаций Кухцинский, Хари Рана, Ева (из проекта Bazaar) и ветеран дизайна GNOME Сэм Хьюитт. Работа над проектом будет постепенно наращиваться в ближайшие месяцы и, как ожидается, продлится до конца 2027 года.

Техническая дорожная карта

Sovereign Tech Agency заказало работу по закрытию критических пробелов в модели песочницы, внедрению давно запрашиваемой инфраструктуры и общему сопровождению проекта.

В фокусе — следующие направления:

Новые Portals

  • Звук: реализация нового статического разрешения на сокет для PipeWire, политики WirePlumber для управления доступом к устройствам и portal для настройки аудиоразрешений (например, доступ к динамикам без предоставления доступа к микрофону).
  • Сеть: изоляция сетевого взаимодействия от хоста с новыми статическими разрешениями для конкретных областей (хост, локальная сеть, интернет) и портов, что предотвращает лишнее раскрытие локальных устройств.
  • VPN: новый portal по образцу API Android и iOS, позволяющий сторонним VPN-приложениям управлять соединениями на уровне системы.
  • Помощь при вводе текста: новый portal для проверки орфографии, позволяющий всем приложениям в системе использовать общий словарь, даже находясь в песочнице. Это также может позволить таким приложениям, как Eloquent, подключаться к portal и предлагать более развитые правки, включая исправление грамматических ошибок.
  • Автозаполнение паролей: исследование и архитектурное проектирование безопасного portal для автозаполнения паролей взамен текущих небезопасных подходов на основе NativeMessaging.

Инфраструктура и сопровождение

  • Entitlements: новая система объявления статических разрешений для конкретных portals, позволяющая проверяющим в магазинах приложений верифицировать возможности приложений и открывающая путь к более продвинутым функциям, например сторонним инструментам доступности.
  • Intents: абстрактная система, позволяющая приложениям объявлять предоставляемые сервисы, что упрощает глубокие ссылки на подстраницы или нативную обработку конкретных веб-URL.
  • Поддержка Portals: перенос на libdex, добавление интеграционных тестов и улучшение диалогов системных разрешений.

Что дальше

По мере проектирования и реализации планы могут меняться. Сообществу предлагают следить за прогрессом и обсуждать проект на Matrix в каналах #flatpak:matrix.org и #xdg-desktop-portals:matrix.org.