{ config, ... }:

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