LINUX.ORG.RU

Calibre не полностью работает из flatpak

 , ,


0

1

Всем привет.

Имеется хост Gentoo stable.

└─> eix sys-apps/flatpak
[I] sys-apps/flatpak
     Доступные версии:      1.12.3^t ~1.12.7^t ~1.13.2^t ~1.13.3^t {X doc introspection policykit seccomp systemd}
     Установленные версии:  1.12.3^t(03:38:56 14.07.2022)(X policykit -doc -introspection -seccomp -systemd)
     Домашняя страница:     https://flatpak.org/
     Описание:              Linux application sandboxing and distribution framework
└─> flatpak list --app
Имя                ID Приложения                      Версия         Ветка         Тип установки
calibre            com.calibre_ebook.calibre          6.2.1          stable        user
Flatseal           com.github.tchx84.Flatseal         1.8.0          stable        user
LibreOffice        org.libreoffice.LibreOffice        7.3.5.2        stable        user

Запускаю calibre никаких ошибок, приложение открывается. Кнопочки нажимаются, но при попытке открыть любой диалог выбора директории или файла, ничего не происходит. Т.е. ни добавить книгу, ни изменить местополжение библиотеки, вообще никаких манипуляций с файлами. Проверял права как руками, так и через Flatseal, на работу с файлововй системой ограничений нет. В установленном рядом LibreOffice всё работает нормально.

Попробовал запускать с дебагом и в strace через

LANG=C flatpak run --command=sh --devel com.calibre_ebook.calibr

Но не вижу ничего особо критичного(либо я не знаю, что искать в том же strace в данном случае).

xdg-desktop-portal стоит. Доустанавливать дополнительно версии kde/gtk пробовал - поведение не меняется.

└─> eix -c xdg-desktop
[N] gui-libs/xdg-desktop-portal-lxqt (0.2.0): Backend implementation for xdg-desktop-portal using Qt/KF5/libfm-qt
[N] gui-libs/xdg-desktop-portal-wlr (0.5.0(0/9999)): xdg-desktop-portal backend for wlroots
[N] kde-plasma/xdg-desktop-portal-kde (5.24.6(5)): Backend implementation for xdg-desktop-portal that is using Qt/KDE Frameworks
[I] sys-apps/xdg-desktop-portal (1.14.4@14.07.2022): Desktop integration portal
[N] sys-apps/xdg-desktop-portal-gnome (~42.3): Backend implementation for xdg-desktop-portal using GNOME
[N] sys-apps/xdg-desktop-portal-gtk (1.14.0): Backend implementation for xdg-desktop-portal using GTK+

Куда ещё можно копнуть?

P.S. Ставить appimage, snap или устанавливать нативный пакет - не предлагать. Меня в данный момент интересует именно flatpak.

А разве смысл существования Flatpak не в том, чтобы таких проблем не было в принципе?

Попробовал поставить Flatpak, вроде норм.

Далее надо было добавить список приложений:

# flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Can't load uri https://flathub.org/repo/flathub.flatpakrepo: Недопустимый сертификат TLS

Ладно… 🤔 скачал вручную, благо у Firefox таких проблем нет.

Поставил com.calibre_ebook.calibre.

Запускаю:

# flatpak run com.calibre_ebook.calibre
QStandardPaths: wrong permissions on runtime directory /run/user/0, 0755 instead of 0700
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile  QSurfaceFormat::NoProfile)
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile  QSurfaceFormat::NoProfile)
Could not initialize GLX

😣

raspopov
()
Ответ на: комментарий от raspopov

У тебя как-то совсем сурово. И с правами что-то не так, и GLX не нашёл(в иксах есть?). Но уже хотя бы есть ошибки, которые можно фиксить. У меня же тишина.

А так да. Задумка такая, что поставил одной командой и работает. Но как обычно не всё сразу. Я потому и хочу разобраться. И тот же LibreOffice у меня именно сходу одной командой взлетел и без проблем работает.

