Когда приложение Qt (KeePassXC, AntiMicroX) запускается автоматически (через автозапуск), тема GTK не применяется.
пакетов apt
(I мне известно о проблемах с привязкой тем). 20.04
, я использую темную тему Yaru gtk. qt5-style-plugins
apt (со всеми его зависимостями) / etc / environment
: QT_QPA_PLATFORMTHEME = gtk2
Как я могу гарантировать, что темная тема приложения gtk используется правильно?
Я бы предположил, что при автозапуске некоторые настройки не загружаются, отсюда и поломка. Есть ли какая-то «служба» , которую эти приложения должны будут ждать? Стоит ли пытаться добавить задержку?
Добавлена задержка запуска на 1 секунду для файлов автозапуска на рабочем столе (в ~/.config/autostart/
):
[Desktop Entry]
...
X-GNOME-Autostart-Delay=1
При этом приложения запускались после X сеанс правильно инициализировался после входа в систему. Больше ничего не требовалось (кроме первоначальной настройки).
Инструмент настройки QT (поставляется в пакете qt5ct
apt) можно использовать, но не обязательно.
/etc/X11/Xsession.d/99qt5ct
, которая устанавливает для QT_QPA_PLATFORMTHEME
значение qt5ct
, если оно не установлено. ~/.config/qt5ct/qt5ct.conf
:[Внешний вид]
icon_theme = Numix-круг
стандартные_диалоги=gtk2
стиль=gtk2
Для отладки env приложений можно проверить с помощью этой команды оболочки (обратите внимание, я использую fish, а не bash): strings /proc/(pidof keepassxc)/environ | grep QT
Чтобы выяснить, где установлены переменные среды, можно использовать следующие команды:
# для всей системы — это было быстро
grep QT_QPA_PLATFORMTHEME --рекурсивный /etc/*
# на пользователя - в моей системе это было очень медленно (*khm* steam *khm*)
grep QT_QPA_PLATFORMTHEME --рекурсивный ~/*
Источники: