Skip to content

Commit

Permalink
fix(home-manager): link GTK 4.0 files (#114)
Browse files Browse the repository at this point in the history
* fix(home-manager): link GTK 4.0 files

* fix(home-manager): add xdg assertion for gtk

* fix(home-manager): fix gtk missing enable check for xdg assert

* fix(home-manager): use string interpolation for gtk directory

* fix(home-manager): fix formatting for gtk.nix
  • Loading branch information
EnzioKam authored Apr 18, 2024
1 parent 372decb commit 4b98726
Showing 1 changed file with 41 additions and 25 deletions.
66 changes: 41 additions & 25 deletions modules/home-manager/gtk.nix
Original file line number Diff line number Diff line change
Expand Up @@ -30,36 +30,52 @@ in
};
};

config.gtk = lib.mkIf enable {
theme =
let
flavourUpper = ctp.mkUpper cfg.flavour;
accentUpper = ctp.mkUpper cfg.accent;
sizeUpper = ctp.mkUpper cfg.size;
config = lib.mkIf enable {
assertions = [
(lib.ctp.assertXdgEnabled "gtk")
];

# use the light gtk theme for latte
gtkTheme =
if cfg.flavour == "latte"
then "Light"
else "Dark";
in
{
name = "Catppuccin-${flavourUpper}-${sizeUpper}-${accentUpper}-${gtkTheme}";
package = pkgs.catppuccin-gtk.override {
inherit (cfg) size tweaks;
accents = [ cfg.accent ];
variant = cfg.flavour;
gtk = {
theme =
let
flavourUpper = ctp.mkUpper cfg.flavour;
accentUpper = ctp.mkUpper cfg.accent;
sizeUpper = ctp.mkUpper cfg.size;

# use the light gtk theme for latte
gtkTheme =
if cfg.flavour == "latte"
then "Light"
else "Dark";
in
{
name = "Catppuccin-${flavourUpper}-${sizeUpper}-${accentUpper}-${gtkTheme}";
package = pkgs.catppuccin-gtk.override {
inherit (cfg) size tweaks;
accents = [ cfg.accent ];
variant = cfg.flavour;
};
};
};

cursorTheme =
cursorTheme =
let
flavourUpper = ctp.mkUpper cfg.cursor.flavour;
accentUpper = ctp.mkUpper cfg.cursor.accent;
in
lib.mkIf cfg.cursor.enable {
name = "Catppuccin-${flavourUpper}-${accentUpper}-Cursors";
package = pkgs.catppuccin-cursors.${cfg.cursor.flavour + accentUpper};
};
};

xdg.configFile =
let
flavourUpper = ctp.mkUpper cfg.cursor.flavour;
accentUpper = ctp.mkUpper cfg.cursor.accent;
gtk4Dir = "${config.gtk.theme.package}/share/themes/${config.gtk.theme.name}/gtk-4.0";
in
lib.mkIf cfg.cursor.enable {
name = "Catppuccin-${flavourUpper}-${accentUpper}-Cursors";
package = pkgs.catppuccin-cursors.${cfg.cursor.flavour + accentUpper};
{
"gtk-4.0/assets".source = "${gtk4Dir}/assets";
"gtk-4.0/gtk.css".source = "${gtk4Dir}/gtk.css";
"gtk-4.0/gtk-dark.css".source = "${gtk4Dir}/gtk-dark.css";
};
};
}

0 comments on commit 4b98726

Please sign in to comment.