dotnix/apps/gui/gtk.nix

56 lines
1.4 KiB
Nix
Raw Permalink Normal View History

{
config,
lib,
pkgs,
...
}: {
home.pointerCursor = {
name = "catppuccin-cursors";
package = pkgs.catppuccin-cursors.mochaLavender;
size = 24;
};
gtk = {
enable = true;
iconTheme = {
name = "Papirus-Dark";
package = pkgs.catppuccin-papirus-folders.override {
flavor = "mocha";
accent = "lavender";
};
};
theme = {
name = "Catppuccin-Mocha-Compact-Lavender-Dark";
package = pkgs.catppuccin-gtk.override {
accents = ["lavender"];
variant = "mocha";
size = "compact";
};
};
gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
gtk2.extraConfig = ''
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintslight"
gtk-xft-rgba="rgb"
'';
gtk3.extraConfig = {
gtk-xft-antialias = 1;
gtk-xft-hinting = 1;
gtk-xft-hintstyle = "hintslight";
gtk-xft-rgba = "rgb";
};
};
xdg = let
themeDir = "${config.gtk.theme.package}/share/themes/${config.gtk.theme.name}";
in
lib.mkIf config.gtk.enable {
configFile."gtk-4.0/assets" = {
source = "${themeDir}/gtk-4.0/assets";
recursive = true;
};
configFile."gtk-4.0/gtk.css".source = "${themeDir}/gtk-4.0/gtk.css";
configFile."gtk-4.0/gtk-dark.css".source = "${themeDir}/gtk-4.0/gtk-dark.css";
};
}