yep, more dotfiles
1{ config 2, lib 3, pkgs 4, ... 5}: 6 7let 8 cfg = config.local.fragment.vm; 9 10 theme = config.local.colorScheme.palette; 11 keyValueFormat = lib.generators.toKeyValue { }; 12in 13{ 14 config = lib.mkIf cfg.enable { 15 wayland.windowManager.sway.config.menu = 16 let 17 tofi-drun = lib.getExe' pkgs.tofi "tofi-drun"; 18 swaymsg = lib.getExe' config.wayland.windowManager.sway.package "swaymsg"; 19 20 jetbrains-nerd-font-regular = "${pkgs.nerd-fonts.jetbrains-mono}/share/fonts/truetype/JetBrainsMonoNerdFont-Regular.ttf"; 21 in 22 "${tofi-drun} --font ${jetbrains-nerd-font-regular} | xargs ${swaymsg} exec --"; 23 24 xdg.configFile."tofi/config".text = keyValueFormat { 25 font-size = 14; 26 27 horizontal = true; 28 anchor = "top"; 29 width = "100%"; 30 height = 48; 31 32 outline-width = 0; 33 border-width = 0; 34 35 min-input-width = 100; 36 result-spacing = 20; 37 38 padding-top = 12; 39 padding-bottom = 12; 40 padding-left = 20; 41 padding-right = 20; 42 43 text-color = "#${theme.base06}"; 44 background-color = "#${theme.base00}"; 45 46 prompt-text = " "; 47 prompt-padding = 30; 48 prompt-background = "#${theme.base01}"; 49 prompt-background-padding = "5, 10"; 50 prompt-background-corner-radius = 5; 51 52 input-color = "#${theme.base07}"; 53 input-background = "#${theme.base01}"; 54 input-background-padding = "5, 10"; 55 input-background-corner-radius = 5; 56 57 selection-color = "#${theme.base0E}"; 58 selection-background = "#${theme.base01}"; 59 selection-background-padding = "5, 10"; 60 selection-background-corner-radius = 8; 61 selection-match-color = "#${theme.base08}"; 62 63 clip-to-padding = false; 64 }; 65 }; 66}