{ config, lib, theme, ... }: let cfg = config.my.graphical.wayland.foot; in { options.my.graphical.wayland.foot = { enable = lib.mkEnableOption null; }; config = lib.mkIf cfg.enable (let loweredTheme = builtins.mapAttrs (_: lib.toLower) theme; in { programs.foot = { enable = true; settings = { main = { font = "JetbrainsMono Nerd Font:size=11"; pad = "5x5 center"; }; scrollback = { indicator-position = "fixed"; indicator-format = "percentage"; }; cursor.color = with loweredTheme; "${base} ${rosewater}"; text-bindings = { "\\x1b\\x7f" = "Control+BackSpace"; }; colors = with loweredTheme; rec { foreground = text; background = base; regular0 = surface1; regular1 = red; regular2 = green; regular3 = yellow; regular4 = blue; regular5 = pink; regular6 = teal; regular7 = subtext1; bright0 = regular0; bright1 = regular1; bright2 = regular2; bright3 = regular3; bright4 = regular4; bright5 = regular5; bright6 = regular6; bright7 = regular7; }; }; }; }); }