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.