shell-script ★★★★★
() автор топика
Ответ на: комментарий от shell-script

Задумка такая, что поставил одной командой и работает.

В пакетных менеджерах это так ∧ во фатфаке это не так ⇒ фатфак не нужен.

token_polyak ★★★★★
()

Я так понимаю что sys-apps/xdg-desktop-portal для работы не достаточно, потому что у тебя нет ни одного бекенда. Попробуй доустановить какой-нибудь и задать ещё XDG_CURRENT_DESKTOP в окружении.

Что у тебя за DE/WM вообще?

Gary ★★★★★
()
Ответ на: комментарий от Gary

Пробовал. Для верности, сейчас проверил ещё раз.

Поставил kde-plasma/xdg-desktop-portal-kde. XDG_CURRENT_DESKTOP=KDE. Соответственно у меня кеды в качестве DE.

Запуск flatpak run -vv com.calibre_ebook.calibre показывает, что XDG_CURRENT_DESKTOP так же указан верно.

└─> grep -A 1 XDG calibre.log 
F:     XDG_RUNTIME_DIR
F:     /run/user/1000
--
F:     XDG_CACHE_HOME
F:     /home/cppmm/.var/app/com.calibre_ebook.calibre/cache
--
F:     XDG_CONFIG_DIRS
F:     /app/etc/xdg:/etc/xdg
--
F:     XDG_CONFIG_HOME
F:     /home/cppmm/.var/app/com.calibre_ebook.calibre/config
--
F:     XDG_CURRENT_DESKTOP
F:     KDE
--
F:     XDG_DATA_DIRS
F:     /app/share:/usr/share:/usr/share/runtime/share:/run/host/user-share:/run/host/share
--
F:     XDG_DATA_HOME
F:     /home/cppmm/.var/app/com.calibre_ebook.calibre/data
--
F:     XDG_SEAT
F:     seat0
--
F:     XDG_SEAT_PATH
F:     /org/freedesktop/DisplayManager/Seat0
--
F:     XDG_SESSION_CLASS
F:     user
--
F:     XDG_SESSION_DESKTOP
F:     KDE
--
F:     XDG_SESSION_ID
F:     2
--
F:     XDG_SESSION_PATH
F:     /org/freedesktop/DisplayManager/Session1
--
F:     XDG_SESSION_TYPE
F:     x11
--
F:     XDG_VTNR
F:     7

Ситуация не меняется.

shell-script ★★★★★
() автор топика
Ответ на: комментарий от shell-script

Как у тебя установлены кеды? Через plasma-meta? Включи у неё desktop-portal, ты вообще вручную не должен его ставить.

Gary ★★★★★
()
Ответ на: комментарий от gasinvein

xdg-desktop-portal был запущен, а вот xdg-desktop-portal-kde - нет. Я так понял, что его запускает dbus. Перезапустил dbus после установки и всё подхватилось. Спасибо.

shell-script ★★★★★
() автор топика
Ответ на: комментарий от Gary

Только kdecore-meta, остальное руками. Мне не всё, что есть в кедах нужно. Как выяснилось, недостаточно было установить desktop-portal, надо было чтобы его подхватил dbus. Спасибо за подсказки, теперь работает.

shell-script ★★★★★
() автор топика
Ответ на: комментарий от shell-script

перезапускать надо было не dbus, а xdg-desktop-portal, но у тебя он судя по всему перезапустился вместе с dbus, так что всё нормально.

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Нет, оба сервиса xdg-desktop-portal- поддерживают dbus-активацию, т.е. запускаются по необходимости и вручную их запускать не нужно. Но вот после установки dbus должен был о них «узнать», почему не узнал - вопрос к мейнтейнерам пакетов в дистрибутиве.

gasinvein ★★★
()
Последнее исправление: gasinvein (всего исправлений: 1)
Ответ на: комментарий от gasinvein

В gentoo нет никаких механизмов для этого. Тем более что это пользовательские сервисы а не системные.

eternal_sorrow ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.