config/modules/home/rice/gtk/default.nix
2025-08-07 15:27:02 -04:00

67 lines
1.3 KiB
Nix

{
options,
config,
lib,
pkgs,
...
}:
with lib;
with lib.custom; let
cfg = config.rice.gtk;
ctp = config.catppuccin;
in {
options.rice.gtk = with types; {
enable = mkBoolOpt false "Enable GTK Customization";
};
config = mkIf cfg.enable {
catppuccin.pointerCursor.enable = true;
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
};
gtk = {
enable = true;
font = {
name = fonts.ui;
size = 12;
};
theme = {
name = "Catppuccin-GTK-Dark";
package = pkgs.magnetic-catppuccin-gtk;
};
iconTheme = {
name = "Papirus-Dark";
};
gtk3.extraConfig = {
gtk-xft-antialias = 1;
gtk-xft-hinting = 1;
gtk-xft-hintstyle = "hintslight";
gtk-xft-rgba = "rgb";
gtk-application-prefer-dark-theme = 1;
};
gtk4.extraConfig.gtk-application-prefer-dark-theme = 1;
gtk2.extraConfig = ''
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintslight"
gtk-xft-rgba="rgb"
'';
};
# Linux-specific packages (Qt theming)
home.packages = with pkgs;
lib.mkIf (!pkgs.stdenv.isDarwin) [
qt5.qttools
qt6Packages.qtstyleplugin-kvantum
libsForQt5.qtstyleplugin-kvantum
libsForQt5.qt5ct
];
};
}