infrastructure/common/hm-modules/catppuccin/default.nix
Vivian 359c8534f9
Some checks are pending
Lint / lint (push) Waiting to run
update aoife
2024-11-29 20:52:57 +01:00

99 lines
2.3 KiB
Nix

{
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 ];
};
};
}