{ lib, profile, ... }: let mkConfig = lib.generators.toKeyValue { listsAsDuplicateKeys = true; }; in { xdg.config.files."ghostty/config".text = lib.mkIf (profile != "wsl") (mkConfig ({ theme = "Carbonfox"; window-title-font-family = "Inter"; window-padding-color = "extend"; window-padding-x = 5; window-width = 112; window-height = 30; font-family = "Berkeley Mono"; font-feature = [ "-calt" ]; font-size = if (profile == "darwin") then 14 else 10; adjust-underline-thickness = "-50%"; adjust-strikethrough-thickness = "-50%"; adjust-overline-thickness = "-50%"; cursor-style = "bar"; cursor-style-blink = true; scrollback-limit = 10000; clipboard-write = "allow"; clipboard-read = "ask"; keybind = [ "shift+enter=text:\\x1b\\r" "control+tab=toggle_tab_overview" ]; } // lib.optionalAttrs (profile == "darwin") { macos-titlebar-style = "tabs"; async-backend = "auto"; } // lib.optionalAttrs (profile == "nixos") { gtk-titlebar-style = "tabs"; async-backend = "io_uring"; gtk-toolbar-style = "flat"; window-theme = "ghostty"; gtk-wide-tabs = true; })); }