[ @flatpak @console @viber ]
В Debian можно устанавливать приложения из общего репозитория (центра). Иногда надо/чешется установить софт, которого в репозиториях по ряду ОБОСНОВАННЫХ причин нет. Такой софт раздают/ставят в виде отдельных файлов DEB (или RPM).
Есть несколько подобных решений:
- Snap, делают Canonical — Ubuntu (Debian Sid глубоко внутри)
- Flatpak, из мира GNOME, но работает повсюду
- AppImage
Работают они по-разному. Snap и Flatpak раскладывают файлы программ в разные места на жёстком диске, и используют части установленной системы. AppImage упаковывает каждую свою программу в один файл, в который запихано всё то, что этой программе может понадобиться.
Такие решения называют «universal package system», или же кросс-платформенный фреймворк для запуска ПО без его установки в систему. Назовём всё это грубо и просто словом «контейнеры». Flatpak — один из них.
Установка flatpak
Установка софта
Через файлы *.flatpackref
Можно даблкликом — откроется Apper и всё поставит.
Можно через терминал:
flatpak install *.flatpackref
Установленный софт будет доступен в общем меню, что незаметно удобно.
Из флэтхаба
flatpak install flathub org.libreoffice.LibreOffice
Пример с установкой сразу со стороны спотифая
flatpak install --from https://flathub.org/repo/appstream/com.spotify.Client.flatpakref
Если идём по пути скачать .flatpakref на хдд, тогда все проще:
flatpak install [ApplicationID].flatpakref
Через другой репозиторий Flatpak
Почти всегда всё ставят из flathub, но разработчик каждого софта волен поднять собственный репозиторий.
flatpak install [remoteServer> [ApplicationID]
Запуск ПО из Flatpak
flatpak run [ApplicationID]
Пример с клиентом для спотифая:
Починить вероятные проблемы при установке ПО
Если возникают "error: runtime/org.freedesktop.Platform/x86_64/1.6 not installed", то возможное решение:
flatpak update -v
Посмотреть список всего софта флэтпэк в системе
Это нужно для того, чтобы точно знать название ПО, которое будем удалять.
flatpak list
Пример ответа
Удаление Flatpak app
flatpak uninstall [ApplicationID]
Удаление неиспользуемых флэтпэк-приложений
Применять осторожно, может бомбануть.
flatpak uninstall --unused
Где найти место запуска
В меню программ правый клик по нужному ПО, глянуть путь вызова к файлу .desktop
Обычно флатпаки находятся в ~/.var/app и запускаются из /var/lib/flatpak/exports/share/applications
Редактирование файла запуска
sudo mcedit /var/lib/flatpak/app/org.zim_wiki.Zim/current/active/export/share/applications/org.zim_wiki.Zim.desktop
Найти в этом файле место вызова. Обычно оно в разделе [Desktop Entry], но там может быть несколько точек — посмотреть весь файл внимательно. Всякие переводы подсказок на другие языки можно (АККУРАТНО!) удалить.
Добавить нюансы
Предположим, что шрифт в ПО слишком мелкий. Это можно изменить глобально, добавив в параметры запуска указание про QT_SCALE_FACTOR. Оно должно быть добавлено ДО вызова ПО.
Пример для viber:
flatpak override --user --env="QT_SCALE_FACTOR=1.25" com.viber.Viber
Может быть и так:
/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=viber --file-forwarding --env="QT_SCALE_FACTOR=1.25" com.viber.Viber
Другой софт может запускаться так
QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_SCREEN_SCALE_FACTORS=2 QT_SCALE_FACTOR=1 flatpak run org.jaspstats.JASP