summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYigit Sever2024-08-30 11:06:35 +0200
committerYigit Sever2024-08-30 11:06:35 +0200
commita5c23dbc5f6ef2902fb115bbbc5ea5c46ede43c4 (patch)
tree8298bf1d46c47f67e68d6bcac541db704049712d
parentc2c54ed574d00d96a772e096abdfa2da3b60fdd6 (diff)
downloaddotfiles-a5c23dbc5f6ef2902fb115bbbc5ea5c46ede43c4.tar.gz
dotfiles-a5c23dbc5f6ef2902fb115bbbc5ea5c46ede43c4.tar.bz2
dotfiles-a5c23dbc5f6ef2902fb115bbbc5ea5c46ede43c4.zip
waybar: start tracking
-rw-r--r--.config/waybar/config.jsonc247
-rw-r--r--.config/waybar/latte.css37
-rw-r--r--.config/waybar/mocha.css37
-rw-r--r--.config/waybar/style.css293
4 files changed, 614 insertions, 0 deletions
diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc
new file mode 100644
index 0000000..e990a69
--- /dev/null
+++ b/.config/waybar/config.jsonc
@@ -0,0 +1,247 @@
1// -*- mode: jsonc -*-
2{
3 "layer": "top", // Waybar at top layer
4 "position": "top", // Waybar position (top|bottom|left|right)
5 "height": 20, // Waybar height (to be removed for auto height)
6 // "width": 1280, // Waybar width
7 "spacing": 4, // Gaps between modules (4px)
8 // Choose the order of the modules
9 "modules-left": [
10 "hyprland/workspaces",
11 "custom/focus"
12 ],
13 "modules-center": [
14 "hyprland/window"
15 ],
16 "modules-right": [
17 "mpris",
18 // "mpd",
19 // "idle_inhibitor",
20 "pulseaudio",
21 // "network",
22 // "cpu",
23 // "memory",
24 // "temperature",
25 // "backlight",
26 // "keyboard-state",
27 // "sway/language",
28 "battery",
29 // "battery#bat2",
30 "clock",
31 "privacy",
32 "tray"
33 ],
34 // Modules configuration
35 "hyprland/window": {
36 "max-length": 40
37 },
38 "hyprland/workspaces": {
39 "disable-scroll": true,
40 "all-outputs": true,
41 "warp-on-scroll": false,
42 // "format": "{name}: {icon}",
43 "format": "{icon}",
44 "format-icons": {
45 "1": "1",
46 "2": "2",
47 "3": "3",
48 "4": "4",
49 "5": "5",
50 "6": "6",
51 "7": "7",
52 "8": "8",
53 "9": "9",
54 "desktop": "",
55 "console": "",
56 "browser": "",
57 "zotero": "",
58 "music": "",
59 // "urgent": "",
60 // "active": "◎",
61 "default": ""
62 }
63 },
64 "keyboard-state": {
65 "numlock": true,
66 "capslock": true,
67 "format": "{name} {icon}",
68 "format-icons": {
69 "locked": "",
70 "unlocked": ""
71 }
72 },
73 "sway/mode": {
74 "format": "<span style=\"italic\">{}</span>"
75 },
76 "sway/scratchpad": {
77 "format": "{icon} {count}",
78 "show-empty": false,
79 "format-icons": ["", ""],
80 "tooltip": true,
81 "tooltip-format": "{app}: {title}"
82 },
83 "mpd": {
84 "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
85 "format-disconnected": "Disconnected ",
86 "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
87 "unknown-tag": "N/A",
88 "interval": 2,
89 "consume-icons": {
90 "on": " "
91 },
92 "random-icons": {
93 "off": "<span color=\"#f53c3c\"></span> ",
94 "on": " "
95 },
96 "repeat-icons": {
97 "on": " "
98 },
99 "single-icons": {
100 "on": "1 "
101 },
102 "state-icons": {
103 "paused": "",
104 "playing": ""
105 },
106 "tooltip-format": "MPD (connected)",
107 "tooltip-format-disconnected": "MPD (disconnected)"
108 },
109 "idle_inhibitor": {
110 "format": "{icon}",
111 "format-icons": {
112 "activated": "",
113 "deactivated": ""
114 }
115 },
116 "tray": {
117 // "icon-size": 21,
118 "spacing": 10
119 },
120 "clock": {
121 "format": "{:%H:%M | %B %d, %A}",
122 "tooltip-format": "<tt><small>{calendar}</small></tt>",
123 },
124 "cpu": {
125 "format": "{usage}% ",
126 "tooltip": false
127 },
128 "memory": {
129 "format": "{}% "
130 },
131 "temperature": {
132 // "thermal-zone": 2,
133 // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
134 "critical-threshold": 80,
135 // "format-critical": "{temperatureC}°C {icon}",
136 "format": "{temperatureC}°C {icon}",
137 "format-icons": ["", "", ""]
138 },
139 "backlight": {
140 // "device": "acpi_video1",
141 "format": "{percent}% {icon}",
142 "format-icons": ["", "", "", "", "", "", "", "", ""]
143 },
144 "battery": {
145 "states": {
146 // "good": 95,
147 "warning": 30,
148 "critical": 15
149 },
150 "format": "{capacity}% {icon}",
151 "format-full": "{capacity}% {icon}",
152 "format-charging": "{capacity}% ",
153 "format-plugged": "{capacity}% ",
154 "format-alt": "{time} {icon}",
155 // "format-good": "", // An empty format will hide the module
156 // "format-full": "",
157 "format-icons": ["", "", "", "", ""]
158 },
159 "battery#bat2": {
160 "bat": "BAT2"
161 },
162 "network": {
163 // "interface": "wlp2*", // (Optional) To force the use of this interface
164 "format-wifi": "{signalStrength}% ",
165 "format-ethernet": "{ipaddr}/{cidr} ",
166 "tooltip-format": "{ifname} via {gwaddr} ",
167 "format-linked": "{ifname} (No IP) ",
168 "format-disconnected": "Disconnected",
169 "format-alt": "{ifname}: {ipaddr}/{cidr}"
170 },
171 "pulseaudio": {
172 // "scroll-step": 1, // %, can be a float
173 "format": "{volume}% {icon}",
174 "format-bluetooth": "{volume}% {icon} ",
175 "format-bluetooth-muted": " {icon} ",
176 // "format": "{volume}% {icon} {format_source}",
177 // "format-bluetooth": "{volume}% {icon}  {format_source}",
178 // "format-bluetooth-muted": " {icon}  {format_source}",
179 "format-muted": " {format_source}",
180 // "format-source": "{volume}% ",
181 // "format-source-muted": "",
182 "format-icons": {
183 "headphone": "",
184 "hands-free": "",
185 "headset": "",
186 "phone": "",
187 "portable": "",
188 "car": "",
189 "default": [" ", " ", " "]
190 },
191 "on-click": "pavucontrol"
192 },
193 "custom/media": {
194 "format": "{icon} {}",
195 "return-type": "json",
196 "max-length": 40,
197 "format-icons": {
198 "spotify": "",
199 "default": "🎜"
200 },
201 "escape": true,
202 "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
203 // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
204 },
205 "mpris": {
206 "format": "{player_icon} {dynamic}",
207 "format-paused": "{status_icon} {dynamic}",
208 "dynamic-len": 36,
209 "player-icons": {
210 "default": "",
211 "mpv": "🎵"
212 },
213 "status-icons": {
214 "playing": "",
215 "paused": "",
216 "stopped": ""
217 },
218 "dynamic-order": [
219 "artist",
220 "title"
221 ]
222 // "ignored-players": ["firefox"]
223 },
224 "privacy": {
225 "icon-spacing": 4,
226 "icon-size": 18,
227 "transition-duration": 120,
228 "modules": [
229 {
230 "type": "screenshare",
231 "tooltip": true,
232 "tooltip-icon-size": 24
233 },
234 {
235 "type": "audio-in",
236 "tooltip": true,
237 "tooltip-icon-size": 24
238 }
239 ]
240 },
241 "custom/focus": {
242 "exec": "/home/yigit/.config/polybar/scripts/focus",
243 "interval": 5,
244 "format": "{}"
245 }
246}
247
diff --git a/.config/waybar/latte.css b/.config/waybar/latte.css
new file mode 100644
index 0000000..085cc3e
--- /dev/null
+++ b/.config/waybar/latte.css
@@ -0,0 +1,37 @@
1/*
2*
3* Catppuccin Latte palette
4* Maintainer: rubyowo
5*
6*/
7
8@define-color base #eff1f5;
9@define-color mantle #e6e9ef;
10@define-color crust #dce0e8;
11
12@define-color text #4c4f69;
13@define-color subtext0 #6c6f85;
14@define-color subtext1 #5c5f77;
15
16@define-color surface0 #ccd0da;
17@define-color surface1 #bcc0cc;
18@define-color surface2 #acb0be;
19
20@define-color overlay0 #9ca0b0;
21@define-color overlay1 #8c8fa1;
22@define-color overlay2 #7c7f93;
23
24@define-color blue #1e66f5;
25@define-color lavender #7287fd;
26@define-color sapphire #209fb5;
27@define-color sky #04a5e5;
28@define-color teal #179299;
29@define-color green #40a02b;
30@define-color yellow #df8e1d;
31@define-color peach #fe640b;
32@define-color maroon #e64553;
33@define-color red #d20f39;
34@define-color mauve #8839ef;
35@define-color pink #ea76cb;
36@define-color flamingo #dd7878;
37@define-color rosewater #dc8a78;
diff --git a/.config/waybar/mocha.css b/.config/waybar/mocha.css
new file mode 100644
index 0000000..98e218a
--- /dev/null
+++ b/.config/waybar/mocha.css
@@ -0,0 +1,37 @@
1/*
2*
3* Catppuccin Mocha palette
4* Maintainer: rubyowo
5*
6*/
7
8@define-color base #1e1e2e;
9@define-color mantle #181825;
10@define-color crust #11111b;
11
12@define-color text #cdd6f4;
13@define-color subtext0 #a6adc8;
14@define-color subtext1 #bac2de;
15
16@define-color surface0 #313244;
17@define-color surface1 #45475a;
18@define-color surface2 #585b70;
19
20@define-color overlay0 #6c7086;
21@define-color overlay1 #7f849c;
22@define-color overlay2 #9399b2;
23
24@define-color blue #89b4fa;
25@define-color lavender #b4befe;
26@define-color sapphire #74c7ec;
27@define-color sky #89dceb;
28@define-color teal #94e2d5;
29@define-color green #a6e3a1;
30@define-color yellow #f9e2af;
31@define-color peach #fab387;
32@define-color maroon #eba0ac;
33@define-color red #f38ba8;
34@define-color mauve #cba6f7;
35@define-color pink #f5c2e7;
36@define-color flamingo #f2cdcd;
37@define-color rosewater #f5e0dc;
diff --git a/.config/waybar/style.css b/.config/waybar/style.css
new file mode 100644
index 0000000..7db875f
--- /dev/null
+++ b/.config/waybar/style.css
@@ -0,0 +1,293 @@
1@import "latte.css";
2
3* {
4 border: none;
5 border-radius: 0;
6 font-family: FontAwesome, scientifica;
7 font-size: 14px;
8 min-height: 0;
9 box-shadow: none;
10 text-shadow: none;
11 transition-duration: 0s;
12 color: @text;
13}
14
15window#waybar {
16 background-color: @base;
17}
18
19window#waybar.hidden {
20 opacity: 0.2;
21}
22
23button {
24 /* Use box-shadow instead of border so the text isn't offset */
25 box-shadow: inset 0 -3px transparent;
26 /* Avoid rounded borders under each button name */
27 border: none;
28 border-radius: 0;
29}
30
31/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
32button:hover {
33 background: inherit;
34 box-shadow: inset 0 -3px @overlay0;
35}
36
37#workspaces button {
38 padding: 0 5px;
39 background-color: transparent;
40}
41
42#workspaces button:hover {
43 background: rgba(0, 0, 0, 0.2);
44}
45
46#workspaces button.focused {
47 background-color: @blue;
48 box-shadow: inset 0 -3px #ffffff;
49}
50
51#workspaces button.urgent {
52 background-color: #d20f39;
53}
54
55#workspaces button.active {
56 background-color: #a6e3a1;
57}
58
59#mode {
60 background-color: #64727D;
61 box-shadow: inset 0 -3px #ffffff;
62}
63
64#clock,
65#battery,
66#cpu,
67#memory,
68#disk,
69#temperature,
70#backlight,
71#network,
72#pulseaudio,
73#wireplumber,
74#custom-media,
75#tray,
76#mode,
77#idle_inhibitor,
78#scratchpad,
79#mpris,
80#mpd {
81 padding: 0 10px;
82}
83
84#window,
85#workspaces {
86 margin: 0 4px;
87}
88
89/* If workspaces is the leftmost module, omit left margin */
90.modules-left > widget:first-child > #workspaces {
91 margin-left: 0;
92}
93
94/* If workspaces is the rightmost module, omit right margin */
95.modules-right > widget:last-child > #workspaces {
96 margin-right: 0;
97}
98
99tooltip * {
100 background: transparent;
101}
102
103tooltip.background {
104 background: @crust;
105
106}
107
108#battery {
109 background-color: #ffffff;
110}
111
112#battery.charging, #battery.plugged {
113 background-color: #26A65B;
114}
115
116@keyframes blink {
117to {
118 background-color: #ffffff;
119 color: #000000;
120}
121}
122
123/* Using steps() instead of linear as a timing function to limit cpu usage */
124#battery.critical:not(.charging) {
125 background-color: #f53c3c;
126 color: #ffffff;
127 animation-name: blink;
128 animation-duration: 0.5s;
129 animation-timing-function: steps(12);
130 animation-iteration-count: infinite;
131 animation-direction: alternate;
132}
133
134label:focus {
135 background-color: #000000;
136}
137
138#cpu {
139 background-color: #2ecc71;
140}
141
142#memory {
143 background-color: #9b59b6;
144}
145
146#disk {
147 background-color: #964B00;
148}
149
150#backlight {
151 background-color: #90b1b1;
152}
153
154#network {
155 background-color: #2980b9;
156}
157
158#network.disconnected {
159 background-color: #f53c3c;
160}
161
162#pulseaudio {
163 background-color: #f1c40f;
164}
165
166#pulseaudio.muted {
167 background-color: #90b1b1;
168}
169
170#wireplumber {
171 background-color: #fff0f5;
172}
173
174#wireplumber.muted {
175 background-color: #f53c3c;
176}
177
178#custom-media {
179 background-color: #66cc99;
180 min-width: 100px;
181}
182
183#custom-media.custom-spotify {
184 background-color: #66cc99;
185}
186
187#custom-media.custom-vlc {
188 background-color: #ffa000;
189}
190
191#temperature {
192 background-color: #f0932b;
193}
194
195#temperature.critical {
196 background-color: #eb4d4b;
197}
198
199#tray {
200 background-color: @sapphire;
201}
202
203#tray > .passive {
204 -gtk-icon-effect: dim;
205}
206
207#tray > .needs-attention {
208 -gtk-icon-effect: highlight;
209 background-color: @red;
210}
211
212#tray menu {
213 background-color: @mantle;
214 color: @text;
215}
216
217#idle_inhibitor {
218 background-color: #2d3436;
219}
220
221#idle_inhibitor.activated {
222 background-color: #ecf0f1;
223}
224
225#mpd {
226 background-color: #66cc99;
227}
228
229#mpd.disconnected {
230 background-color: #f53c3c;
231}
232
233#mpd.stopped {
234 background-color: #90b1b1;
235}
236
237#mpd.paused {
238 background-color: #51a37a;
239}
240
241#language {
242 background: #00b093;
243 padding: 0 5px;
244 margin: 0 5px;
245 min-width: 16px;
246}
247
248#keyboard-state {
249 background: #97e1ad;
250 padding: 0 0px;
251 margin: 0 5px;
252 min-width: 16px;
253}
254
255#keyboard-state > label {
256 padding: 0 5px;
257}
258
259#keyboard-state > label.locked {
260 background: rgba(0, 0, 0, 0.2);
261}
262
263#scratchpad {
264 background: rgba(0, 0, 0, 0.2);
265}
266
267#scratchpad.empty {
268 background-color: transparent;
269}
270
271#privacy {
272 padding: 0;
273}
274
275#privacy-item {
276 padding: 0 5px;
277}
278
279#privacy-item.screenshare {
280 background-color: #cf5700;
281}
282
283#privacy-item.audio-in {
284 background-color: #1ca000;
285}
286
287#privacy-item.audio-out {
288 background-color: #0069d4;
289}
290
291#mpris {
292 background-color: #74c7ec;
293}