如何在 NixOS 上的 GNOME 中正确设置 QT_STYLE_OVERRIDE env var?

如何在 NixOS 上的 GNOME 中正确设置 QT_STYLE_OVERRIDE env var?

我有一个关于 Gnome 上 Qt 应用程序主题的问题。

我正在使用 Home Manager 和 Flakes 与 Gnome 一起运行 NixOS。我的主题是 Adwaita-dark,但我注意到一些 Qt 应用程序(例如 VLC)没有应用深色主题。

我尝试调整qt中的所有相关设置home.nix,但没有成功。

当我运行时,我得到了问题所在的线索qt5ct,它显示了以下消息:

Please remove the QT_STYLE_OVERRIDE environment variable (current value: adwaita).

The QT_QPA_PLATFORMTHEME environment variable is not set correctly (current value: gnome, required value: qt5ct).

我终于找到了解决方法,将以下内容添加到configuration.nix

  environment.variables = {
    "QT_STYLE_OVERRIDE" = pkgs.lib.mkForce "adwaita-dark";
  };

现在它可以工作了,Qt 应用程序具有深色主题。

然而,这感觉像是一个混乱的黑客行为,如果可能的话,我想了解如何正确地做到这一点。以前有人处理过这个吗?

答案1

qt.style = "adwaita-dark"我想应该更干净一点。我现在才在文档中找到它:https://search.nixos.org/options?show=qt.style

编辑:哎呀,这是 NixOS 选项,而不是像您问的那样家庭管理器。

相关内容