Skip to content

Commit

Permalink
home/programs/qt: use qtct + kvantum
Browse files Browse the repository at this point in the history
qtct is needed, otherwise apps don't find the proper icon theme/font settings.
  • Loading branch information
fufexan committed Aug 15, 2024
1 parent 5b73e83 commit a0bebad
Showing 1 changed file with 52 additions and 3 deletions.
55 changes: 52 additions & 3 deletions home/programs/qt.nix
Original file line number Diff line number Diff line change
@@ -1,20 +1,42 @@
{pkgs, ...}: let
{
lib,
pkgs,
config,
...
}: let
KvLibadwaita = pkgs.fetchFromGitHub {
owner = "GabePoel";
repo = "KvLibadwaita";
rev = "87c1ef9f44ec48855fd09ddab041007277e30e37";
hash = "sha256-K/2FYOtX0RzwdcGyeurLXAh3j8ohxMrH2OWldqVoLwo=";
sparseCheckout = ["src"];
};

qtctConf = {
Appearance = {
custom_palette = false;
icon_theme = config.gtk.iconTheme.name;
standard_dialogs = "xdgdesktopportal";
style = "kvantum";
};
};

defaultFont = "${config.gtk.font.name},${builtins.toString config.gtk.font.size}";
in {
qt = {
enable = true;
style.name = "kvantum";
platformTheme = "qtct";
};

home.packages = [pkgs.qt6Packages.qtstyleplugin-kvantum];
home.packages = [
pkgs.qt6Packages.qtstyleplugin-kvantum
pkgs.qt6Packages.qt6ct
pkgs.libsForQt5.qtstyleplugin-kvantum
pkgs.libsForQt5.qt5ct
];

xdg.configFile = {
# Kvantum config
"Kvantum" = {
source = "${KvLibadwaita}/src";
recursive = true;
Expand All @@ -24,5 +46,32 @@ in {
[General]
theme=KvLibadwaitaDark
'';

# qtct config
"qt5ct/qt5ct.conf".text = let
default = ''"${defaultFont},-1,5,50,0,0,0,0,0"'';
in
lib.generators.toINI {} (
qtctConf
// {
Fonts = {
fixed = default;
general = default;
};
}
);

"qt6ct/qt6ct.conf".text = let
default = ''"${defaultFont},-1,5,400,0,0,0,0,0,0,0,0,0,0,1,Regular"'';
in
lib.generators.toINI {} (
qtctConf
// {
Fonts = {
fixed = default;
general = default;
};
}
);
};
}

0 comments on commit a0bebad

Please sign in to comment.