{ config, pkgs, lib, ... }: with lib; let inherit (builtins) fromTOML readFile; cfg = config.themes.v.catppuccin; mako = pkgs.fetchFromGitHub { owner = "catppuccin"; repo = "mako"; rev = "9dd088aa5f4529a3dd4d9760415e340664cb86df"; sha256 = "sha256-nUzWkQVsIH4rrCFSP87mXAka6P+Td2ifNbTuP7NM/SQ="; }; starship = pkgs.fetchFromGitHub { owner = "catppuccin"; repo = "starship"; rev = "5629d2356f62a9f2f8efad3ff37476c19969bd4f"; sha256 = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0="; }; in { options.themes.v.catppuccin = { enable = mkEnableOption "catppuccin"; }; config = mkIf cfg.enable { catppuccin = { flavor = "frappe"; accent = "pink"; }; home.pointerCursor = { name = "Bibata_Ghost"; size = 24; package = pkgs.bibata-cursors-translucent; }; programs.kitty = { themeFile = "Catppuccin-Frappe"; font.name = "DejaVuSansMono Nerd Font"; }; gtk = { enable = true; # theme = { # name = "Catppuccin-Frappe-Standard-Pink-Dark"; # package = pkgs.catppuccin-gtk.override { # accents = [ "pink" ]; # variant = "frappe"; # size = "standard"; # }; # }; iconTheme = { name = "Papirus-Dark"; package = pkgs.papirus-icon-theme.override { color = "violet"; }; }; cursorTheme = { inherit (config.home.pointerCursor) name package size; }; }; # qt = { # enable = true; # # platformTheme = "qtct"; # style.name = "kvantum"; # platformTheme.name = "kvantum"; # }; # xdg.configFile = { # "Kvantum/kvantum.kvconfig".text = '' # [General] # theme=Catppuccin-Frappe-Pink # ''; # }; home.packages = with pkgs; [ # (catppuccin-kvantum.override { # accent = "Pink"; # variant = "Frappe"; # }) ]; services.mako.catppuccin.enable = true; # programs.mako.extraConfig = readFile "${mako}/src/frappe"; # # programs.starship.settings = { # palette = "catppuccin_frappe"; # } //fromTOML (readFile "${starship}/palettes/frappe.toml"); # programs.vscode = { userSettings."workbench.colorTheme" = "Catppuccin Frappé"; extensions = [ pkgs.vscode-extensions.catppuccin.catppuccin-vsc ]; }; }; }