{ config, lib, ... }: with lib; let cfg = config.mjallen.programs.wofi; palette = import cfg.theme.file; in { imports = [ ./options.nix ]; config = mkIf cfg.enable { programs.wofi = { enable = true; style = '' * { font-family: "${cfg.fontName}", monospace; font-size: 14px; } /* Window */ window { margin: 0px; padding: 10px; border: 0.16em solid ${palette.colors.accent}; border-radius: 0.1em; background-color: ${palette.colors.bg}; } /* Inner Box */ #inner-box { margin: 5px; padding: 10px; border: none; background-color: ${palette.colors.bg}; } /* Outer Box */ #outer-box { margin: 5px; padding: 10px; border: none; background-color: ${palette.colors.bg}; } /* Scroll */ #scroll { margin: 0px; padding: 10px; border: none; background-color: ${palette.colors.bg}; } /* Input */ #input { margin: 5px 20px; padding: 10px; border: none; border-radius: 0.1em; color: ${palette.colors.text}; background-color: ${palette.colors.bg}; } #input image { border: none; color: ${palette.colors.danger}; } #input * { outline: 4px solid ${palette.colors.danger}!important; } /* Text */ #text { margin: 5px; border: none; color: ${palette.colors.text}; } #entry { background-color: ${palette.colors.bg}; } #entry arrow { border: none; color: ${palette.colors.accent}; } /* Selected Entry */ #entry:selected { border: 0.11em solid ${palette.colors.accent}; } #entry:selected #text { color: ${palette.colors.info}; } #entry:drop(active) { background-color: ${palette.colors.accent}!important; } ''; }; }; }