diff options
| author | Alexander Kassouni <alex@kassouni.net> | 2026-07-25 20:26:11 -0700 |
|---|---|---|
| committer | Alexander Kassouni <alex@kassouni.net> | 2026-07-25 20:26:11 -0700 |
| commit | ecec5136f63d32862a42117c957f1f5bab65d13b (patch) | |
| tree | 8569ae3b4b666505586ac716c98e3d9810a119b0 /users/kassouni/rofi.nix | |
| parent | 2f815bb8fbf9397c92f0d88b80dd83c6ef5698b7 (diff) | |
rofi theming, command palette
Diffstat (limited to 'users/kassouni/rofi.nix')
| -rw-r--r-- | users/kassouni/rofi.nix | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/users/kassouni/rofi.nix b/users/kassouni/rofi.nix new file mode 100644 index 0000000..740047b --- /dev/null +++ b/users/kassouni/rofi.nix @@ -0,0 +1,79 @@ +{ config, ... }: + +let + inherit (config.lib.formats.rasi) mkLiteral; + colors = config.colorScheme; +in +{ + programs.rofi = { + enable = true; + font = "${config.theme.font.family} ${builtins.toString config.theme.font.size}"; + + theme = { + "*" = { + background-color = mkLiteral "transparent"; + text-color = mkLiteral colors.editor.fg; + }; + + window = { + background-color = mkLiteral colors.ui.popup.bg; + border = mkLiteral "2px"; + border-color = mkLiteral colors.ui.line; + border-radius = mkLiteral "8px"; + padding = mkLiteral "16px"; + width = mkLiteral "40%"; + }; + + inputbar = { + children = map mkLiteral [ "prompt" "entry" ]; + background-color = mkLiteral colors.ui.panel.bg; + border-radius = mkLiteral "4px"; + padding = mkLiteral "8px"; + spacing = mkLiteral "8px"; + }; + + prompt = { + text-color = mkLiteral colors.common.accent.tint; + }; + + entry = { + placeholder = "Search"; + placeholder-color = mkLiteral colors.ui.fg; + }; + + listview = { + lines = 8; + scrollbar = false; + spacing = mkLiteral "2px"; + margin = mkLiteral "12px 0px 0px 0px"; + }; + + element = { + padding = mkLiteral "8px"; + border-radius = mkLiteral "4px"; + spacing = mkLiteral "8px"; + }; + + "element normal urgent" = { + text-color = mkLiteral colors.common.error; + }; + + "element normal active" = { + text-color = mkLiteral colors.common.accent.tint; + }; + + "element selected normal" = { + background-color = mkLiteral colors.common.accent.tint; + text-color = mkLiteral colors.surface.base; + }; + + element-icon = { + size = mkLiteral "1em"; + }; + + element-text = { + text-color = mkLiteral "inherit"; + }; + }; + }; +} |
