设置
当 Qt 应用程序(KeePassXC、AntiMicroX)自动启动(通过自动启动)时,不会应用 GTK 主题。
- 所有应用程序都是通过标准
apt
包安装的(我知道快照主题问题)。 - 我在 Ubuntu 上
20.04
,我使用 Yaru dark gtk 主题。 - 要将 GTK 主题应用于 Qt 应用程序,我执行了以下操作:
- 安装了
qt5-style-plugins
apt 包(及其所有依赖项) - 添加了一行
/etc/environment
:QT_QPA_PLATFORMTHEME=gtk2
- 如果我手动启动应用程序,这将正常工作
- 安装了
额外的摆弄表明,在冷启动时,主题永远不会被正确应用,但是,在重新启动时,它有时确实有效。
问题
如何确保正确使用深色 gtk 应用程序主题?
我会假设当自动启动发生时,某些设置没有加载,因此会损坏。这些应用程序是否需要等待某种“服务” ?
我应该尝试增加延迟吗?
是什么让它发挥作用
为自动启动桌面文件添加了 1 秒的启动延迟(在 中
~/.config/autostart/
):这使得应用程序在登录后 X 会话正确初始化后启动。不需要其他任何东西(除了初始设置)。
笔记
QT 配置工具(在
qt5ct
apt 包中提供)是可行的,但不是必需的。/etc/X11/Xsession.d/99qt5ct
,如果未设置,则将其QT_QPA_PLATFORMTHEME
设置为qt5ct
。~/.config/qt5ct/qt5ct.conf
:为了调试应用程序的环境,可以使用这个 shell 命令检查(注意,我使用的是 fish 而不是 bash):
strings /proc/(pidof keepassxc)/environ | grep QT
要调查环境变量的设置位置,可以使用以下命令:
资料来源:
在 Xubuntu 20.04 LTS 上
首先,安装Qt5配置工具
/etc/X11/Xsession.d/56xubuntu-session
然后,通过在前面插入一个哈希来注释掉以下行:现在,注销并重新登录。
Menu
使用→Settings
→所做的更改Qt5 Settings
将立即生效。