Flatpak - руководство для начинающих

Существует инструмент Ubuntu Snaps. Snaps начал внедряется компанией Canonical для операционной системы Ubuntu, а позже он был принят другими дистрибутивами Linux, такими как Arch, Gentoo и Fedora и т.д. Snap - это единый бинарный пакет, содержащий все необходимые библиотеки и зависимости, и вы можете установить его на любой дистрибутив Linux, независимо от его версии и архитектуры. Подобно Snaps, есть еще один инструмент под названием Flatpak. Как вы уже знаете, упаковка распределенных приложений для разных дистрибутивов Linux довольно трудоемкая и сложная. Каждое распределенное приложение имеет различный набор библиотек и зависимостей для различных дистрибутивов Linux. Но, Flatpak, новая инфраструктура для настольных приложений, которая полностью снижает это бремя. Теперь вы можете создать одно приложение Flatpak и установить его в разных операционных системах. Как здорово, не так ли?

Кроме того, пользователям не нужно беспокоиться о библиотеках и зависимостях, все в комплекте в самом приложении. Самое главное, что приложения Flaptpak изолированы и изолированы от остальной операционной системы хоста и других приложений. Еще одна заметная особенность - мы можем одновременно установить несколько версий одного и того же приложения в одной и той же системе. Например, вы можете установить VLC-плеер версии 2.1, 2.2 и 2.3 на ту же систему. Таким образом, разработчики могут тестировать разные версии одного и того же приложения за раз.

В этом уроке мы увидим, как установить Flatpak в GNU / Linux.

Установка Flatpak

Flatpak доступен для многих популярных дистрибутивов Linux, таких как Arch Linux, Debian, Fedora, Gentoo, Red Hat, Linux Mint, openSUSE, Solus, Mageia и Ubuntu.

Чтобы установить Flatpak на Arch Linux, запустите:

$ sudo pacman -S flatpak

Flatpak доступен в стандартных репозиториях Debian Stretch и новее. Чтобы установить его, запустите:

$ sudo apt install flatpak

В Fedora Flatpak устанавливается по умолчанию. Все, что вам нужно сделать, это включить Flathub, как описано в следующем разделе.

На всякий случай, если он не установлен по какой-либо причине, запустите:

$ sudo dnf install flatpak

На RHEL 7 запустите:

$ sudo yum install flatpak

В Linux Mint 18.3 flatpak устанавливается по умолчанию. Таким образом, его настройка не требуется.

На openSUSE Tumbleweed Flatpak можно установить с помощью Zypper:

$ sudo zypper install flatpak

В Ubuntu необходимо добавьте дополнительный репозиторий и установите Flatpak, как показано ниже.

$ sudo add-apt-repository ppa:alexlarsson/flatpak
$ sudo apt update
$ sudo apt install flatpak

Существует плагин Flatpak позволяющий устанавливать приложения, не требуя командной строки. Чтобы установить этот плагин, запустите:

$ sudo apt install gnome-software-plugin-flatpak

Для других дистрибутивов Linux смотри официальную ссылку на установку.

Начало работы с Flatpak

Существует множество популярных приложений, таких как Gimp, Kdenlive, Steam, Spotify, Visual Studio и т. д., доступные Flatpak.

Давайте теперь рассмотрим базовое использование команды flatpak.

Прежде всего, нам нужно добавить удаленные репозитории.

Добавление удаленных репозиториев

Включение репозиториев Flathub:

Flathub - это не что иное, как центральный репозиторий, где доступны все приложения flatpak для пользователей. Чтобы включить его, просто запустите:

$ sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Flathub достаточно для установки самых популярных приложений. Но на всякий случай, если вы хотите попробовать некоторые приложения GNOME, можете добавить репозиторий GNOME.

Включение репозиториев GNOME:

Репозиторий GNOME содержит все основные приложения GNOME. Репозиторий GNOME flatpak доступен в двух версиях, стабильный и ночной.

Чтобы добавить стабильный репозиторий GNOME, выполните следующие команды:

$ wget https://sdk.gnome.org/keys/gnome-sdk.gpg
$ sudo flatpak remote-add --gpg-import=gnome-sdk.gpg --if-not-exists gnome-apps https://sdk.gnome.org/repo-apps/

Приложения в этом репозитории требуют версии 3.20 для среды org.gnome.Platform.

Чтобы установить стабильную среду, запустите:

$ sudo flatpak remote-add --gpg-import=gnome-sdk.gpg gnome https://sdk.gnome.org/repo/

Чтобы добавить ночной репозиторий приложений GNOME, запустите:

$ wget https://sdk.gnome.org/nightly/keys/nightly.gpg
$ sudo flatpak remote-add --gpg-import=nightly.gpg --if-not-exists gnome-nightly-apps https://sdk.gnome.org/nightly/repo-apps/

Приложения в этом репозитории требуют ночной версии среды org.gnome.Platform.

Чтобы установить среду ночное версии, запустите:

$ sudo flatpak remote-add --gpg-import=nightly.gpg gnome-nightly https://sdk.gnome.org/nightly/repo/

Просмотр установленных репозиториев

Чтобы просмотреть все настроенные удаленные репозитории, выполните:

$ flatpak remotes
Name Options
flathub system
gnome system 
gnome-apps system
gnome-nightly system 
gnome-nightly-apps system

Как вы можете видеть, приведенная выше команда перечисляет репозитории, которые вы добавили в свою систему. В списке также указывается, был ли удаленный репозиторий добавлен для каждого пользователя или в рамках всей системы.

Удаление репозитория

Для удаления пула репозиториев, например flathub, необходимо выполнить команду:

$ sudo flatpak remote-delete flathub

Установка приложений Flatpak

В этом разделе мы увидим, как устанавливать приложения Flatpak.

Чтобы установить приложение, просто выполните:

$ sudo flatpak install flathub com.spotify.Client

Все приложения в стабильном репозитории GNOME используют имя версии «stable».

Для установки любых стабильных приложений GNOME, например Evince, выполните:

$ sudo flatpak install gnome-apps org.gnome.Evince stable

Все приложения в ночном репозитории GNOME используют имя версии «master».

Например, чтобы установить gedit, запустите:

$ sudo flatpak install gnome-nightly-apps org.gnome.gedit master

Если вы не хотите устанавливать приложения в масштабе системы, вы также можете устанавливать приложения flatpak для каждого пользователя отдельно, как показано ниже.

$ flatpak install --user <имя_приложения>

В данном случае все установленные приложения будут храниться в $HOME/.var/app/location.

$ ls $HOME/.var/app/ 
com.spotify.Client

Запуск приложений Flatpak

Вы можете запускать установленное приложение в любое время из панели запуска приложений. Из командной строки вы можете запустить его, например Spotify, используя команду:

$ flatpak run com.spotify.Client

Вывод списка приложений

Чтобы просмотреть установленные приложения и сред выполнения, выполните команду:

$ flatpak list

Для просмотра исключительно установленных приложений, используйте эту команду:

$ flatpak list --app

Вы также можете просмотреть список доступных приложений и сред от всех пулов, используя команду:

$ flatpak remote-ls

Чтобы вывести список только доступных приложений используйте команду:

$ flatpak remote-ls --app

Чтобы вывести приложения и среды выполнения из определенного репозитория, например gnome-apps, выполните:

$ flatpak remote-ls gnome-apps

Чтобы вывести только приложения из определенного удаленного репозитория, выполните:

$ flatpak remote-ls flathub --app

Обновление приложений

Чтобы обновить все ваши приложения flatpak, запустите:

$ flatpak update

Для обновления конкретного приложения, выполните следующее действие:

$ flatpak update com.spotify.Client

Получение информации о приложениях

Чтобы отобразить сведения о установленном приложении, запустите, например:

$ flatpak info io.github.mmstick.FontFinder

Пример вывода:

Ref: app/io.github.mmstick.FontFinder/x86_64/stable 
ID: io.github.mmstick.FontFinder 
Arch: x86_64 
Branch: stable 
Origin: flathub 
Date: 2018-04-11 15:10:31 +0000 
Subject: Workaround appstream issues (391ef7f5) 
Commit: 07164e84148c9fc8b0a2a263c8a468a5355b89061b43e32d95008fc5dc4988f4 
Parent: dbff9150fce9fdfbc53d27e82965010805f16491ec7aa1aa76bf24ec1882d683 
Location:  /var/lib/flatpak/app/io.github.mmstick.FontFinder/x86_64/stable/07164e84148c9fc8b0a2a263c8a468a5355b89061b43e32d95008fc5dc4988f4 
Installed size: 2.5 MB 
Runtime: org.gnome.Platform/x86_64/3.28

Удаление приложений

Чтобы удалить приложение flatpak, запустите:

$ sudo flatpak uninstall com.spotify.Client

Для получения дополнительной информации смотри раздел справки flatpak:

$ flatpak --help

И это все на данный момент. Надеюсь, что вы получили общее представление о Flatpak.

Источник