Насколько бы пакетные менеджеры Linux не были бы удобными, они имеют как преимущества, так и недостатки. Зависимости пакетов, это сильная сторона Linux пока вы не попытаетесь установить старый пакет или пакет из другого дистрибутива. Небольшая ошибка создателей пакета в настройке зависимостей приведет к тому что вам придется потратить уйму времени на то, чтобы во всём разобраться и исправить.
Чтобы решить эту проблему был придуман универсальный формат пакетов flatpak. Все зависимости программы уже находятся в самом пакете, именно такие, какие надо и их не нужно устанавливать отдельно. Поэтому пакеты flatpack могут быть установлены в любом дистрибутиве. В этой статье мы рассмотрим как установить flatpak в Linux, а также как пользоваться этой программой для установки пакетов.
Особенности Flatpak
Примерно в то же время, что и Flatpak, появился менеджер пакетов snap. По своей сути Flatpak очень похож на snap. Здесь тоже все зависимости находятся внутри установочного пакета, программе внутри пакета разрешен доступ только к тем, ресурсам, которые ей нужны. Но в отличие от snap, flatpak более децентрализован. Никто не контролирует какие репозитории вы создаёте и что в них распространяете. Вы можете создать свой репозиторий, вроде PPA и распространять там свое программное обеспечение. В то же время как для того чтобы попасть в Snap Store надо получить разрешение от Canonical.
Установка Flatpak в Linux
В таких системах, как Fedora пакетный менеджер Flatpak уже поставляется по умолчанию. Но если вы захотите использовать программу в Ubuntu, Debian или в Linux Mint, то вам понадобится её установить:
sudo apt install flatpak
Если в репозиториях вашего дистрибутива нет пакета Flatpak, вы можете установить его из PPA:
sudo add-apt-repository ppa:alexlarsson/flatpak
sudo apt update
sudo apt install flatpak
Если всё же вам надо установить flatpak в дистрибутиве, основанном на Red Hat Enterprice Linux, выполните:
sudo yum install flatpak
Для OpenSUSE команда не сильно отличается:
sudo zypper install flatpak
Да и для ArchLinux тоже:
sudo pacman -S flatpak
После установки вы можете пользоваться flatpak из командной строки. Чуть ниже мы рассмотрим как это делать, но для удобства можно добавить поддержку flatpak в центр приложений. Для этого в Ubuntu достаточно установить такой пакет:
sudo apt install gnome-software-plugin-flatpak
Для других дистрибутивов пакет будет тот же, только надо будет использовать их пакетный менеджер. После этого вы можете скачивать файлы .flatpakref и Flathub и устанавливать их двойным кликом.
Как пользоваться Flatpak
1. Поиск программ на FlatHub
Несмотря на то, что Flatpak децентрализованный, большинство самых популярных пакетов вы можете найти на сайте FlatHub. Просто выберите нужную программу из списка:
Откройте её страницу и нажмите кнопку Install для установки программы с помощью центра приложений:
Кроме того, внизу страницы есть инструкция как установить программу с помощью терминала:
2. Добавление репозиториев
Самый популярный репозиторий Flatpak на момент написания этой статьи — flathub. Если Flatpak уже был установлен в вашей системе, то, скорее всего, и этот репозиторий тоже был установлен. Для добавления репозитория используется такая команда:
$ flatpak remote-add имя_репозитория ссылка_на_репозиторий
Например, для FlatHub выполните:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Кроме того, существует ещё несколько репозиториев, например, репозиторий программ Gnome:
flatpak remote-add --if-not-exists gnome https://sdk.gnome.org/gnome.flatpakrepo
flatpak remote-add gnome-apps https://sdk.gnome.org/gnome-apps.flatpakrepo
Репозиторий программ KDE:
flatpak remote-add --if-not-exists kdeapps --from https://distribute.kde.org/kdeapps.flatpakrepo
Другие репозитории вы можете найти в интернете. Посмотреть все добавленные репозитории можно выполнив:
flatpak remotes
3. Поиск по репозиториям
Вы можете посмотреть все пакеты, которые есть в репозитории. Для этого выполните команду remote-ls и передайте ей имя репозитория:
flatpak remote-ls flathub
Ещё можно искать нужный пакет по имени, для этого используйте:
$ flatpak search имя_пакета
Например:
flatpak search pidgin
Для установки программы вам понадобиться имя пакета программы из колонки Application ID и имя репозитория из колонки Remotes.
4. Установка пакетов
Для установки пакета flatpak используйте такую команду:
$ flatpack install имя_репозитория имя_пакета
Например, давайте установим тот же Pidgin, найденный предыдущей командой:
flatpak install flathub im.pidgin.Pidgin
Если вы не хотите добавлять репозиторий в систему, вы можете установить программу по ссылке из сети. Просто скопируйте ссылку на файл flatpakref и передайте её программе:
flatpak install --from https://dl.flathub.org/repo/appstream/im.pidgin.Pidgin.flatpakref
Если вы уже скачали файл flatpakref, его тоже можно установить.
flatpak install ~/Загрузки/im.pidgin.Pidgin.flatpakref
Посмотреть все установленные программы можно выполнив команду:
flatpack list
5. Запуск программ Flatpak
Программы, установленные с помощью flatpak можно запустить из главного меню. Однако если вы захотите запустить их с помощью терминала. Надо использовать команду flatpak:
flatpak run im.pidgin.Pidgin
6. Удаление программ
Для удаления программы используйте такую команду:
$ flatpak uninstall имя_программы
Например, для Pidgin:
flatpak uninstall im.pidgin.Pidgin
После удаления пакета можно удалить неиспользуемые компоненты, чтобы освободить место на диске:
flatpak uninstall --unused
7. Обновление программ
Как и в любом другом пакетном менеджере, здесь можно обновлять установленные программы до самой новой версии. Для этого выполните:
flatpak update
Иногда устанавливаемые пакеты требуют более новые версии компонентов и поэтому не хотят устанавливаться. Если вы сталкиваетесь с такой ошибкой, просто обновите все пакеты.
Выводы
В этой небольшой статье мы рассмотрели как установить Flatpak, а также как пользоваться этой системой. Как видите, здесь всё немного сложнее по сравнению со snap, зато тут больше свободы. А что вам больше нравится snap или flatpak? Напишите в комментариях!