Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025) — различия между версиями

Материал из 0x1.tv

(Новая страница: «;{{SpeakerInfo}}: {{Speaker|Владимир Васьков}} <blockquote> </blockquote> {{VideoSection}} {{vimeoembed||800|450}} <!-- {{youtubelink|}} --> ==…»)
 
 
(не показаны 3 промежуточные версии этого же участника)
;{{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

Докладчик
Владимир Васьков.jpg
Владимир Васьков

Flatpak — это средство для установки и управления приложениями в Linux, не зависимое от дистрибутива. Оно предоставляет изолированную среду выполнения (песочницу) и использует универсальные пакеты, не зависящие от конкретного дистрибутива.

Видео

on youtube


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, так что требуеются некоторые патчи. Сайт является веб интерфейсом и не обязателен при развертывании репозитории.

Презентация

Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025).pdf
Flatpak — средство запуска графических приложений в изолированной среде (Владимир Васьков, OSDAY-2025)!.jpg

Примечания и ссылки