Flatpak , ранее известный как xdg -app, [5] — это утилита для развертывания программного обеспечения и управления пакетами для Linux . Он рекламируется как предлагающий среду «песочницы» , в которой пользователи могут запускать прикладное программное обеспечение изолированно от остальной системы. [6] [7]
Приложениям, использующим Flatpak, необходимы разрешения на доступ к таким ресурсам, как Bluetooth , звук (с PulseAudio ), сеть и файлы . Эти разрешения настраиваются сопровождающим Flatpak и могут быть добавлены или удалены пользователями в их системе. [8] [9]
Еще одной ключевой особенностью Flatpak является то, что он позволяет разработчикам приложений напрямую предоставлять обновления пользователям, минуя дистрибутивы, а также без необходимости упаковывать и тестировать приложение отдельно для каждого дистрибутива. [10]
Flathub , репозиторий (или удаленный источник в терминологии Flatpak), расположенный по адресу flathub.org
, стал де-факто стандартом для получения приложений, упакованных с помощью Flatpak. [11] Пакеты добавляются в него как администраторами Flathub, так и самими разработчиками программ (хотя администраторы заявили, что предпочитают приложения, представленные разработчиками). [12] Хотя Flathub де-факто является источником приложений, упакованных с помощью Flatpak, можно разместить репозиторий Flatpak, независимый от Flathub. [13] [14] [15]
Flatpak работает в «песочнице» (которая предоставляет отдельные, ABI-стабильные версии всех распространенных системных библиотек), а это означает, что он всегда будет использовать больше места в системе, чем обычные собственные пакеты. Однако Flatpak использует OSTree в качестве серверной части, которая может выполнять дедупликацию соответствующих файлов. Это означает, что первая установка приложения Flatpak сначала всегда будет занимать больше места, но будет более эффективной, поскольку пользователь устанавливает больше пакетов Flatpak. [16]
Теоретически приложения Flatpak можно установить в любой существующий и будущий дистрибутив Linux , включая те, которые установлены с уровнем совместимости подсистемы Windows для Linux , при условии, что доступны пузырьковая пленка и OSTree .
Его также можно использовать в системах на базе ядра Linux , таких как ChromeOS . [17]