{ config, lib, ... }:

with lib;

let
  cfg = config.settings.applications.alacritty;
in {
  options = {
    settings.applications.alacritty.enable = lib.mkOption {
      type = lib.types.bool;
      description = ''
        Enable alacritty terimnal
      '';
    };
  };

  config = mkIf cfg.enable {
    programs.alacritty = {
      enable = true;
      settings = {
        # font = {
        #   normal = { family = "DejaVuSansM Nerd Font"; style = "Regular"; };
        # };
        # window = {
        #   opacity = 0.8;
        #   padding = { x = 10; y = 10; };
        # };
        # colors = {
        #   draw_bold_text_with_bright_colors = false;
        #   primary = {
        #     background = "0x${config.colorScheme.palette.base00}";
        #     foreground = "0x${config.colorScheme.palette.base05}";
        #   };
        #   cursor = {
        #     text = "0x${config.colorScheme.palette.base00}";
        #     cursor = "0x${config.colorScheme.palette.base05}";
        #   };
        #   normal = {
        #     black = "0x${config.colorScheme.palette.base00}";
        #     red = "0x${config.colorScheme.palette.base08}";
        #     green = "0x${config.colorScheme.palette.base0B}";
        #     yellow = "0x${config.colorScheme.palette.base0A}";
        #     blue = "0x${config.colorScheme.palette.base0D}";
        #     magenta = "0x${config.colorScheme.palette.base0E}";
        #     cyan = "0x${config.colorScheme.palette.base0C}";
        #     white = "0x${config.colorScheme.palette.base05}";
        #   };
        #   bright = {
        #     black = "0x${config.colorScheme.palette.base03}";
        #     red = "0x${config.colorScheme.palette.base09}";
        #     green = "0x${config.colorScheme.palette.base01}";
        #     yellow = "0x${config.colorScheme.palette.base02}";
        #     blue = "0x${config.colorScheme.palette.base04}";
        #     magenta = "0x${config.colorScheme.palette.base06}";
        #     cyan = "0x${config.colorScheme.palette.base0F}";
        #     white = "0x${config.colorScheme.palette.base07}";
        #   };
        # };
      };
    };
  };
}
