{ theme, ... }: let n = theme.paletteNoHash; fonts = theme.fonts; terminalFontSize = toString fonts.sizes.terminal; in { programs.foot = { enable = true; server.enable = true; settings = { main = { app-id = "footclient"; dpi-aware = "no"; font = "${fonts.monospace.name}:size=${terminalFontSize}"; initial-color-theme = 1; workers = 32; }; bell.system = "no"; colors = { alpha = 1.0; background = n.darkestGray; foreground = n.lightGray; regular0 = n.darkestGray; regular1 = n.red; regular2 = n.green; regular3 = n.yellow; regular4 = n.purple; regular5 = n.blue; regular6 = n.magenta; regular7 = n.lightGray; bright0 = n.gray; bright1 = n.red; bright2 = n.green; bright3 = n.yellow; bright4 = n.purple; bright5 = n.blue; bright6 = n.magenta; bright7 = n.white; "16" = n.orange; "17" = n.cyan; "18" = n.darkerGray; "19" = n.darkGray; "20" = n.mutedGray; "21" = n.lighterGray; }; scrollback.lines = 100000; }; }; }