lifetracker/modules/components/theming/default.nix
2025-01-24 13:20:01 -08:00

69 lines
1.5 KiB
Nix

{
config,
inputs,
lib,
username,
pkgs,
vars,
...
}:
let
cfg = config.catppuccinTheming;
in
#cursor-theme = "Catppuccin-${flavor-upper}-${accent-upper}";
{
options = {
catppuccinTheming = {
enable = lib.mkEnableOption "Enable catppuccinTheming in NixOS & home-manager";
};
};
config = lib.mkIf cfg.enable {
stylix = {
enable = true;
autoEnable = true;
image = ./wallpapers/biking-sunset.jpg;
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
opacity.terminal = 0.8;
cursor.package = pkgs.bibata-cursors;
cursor.name = "Bibata-Modern-Ice";
cursor.size = 24;
fonts = {
monospace = {
package = pkgs.nerd-fonts.jetbrains-mono;
name = "JetBrainsMono Nerd Font Mono";
};
sansSerif = {
package = pkgs.montserrat;
name = "Montserrat";
};
serif = {
package = pkgs.montserrat;
name = "Montserrat";
};
sizes = {
applications = 12;
terminal = 15;
desktop = 11;
popups = 12;
};
};
};
fonts = {
packages = with pkgs; [
noto-fonts-emoji
noto-fonts-cjk-sans
font-awesome
material-icons
];
};
home-manager.users.${username}.stylix = {
targets = {
kitty.enable = true;
foot.enable = true;
};
autoEnable = true;
};
};
}