{ config, lib, pkgs, ... }:
{
  programs.alacritty = {
    enable = true;
    settings = {
      colors = {
        # (Gruvbox dark)
        primary = {
          background = "0x1d2021";
          foreground = "0xebdbb2";
        };
        normal = {
          black = "0x282828";
          red = "0xcc241d";
          green = "0x98971a";
          yellow = "0xd79921";
          blue = "0x458588";
          magenta = "0xb16286";
          cyan = "0x689d6a";
          white = "0xa89984";
        };
        bright = {
          black = "0x928374";
          red = "0xfb4934";
          green = "0xb8bb26";
          yellow = "0xfabd2f";
          blue = "0x83a598";
          magenta = "0xd3869b";
          cyan = "0x8ec07c";
          white = "0xebdbb2";
        };
      };
      window = {
        title = "Alacritty";
        padding = {
          x = 5;
          y = 5;
        };
      };
      scrolling.history = 65535;
      font.size = 8;
      key_bindings = [
        {
          key = "Up";
          mods = "Control";
          action = "IncreaseFontSize";
        }
        {
          key = "Down";
          mods = "Control";
          action = "DecreaseFontSize";
        }
      ];
    };
  };
}
