{ pkgs, ... }: {
  programs.ghostty = {
    enable = true;
    package = if pkgs.stdenv.isDarwin then pkgs.ghostty-bin else pkgs.ghostty;

    enableFishIntegration = true;

    settings = {
      theme = "light:Mizuki Light,dark:Mizuki Dark";

      window-colorspace = "srgb";
      window-theme = "ghostty";
      window-subtitle = "working-directory";

      font-family = "JetBrainsMono NFM Regular";
      font-family-bold = "JetBrainsMono NFM Bold";
      font-family-italic = "JetBrainsMono NFM Bold Italic";
      font-family-bold-italic = "JetBrainsMono NFM Italic";

      window-width = 100;
      window-height = 30;

      auto-update = "off";
    };
  };

  xdg.configFile."ghostty/themes/Mizuki Light".text = ''
    background = #fcf8f9
    foreground = #191017

    cursor-color = #301d23
    selection-background = #f4ecee
    selection-foreground = #191017

    palette = 0=#5c5f77
    palette = 1=#d20f39
    palette = 2=#40a02b
    palette = 3=#df8e1d
    palette = 4=#1e66f5
    palette = 5=#ea76cb
    palette = 6=#179299
    palette = 7=#acb0be
    palette = 8=#6c6f85
    palette = 9=#d20f39
    palette = 10=#40a02b
    palette = 11=#df8e1d
    palette = 12=#1e66f5
    palette = 13=#ea76cb
    palette = 14=#179299
    palette = 15=#bcc0cc
  '';

  xdg.configFile."ghostty/themes/Mizuki Dark".text = ''
    background = #191017
    foreground = #fafafa

    cursor-color = #fafafa
    selection-background = #2c1f2d
    selection-foreground = #fafafa

    palette = 0=#5c5f77
    palette = 1=#f38ba8
    palette = 2=#a6e3a1
    palette = 3=#f9e2af
    palette = 4=#89b4fa
    palette = 5=#f5c2e7
    palette = 6=#94e2d5
    palette = 7=#bac2de
    palette = 8=#6c7086
    palette = 9=#f38ba8
    palette = 10=#a6e3a1
    palette = 11=#f9e2af
    palette = 12=#89b4fa
    palette = 13=#f5c2e7
    palette = 14=#94e2d5
    palette = 15=#cdd6f4
  '';
}
