Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
| (не показаны 2 промежуточные версии этого же участника) | |||
;{{SpeakerInfo}}: {{Speaker|Владимир Васьков}}
<blockquote>
Flatpak — это средство для установки и управления приложениями в Linux, не
зависимое от дистрибутива. Оно предоставляет изолированную среду выполнения
(песочницу) и использует универсальные пакеты, не зависящие от конкретного дистрибутива.
</blockquote>
{{VideoSection}}
{{vimeoembed|1094893909|800|450}}
<!--
{{youtubelink|}} -->|g2wYmKlfc7w}}
== Thesis ==
=== Использовании в разработке ===
Для сборки приложения во flatpak необходимо создать манифест, описание сборки
приложения. Манифест содержит: уникальный id приложения, который является обратным
DNS адресом разработчика и названием приложения; рантайм, сдк и расширения сдк для
сборки и запуска; команда для запуска; разрешения, требуемые приложению для работы; цели
сборки и другое. Под целями сборки подразумеваются программные компоненты, которые
могут быть собраны из локального источника по тегу и по хешу коммита. В качестве систем
сборки поддерживаются meson, cmake, cmake-ninja, qmake, simple (при отсутствие системы
сборки).
Имеется возможность сборки проприетарных приложений с учётом запрета на
распространение по лицнезии. В цели сборки прописывается порядок действий при установке,
получается что-то наподобие AUR.
Cборка производится командой [https://docs.flatpak.org/en/latest/flatpak-builder.html flatpak-builder].
Можно собрать приложение в один файл (bundle) командой <tt>flatpak build-bundle</tt>.
Существуют плагины для популярных IDE, также есть GNOME Builder, имеющее наиболее тесную интеграцию с flatpak.
=== Развертывание своего репозитория для магазина приложений ===
Имеется возможность создания своего репозитория, который можно подключить через
<tt>flatpak remote-add</tt>.
Для этого нужно на хостинге, например pages вашего хранилища репозиториев, разместить репозиторий, созданный командой flatpak-builder и внутри создать
создать файл flatpakrepo с описанием репозитория: имя, иконка, ссылка, gpg подпись и т.д.
Подобный репозиторий будет работать со всеми магазинами приложений, которые
поддерживают flatpak без сторонних вмешательств (например swcatalog с нативным
репозиторием).
=== Самостоятельный хост сайта flathub ===
Код flathub открыт, так что есть возможность развёртывания своего сайта с flatpak
приложениями. Однако в сайте прибит гвоздями домен dl.flathub.org, так что требуеются
некоторые патчи. Сайт является веб интерфейсом и не обязателен при развертывании
репозитории.
{{SlidesSection}}
[[File:Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf|left|page=-|300px]]
{{----}}
[[File:{{#setmainimage:Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025)!.jpg}}|center|640px]]
{{LinksSection}}
*
<!-- <blockquote>[©]</blockquote> -->
<references/>
<!-- topub -->
[[Категория:OSDAY-2025]] | |||
Текущая версия на 15:20, 14 июля 2025
- Докладчик
- Владимир Васьков
Flatpak — это средство для установки и управления приложениями в Linux, не зависимое от дистрибутива. Оно предоставляет изолированную среду выполнения (песочницу) и использует универсальные пакеты, не зависящие от конкретного дистрибутива.
Содержание
Видео
Thesis
Использовании в разработке
Для сборки приложения во flatpak необходимо создать манифест, описание сборки приложения. Манифест содержит: уникальный id приложения, который является обратным DNS адресом разработчика и названием приложения; рантайм, сдк и расширения сдк для сборки и запуска; команда для запуска; разрешения, требуемые приложению для работы; цели сборки и другое. Под целями сборки подразумеваются программные компоненты, которые могут быть собраны из локального источника по тегу и по хешу коммита. В качестве систем сборки поддерживаются meson, cmake, cmake-ninja, qmake, simple (при отсутствие системы сборки).
Имеется возможность сборки проприетарных приложений с учётом запрета на распространение по лицнезии. В цели сборки прописывается порядок действий при установке, получается что-то наподобие AUR.
Cборка производится командой flatpak-builder. Можно собрать приложение в один файл (bundle) командой flatpak build-bundle. Существуют плагины для популярных IDE, также есть GNOME Builder, имеющее наиболее тесную интеграцию с flatpak.
Развертывание своего репозитория для магазина приложений
Имеется возможность создания своего репозитория, который можно подключить через flatpak remote-add.
Для этого нужно на хостинге, например pages вашего хранилища репозиториев, разместить репозиторий, созданный командой flatpak-builder и внутри создать создать файл flatpakrepo с описанием репозитория: имя, иконка, ссылка, gpg подпись и т.д. Подобный репозиторий будет работать со всеми магазинами приложений, которые поддерживают flatpak без сторонних вмешательств (например swcatalog с нативным репозиторием).
Самостоятельный хост сайта flathub
Код flathub открыт, так что есть возможность развёртывания своего сайта с flatpak приложениями. Однако в сайте прибит гвоздями домен dl.flathub.org, так что требуеются некоторые патчи. Сайт является веб интерфейсом и не обязателен при развертывании репозитории.
Презентация
Примечания и ссылки
