diff options
Diffstat (limited to 'usecases/desktop/graphical/rofi.nix')
-rw-r--r-- | usecases/desktop/graphical/rofi.nix | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/usecases/desktop/graphical/rofi.nix b/usecases/desktop/graphical/rofi.nix new file mode 100644 index 0000000..0013f5c --- /dev/null +++ b/usecases/desktop/graphical/rofi.nix | |||
@@ -0,0 +1,102 @@ | |||
1 | inputs: | ||
2 | |||
3 | { config, ... }: | ||
4 | |||
5 | { | ||
6 | home-manager.users.minijackson.programs.rofi = { | ||
7 | enable = true; | ||
8 | |||
9 | # TODO: there is a better way | ||
10 | theme = with config.theme.colors; builtins.toFile "theme.rasi" '' | ||
11 | * { | ||
12 | dominant: ${dominant}; | ||
13 | |||
14 | foreground: ${foreground}; | ||
15 | dim-foreground: ${dimForeground}; | ||
16 | |||
17 | text-color: @foreground; | ||
18 | border-color: @dim-foreground; | ||
19 | |||
20 | background-color: ${background}; | ||
21 | light-background: ${lightBackground}; | ||
22 | } | ||
23 | |||
24 | #window { | ||
25 | padding: 8px; | ||
26 | |||
27 | border: 1px solid; | ||
28 | background-color: @background; | ||
29 | } | ||
30 | |||
31 | #mainbox { | ||
32 | border: 0; | ||
33 | padding: 0; | ||
34 | } | ||
35 | |||
36 | #inputbar { | ||
37 | spacing: 0; | ||
38 | padding: 5px; | ||
39 | border: 0 0 1px 0; | ||
40 | margin: 0 0 8px 0; | ||
41 | children: [ prompt, textbox-prompt-sep, entry ]; | ||
42 | } | ||
43 | |||
44 | #prompt { | ||
45 | background-color: @background; | ||
46 | text-color: @dim-foreground; | ||
47 | } | ||
48 | |||
49 | textbox-prompt-sep { | ||
50 | expand: false; | ||
51 | str: ":"; | ||
52 | text-color: @dim-foreground; | ||
53 | margin: 0 8px 0 0; | ||
54 | } | ||
55 | |||
56 | #message { | ||
57 | spacing: 0; | ||
58 | padding: 5px; | ||
59 | border: 0 0 1px 0; | ||
60 | margin: 0 0 8px 0; | ||
61 | } | ||
62 | |||
63 | #listview { | ||
64 | spacing: 0; | ||
65 | } | ||
66 | |||
67 | #element { | ||
68 | border: 0; | ||
69 | padding: 5px; | ||
70 | |||
71 | background-color: @background; | ||
72 | } | ||
73 | |||
74 | #element.selected.normal { | ||
75 | background-color: @dominant; | ||
76 | } | ||
77 | |||
78 | #element.urgent { | ||
79 | background-color: ${fadedRed}; | ||
80 | } | ||
81 | |||
82 | #element.selected.urgent { | ||
83 | background-color: ${neutralRed}; | ||
84 | } | ||
85 | |||
86 | #element.active { | ||
87 | background-color: ${dimForeground}; | ||
88 | text-color: ${background}; | ||
89 | } | ||
90 | |||
91 | #element.selected.active { | ||
92 | background-color: ${foreground}; | ||
93 | text-color: ${background}; | ||
94 | } | ||
95 | |||
96 | #scrollbar { | ||
97 | width: 4px; | ||
98 | handle-width: 8px; | ||
99 | } | ||
100 | ''; | ||
101 | }; | ||
102 | } | ||