Flatpak
Flatpak — система для создания, распространения и запуска изолированных настольных приложений в Linux.
Установка из репозитория
Flatpak можно установить через терминал:
su -
apt-get update
apt-get install flatpak
epm -i flatpak
Выйдите из системы и снова войдите в нее, либо перезапустите систему, чтобы убедиться, что пути flatpak обновлены правильно.
почему необходимо перезагрузиться после установки Flatpak
Обратите внимание, что каталоги
'/var/lib/flatpak/exports/share'
'/home/oleg/.local/share/flatpak/exports/share'
не находятся по пути поиска, заданном переменной окружения XDG_DATA_DIRS,
поэтому приложения, установленные Flatpak, могут не отображаться на рабочем
столе, пока сеанс не будет перезапущен.
Альтернативный вариант установки Flatpak
Альтернативный и более удобным способом является установка пакета flatpak-repo-flathub
, при установке пакета: автоматические пакет выполнит все вышеизложенные операции:
su -
apt-get update
apt-get install flatpak-repo-flathub
epm -i flatpak-repo-flathub
Информация
В процессе установки пакета flatpak-repo-flathub
произойдет подключение репозитория flathub
Установка с помощью EPM
При установке через epm сразу установится flathub, а так же применится исправление для исправления ошибки: «enabling unprivileged user namespaces»
Информация
Актуально с версии EPM 3.61.5
Для установки Flatpak с помощью EPM введите в терминале команду
epm play flatpak
Использование Flatpak
Основные команды, необходимые для установки, запуска приложений Flatpak и управления ими. Для получения полного списка команд Flatpak выполните flatpak --help
Управление репозиториями
Для просмотра репозиториев настроенных в вашей системе, выполните:
flatpak remotes
Добавить репозиторий, выполните:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
В данном случае, flathub
указано локальное имя, которое присваивается удаленному устройству. URL указывает на файл удаленного устройства .flatpakrepo
. Опция --if-not-exists
останавливает команду от выдачи ошибки, если удаленное устройство уже существует.
Наиболее популярные репозитории
Репозиторий GNOME Nightly
flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
Репозиторий Flatpak Beta
flatpak remote-add flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
Удалить репозиторий, выполните:
flatpak remote-delete flathub
В данном случае, flathub
— локальное имя удаленного репозитория.
Поиск приложений
Для поиска приложения/среды в Flatpak используйте команду search
:
flatpak search krita
Установка приложений
Для установки приложения, запустите:
flatpak install flathub org.gimp.GIMP
flathub
— идентификатор удаленного репозитория, с которого должно быть установлено приложение, и org.gimp.GIMP
- идентификатор приложения.
Как правило, приложению требуется определенная среда выполнения, и она будет установлена до приложения.
Сведения об устанавливаемом приложении также могут быть предоставлены в .flatpakref
файле, который может быть удаленным или локальным. Чтобы указать .flatpakref
вместо того, чтобы вручную указывать идентификатор удаленного устройства и приложения, запустите:
flatpak https://flathub.org/repo/appstream/org.gimp.GIMP.flatpakref
Начиная с Flatpak 1.2, команда install
может выполнять предварительный поиск перед установкой приложения:
$ flatpak install gimp
подтвердите удаленный доступ и приложение и приступит к установке.
В графическом режиме для установки приложений в Flatpak используйте Центр приложений (GNOME Sofrware). Во вкладке «Установлено» в списке выбирите приложение и нажмите кнопку «Установить».
Запуск приложений
Для запуска приложения в Flatpak используйте команду run
и идентификатор приложения:
flatpak run org.gimp.GIMP
Если при запуске приложения вы получаете ошибку: «enabling unprivileged user namespaces», то в данном случае может помочь выполнение следующих команд:
su -
echo kernel.unprivileged_userns_clone=1 > /etc/sysctl.d/50-bubblewrap.conf
sysctl -w kernel.unprivileged_userns_clone=1
chmod 775 /usr/bin/bwrap
exit
Перезагрузите операционную систему или от введите команду в терминале:
systemctl --user restart flatpak-portal.service
Осторожно
Включение непривилегированных пользовательских пространств может значительно упростить использование серьезных уязвимостей в ядре Linux. Многочисленные уязвимости, которые обнаруживаются регулярно, часто могут быть использованы только непривилегированными пользователями, при условии что непривилегированные пользовательские пространства имен поддерживаются и разрешаются ядром.
Отключение непривилегированных пользователей:
su -
echo kernel.unprivileged_userns_clone=0 > /etc/sysctl.d/50-bubblewrap.conf
sysctl -w kernel.unprivileged_userns_clone=0
chmod 4511 /usr/bin/bwrap
systemctl --user restart flatpak-portal.service
exit
Удаление приложений
Для удаления приложения в Flatpak используйте команду uninstall
и идентификатор приложения:
flatpak uninstall org.gimp.GIMP
В графическом режиме для удаления приложений в Flatpak используйте Центр приложений (GNOME Sofrware). Во вкладке «Установлено» в списке выберите приложение и нажмите кнопку «Удалить».
Устранение неполадок
В Flatpak существует набор команд для управление пакетным менеджером.
Для удаления сред выполнения и расширений, которые не используются установленными приложениями, используйте:
flatpak uninstall --unused
Для исправления поврежденных пакетов Flatpak, используйте:
flatpak repair
Узнать, какие изменения вносились в вашу установку Flatpak с течением времени, вы можете просмотреть журналы:
flatpak history