{ config, lib, ... }: { programs.rofi = { enable = true; cycle = false; extraConfig = { modi = "drun,filebrowser"; font = "Noto Sans CJK JP 12"; show-icons = true; bw = 0; display-drun = ""; display-window = ""; display-combi = ""; icon-theme = "Fluent-dark"; terminal = "kitty"; drun-match-fields = "name"; drun-display-format = "{name}"; me-select-entry = ""; me-accept-entry = "MousePrimary"; }; theme = let inherit (config.lib.formats.rasi) mkLiteral; in with config.lib.stylix.colors; lib.mkForce { "*" = { font = "Noto Sans CJK JP Bold 12"; background-color = mkLiteral "transparent"; foreground = mkLiteral "#${base05}"; text-color = mkLiteral "#${base05}"; padding = mkLiteral "0px"; margin = mkLiteral "0px"; }; window = { fullscreen = true; padding = mkLiteral "1em"; background-color = mkLiteral "#${base00}dd"; }; mainbox = { padding = mkLiteral "8px"; }; inputbar = { background-color = mkLiteral "#${base05}20"; margin = mkLiteral "0px calc( 50% - 230px )"; padding = mkLiteral "4px 8px"; spacing = mkLiteral "8px"; border = mkLiteral "1px"; border-radius = mkLiteral "2px"; border-color = mkLiteral "#${base05}40"; children = map mkLiteral [ "icon-search" "entry" ]; }; prompt = { enabled = false; }; icon-search = { expand = false; filename = "search"; vertical-align = mkLiteral "0.5"; }; entry = { placeholder = "Search"; placeholder-color = mkLiteral "#${base05}20"; }; listview = { margin = mkLiteral "48px calc( 50% - 560px )"; spacing = mkLiteral "48px"; columns = 5; fixed-columns = true; }; "element, element-text, element-icon" = { cursor = mkLiteral "pointer"; }; element = { padding = mkLiteral "8px"; spacing = mkLiteral "4px"; orientation = mkLiteral "vertical"; border-radius = mkLiteral "16px"; }; "element selected" = { background-color = mkLiteral "#${base05}33"; }; element-icon = { size = mkLiteral "5em"; horizontal-align = mkLiteral "0.5"; }; element-text = { horizontal-align = mkLiteral "0.5"; }; }; }; }