this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix IFD in Waybar module

Ben C e589757b 5f159581

+538 -537
+6 -6
flake.lock
··· 401 401 ] 402 402 }, 403 403 "locked": { 404 - "lastModified": 1767893475, 405 - "narHash": "sha256-yNpAuNVCDcR299BKjaT5PuoJclEBukmC5nj3L98UE3E=", 404 + "lastModified": 1767909183, 405 + "narHash": "sha256-u/bcU0xePi5bgNoRsiqSIwaGBwDilKKFTz3g0hqOBAo=", 406 406 "owner": "nix-community", 407 407 "repo": "home-manager", 408 - "rev": "3351348827926935b407d1cfbb7dd814c30da107", 408 + "rev": "cd6e96d56ed4b2a779ac73a1227e0bb1519b3509", 409 409 "type": "github" 410 410 }, 411 411 "original": { ··· 630 630 "systems": "systems" 631 631 }, 632 632 "locked": { 633 - "lastModified": 1767608728, 634 - "narHash": "sha256-kmSJCTgrx+BxgqQOTPHAOkohvO+lbRsPWqu+PSPcz3I=", 633 + "lastModified": 1767906546, 634 + "narHash": "sha256-AoSWS8+P+7hQ/jIdv0wBjgH1MvnerdWBFXO4GV3JoQs=", 635 635 "owner": "nix-community", 636 636 "repo": "nixvim", 637 - "rev": "851399eebd0fb383d2fd76269d859f16021dc7a8", 637 + "rev": "7eb8f36f085b85a2aeff929aff52d0f6aa14e000", 638 638 "type": "github" 639 639 }, 640 640 "original": {
-1
homeModules/nvim.nix
··· 913 913 html.enable = web; 914 914 marksman.enable = web; 915 915 cssls.enable = web; 916 - tailwindcss.enable = web; 917 916 jsonls.enable = web; 918 917 yamlls.enable = web; 919 918 ruff.enable = python;
+312 -530
homeModules/waybar.nix
··· 10 10 default = config.cow.gdi.enable; 11 11 }; 12 12 13 - config = let 14 - catppuccinCss = pkgs.fetchurl { 15 - url = "https://github.com/catppuccin/waybar/raw/refs/heads/main/themes/mocha.css"; 16 - hash = "sha256-puMFl8zIKOiYhE6wzqnffXOHn/VnKmpVDzrMJMk+3Rc="; 17 - }; 18 - in 19 - lib.mkIf config.cow.waybar.enable { 20 - programs.waybar = { 21 - enable = true; 22 - systemd.enable = true; 23 - style = '' 24 - @import "${catppuccinCss}"; 25 - 26 - * { 27 - font-family: sans-serif; 28 - } 29 - 30 - window#waybar { 31 - background: rgba(49, 50, 68, 0.65); 32 - color: @text; 33 - } 34 - 35 - .modules-left > * > *, 36 - .modules-right > * > * { 37 - font-size: 1.5rem; 38 - background: @crust; 39 - border: 2px solid @base; 40 - border-radius: 5rem; 41 - padding: 5px 15px; 42 - margin: 5px 2px; 43 - } 44 - 45 - #bluetooth.disabled { 46 - border-color: @red; 47 - } 48 - 49 - #waybar .modules-left > *:first-child > * { 50 - margin-left: 25px; 51 - } 52 - 53 - #waybar .modules-right > *:last-child > * { 54 - margin-right: 25px; 55 - } 56 - 57 - #waybar .modules-left, 58 - #waybar .modules-right { 59 - margin-top: 10px; 60 - margin-bottom: 5px; 61 - } 62 - 63 - #waybar .modules-center { 64 - margin-top: 5px; 65 - margin-bottom: 5px; 66 - } 67 - 68 - #battery.warning { 69 - border-color: @yellow; 70 - } 71 - 72 - #battery.critical { 73 - border-color: @red; 74 - } 75 - 76 - * > #battery.charging { 77 - border-color: @green; 78 - } 79 - 80 - #taskbar, 81 - #workspaces { 82 - padding: 10px; 83 - border-radius: 5rem; 84 - border: none; 85 - background: none; 86 - } 87 - 88 - #taskbar button, 89 - #workspaces button { 90 - color: @text; 91 - border-radius: 5rem; 92 - padding: 5px 15px; 93 - margin: 0 5px; 94 - background: @crust; 95 - border: 2px solid @base; 96 - } 97 - 98 - #taskbar button:hover, #workspaces button:hover { 99 - background: @mantle; 100 - } 101 - 102 - #workspaces button { 103 - font-size: 1.5rem; 104 - } 105 - 106 - #cpu, 107 - #memory, 108 - #temperature { 109 - font-size: 1.5rem; 110 - padding: 10px 25px; 111 - } 112 - 113 - #cpu.warning, 114 - #memory.warning { 115 - border-color: @yellow; 116 - } 117 - 118 - #cpu.critical, 119 - #memory.critical, 120 - #temperature.critical { 121 - border-color: @red; 122 - } 123 - 124 - #workspaces button.active { 125 - border: 2px solid @sapphire; 126 - } 127 - 128 - #taskbar button.active { 129 - border: 2px solid @sapphire; 130 - } 131 - 132 - #idle_inhibitor.activated { 133 - border-color: @mauve; 134 - } 135 - 136 - #custom-notification.notification { 137 - border-color: @sapphire; 138 - } 139 - 140 - #custom-notification.dnd-none, 141 - #custom-notification.dnd-notification, 142 - #custom-notification.dnd-inhibited-none, 143 - #custom-notification.dnd-inhibited-notification { 144 - border-color: @red; 145 - } 146 - 147 - #custom-notification.inhibited-none, 148 - #custom-notification.inhibited-notification { 149 - border-color: @mauve; 150 - } 151 - 152 - #network.disconnected { 153 - border-color: @red; 154 - } 155 - 156 - #privacy { 157 - background: none; 158 - border: none; 159 - margin: 0; 160 - padding: 0; 161 - } 162 - 163 - #privacy-item { 164 - font-size: 1.5rem; 165 - border-radius: 5rem; 166 - padding: 5px 15px; 167 - margin: 5px 2px; 168 - border: 2px solid @red; 169 - background-color: @crust; 170 - } 171 - 172 - #custom-weather.VeryCloudy, 173 - #custom-weather.Cloudy, 174 - #custom-weather.Fog { 175 - border-color: @overlay0; 176 - } 177 - 178 - #custom-weather.HeavyRain, 179 - #custom-weather.ThunderyHeavyRain, 180 - #custom-weather.ThunderyRain, 181 - #custom-weather.ThunderyShowers, 182 - #custom-weather.HeavyShowers, 183 - #custom-weather.LightRain, 184 - #custom-weather.LightShowers { 185 - border-color: @blue; 186 - } 187 - 188 - #custom-weather.HeavySnow, 189 - #custom-weather.LightSnow, 190 - #custom-weather.Sleet, 191 - #custom-weather.Snow, 192 - #custom-weather.LightSnowShowers, 193 - #custom-weather.LightSleetShowers { 194 - border-color: @text; 195 - } 196 - 197 - #custom-weather.Clear, 198 - #custom-weather.Sunny { 199 - border-color: @yellow; 200 - } 201 - 202 - #custom-weather.PartlyCloudy { 203 - border-color: @flamingo; 204 - } 205 - 206 - #custom-weather.PartlyCloudy.night { 207 - border-color: @lavender; 208 - } 209 - 210 - #custom-weather.Clear.night, 211 - #custom-weather.Sunny.night { 212 - border-color: @mauve; 213 - } 214 - 215 - #custom-news.utd { 216 - font-size: 1.5rem; 217 - } 218 - 219 - #custom-news.unread { 220 - border-color: @sapphire; 221 - } 222 - 223 - #mpris { 224 - opacity: 0; 225 - } 226 - 227 - #mpris.paused { 228 - opacity: 1; 229 - } 230 - 231 - #mpris.playing { 232 - opacity: 1; 233 - border-color: @sapphire; 234 - } 235 - 236 - #mpris.playing.spotify { 237 - border-color: #33B980; 238 - } 239 - 240 - #mpris.paused.kdeconnect { 241 - opacity: 0; 242 - } 243 - ''; 244 - settings = [ 245 - { 246 - battery = { 247 - format = "{icon} {capacity}󰏰"; 248 - format-charging = "{icon} {capacity}󰏰"; 249 - format-icons = { 250 - charging = [ 251 - "󰢜" 252 - "󰂆" 253 - "󰂇" 254 - "󰂈" 255 - "󰢝" 256 - "󰂉" 257 - "󰢞" 258 - "󰂊" 259 - "󰂋" 260 - "󰂅" 13 + config = lib.mkIf config.cow.waybar.enable ( 14 + lib.mkMerge [ 15 + (lib.mkIf config.cow.cat.enable { 16 + # To stop IFD 17 + catppuccin.waybar.mode = "createLink"; 18 + programs.waybar.style = ../res/waybar.css; 19 + }) 20 + { 21 + programs.waybar = { 22 + enable = true; 23 + systemd.enable = true; 24 + settings = [ 25 + { 26 + battery = { 27 + format = "{icon} {capacity}󰏰"; 28 + format-charging = "{icon} {capacity}󰏰"; 29 + format-icons = { 30 + charging = [ 31 + "󰢜" 32 + "󰂆" 33 + "󰂇" 34 + "󰂈" 35 + "󰢝" 36 + "󰂉" 37 + "󰢞" 38 + "󰂊" 39 + "󰂋" 40 + "󰂅" 41 + ]; 42 + default = [ 43 + "󰁺" 44 + "󰁻" 45 + "󰁼" 46 + "󰁽" 47 + "󰁾" 48 + "󰁿" 49 + "󰂀" 50 + "󰂁" 51 + "󰂂" 52 + "󰁹" 53 + ]; 54 + }; 55 + states = { 56 + critical = 15; 57 + warning = 30; 58 + }; 59 + }; 60 + bluetooth = { 61 + format = "󰂯"; 62 + format-connected = "󰂱"; 63 + format-connected-battery = "󰂱 {device_battery_percentage}󰏰"; 64 + format-disabled = "󰂲"; 65 + format-off = "󰂲"; 66 + on-click-right = "rfkill toggle bluetooth"; 67 + tooltip-format = "{controller_alias}\t{controller_address}\n\n{num_connections} connected"; 68 + tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}"; 69 + tooltip-format-enumerate-connected = "{device_alias}\t{device_address}"; 70 + tooltip-format-enumerate-connected-battery = "{device_alias}\t{device_address}\t{device_battery_percentage}%"; 71 + }; 72 + "clock#1" = { 73 + actions = { 74 + on-click = "shift_up"; 75 + on-click-middle = "mode"; 76 + on-click-right = "shift_down"; 77 + }; 78 + calendar = { 79 + format = { 80 + days = "<span color='#ecc6d9'><b>{}</b></span>"; 81 + months = "<span color='#ffead3'><b>{}</b></span>"; 82 + today = "<span color='#ff6699'><b><u>{}</u></b></span>"; 83 + weekdays = "<span color='#ffcc66'><b>{}</b></span>"; 84 + weeks = "<span color='#99ffdd'><b>W{}</b></span>"; 85 + }; 86 + mode = "month"; 87 + mode-mon-col = 3; 88 + on-scroll = 1; 89 + weeks-pos = "right"; 90 + }; 91 + format = "󰃭 {:%A, %B %Od}"; 92 + tooltip-format = "<tt><small>{calendar}</small></tt>"; 93 + }; 94 + "clock#2" = { 95 + format = "󰥔 {:%I:%M %p}"; 96 + tooltip-format = "{:%F at %T in %Z (UTC%Ez)}"; 97 + }; 98 + "custom/kde-connect" = { 99 + exec = ''${pkgs.nushell}/bin/nu --plugins "[${ 100 + lib.getExe inputs.nu_plugin_dbus.packages.${pkgs.system}.default 101 + }]" ${../res/custom_waybar_modules/kdeconnect.nu}''; 102 + format = "{}"; 103 + interval = 30; 104 + on-click = "kdeconnect-settings"; 105 + return-type = "json"; 106 + }; 107 + "custom/news" = { 108 + exec = "${pkgs.nushell}/bin/nu ${../res/custom_waybar_modules/newsboat.nu}"; 109 + exec-on-event = true; 110 + format = "{}"; 111 + on-click-right = "pkill waybar -SIGRTMIN+6"; 112 + restart-interval = 1800; 113 + return-type = "json"; 114 + signal = 6; 115 + }; 116 + "custom/notification" = { 117 + escape = true; 118 + exec = "swaync-client -swb"; 119 + exec-if = "which swaync-client"; 120 + format = "{icon}"; 121 + format-icons = { 122 + dnd-inhibited-none = "󰂛"; 123 + dnd-inhibited-notification = "󰂛<sup></sup>"; 124 + dnd-none = "󰂛"; 125 + dnd-notification = "󰂛<sup></sup>"; 126 + inhibited-none = "󰂠"; 127 + inhibited-notification = "󰂠<sup></sup>"; 128 + none = "󰂚"; 129 + notification = "󱅫"; 130 + }; 131 + max-length = 3; 132 + on-click = "sleep 0.2 && swaync-client -t -sw"; 133 + on-click-middle = "sleep 0.2 && swaync-client -C -sw"; 134 + on-click-right = "sleep 0.2 && swaync-client -d -sw"; 135 + return-type = "json"; 136 + tooltip = false; 137 + }; 138 + "custom/weather" = { 139 + exec = "${pkgs.nushell}/bin/nu ${../res/custom_waybar_modules/weather.nu}"; 140 + format = "{}"; 141 + interval = 600; 142 + on-click = "xdg-open https://duckduckgo.com/?q=weather"; 143 + return-type = "json"; 144 + }; 145 + idle_inhibitor = { 146 + format = "{icon}"; 147 + format-icons = { 148 + activated = "󰒳"; 149 + deactivated = "󰒲"; 150 + }; 151 + }; 152 + layer = "top"; 153 + modules-center = []; 154 + modules-left = 155 + [ 156 + "user" 157 + "clock#1" 158 + "clock#2" 159 + ] 160 + ++ lib.optional config.cow.news.enable "custom/news" 161 + ++ [ 162 + "custom/weather" 163 + "mpris" 261 164 ]; 262 - default = [ 263 - "󰁺" 264 - "󰁻" 265 - "󰁼" 266 - "󰁽" 267 - "󰁾" 268 - "󰁿" 269 - "󰂀" 270 - "󰂁" 271 - "󰂂" 272 - "󰁹" 165 + modules-right = 166 + [ 167 + "network" 168 + "battery" 169 + "bluetooth" 170 + "pulseaudio" 171 + ] 172 + ++ lib.optional config.cow.kde-connect.enable "custom/kde-connect" 173 + ++ lib.optional config.cow.gdi.doIdle "idle_inhibitor" 174 + ++ [ 175 + "custom/notification" 176 + "privacy" 177 + "tray" 273 178 ]; 179 + mpris = { 180 + album-len = 20; 181 + artist-len = 25; 182 + interval = 1; 183 + dynamic-importance-order = [ 184 + "title" 185 + "position" 186 + "length" 187 + "artist" 188 + "album" 189 + ]; 190 + dynamic-len = 50; 191 + dynamic-order = [ 192 + "title" 193 + "artist" 194 + "album" 195 + "position" 196 + "length" 197 + ]; 198 + format = "{player_icon} {dynamic}"; 199 + format-paused = "{status_icon} {dynamic}"; 200 + player-icons = { 201 + QMPlay2 = "󰐌"; 202 + default = "󰎆"; 203 + firefox = ""; 204 + firefox-devedition = ""; 205 + chromium = "󰖟"; 206 + kdeconnect = ""; 207 + spotify = "󰓇"; 208 + }; 209 + status-icons = { 210 + paused = "󰏤"; 211 + stopped = "󰓛"; 212 + }; 213 + title-len = 35; 274 214 }; 275 - states = { 276 - critical = 15; 277 - warning = 30; 215 + network = { 216 + format = "{ifname}"; 217 + format-disconnected = "󰪎"; 218 + format-ethernet = "󱎔 {ifname}"; 219 + format-icons = [ 220 + "󰤟" 221 + "󰤢" 222 + "󰤥" 223 + "󰤨" 224 + ]; 225 + format-linked = "󰌷 {ifname}"; 226 + format-wifi = "{icon} {essid}"; 227 + tooltip-disconnected = "Disconnected"; 228 + tooltip-format = "{ifname} via {gwaddr}"; 229 + tooltip-format-ethernet = "󱎔 {ifname}"; 230 + tooltip-format-wifi = "Connected to {essid} ({signalStrength}󰏰 Strength) over {ifname} via {gwaddr}"; 278 231 }; 279 - }; 280 - bluetooth = { 281 - format = "󰂯"; 282 - format-connected = "󰂱"; 283 - format-connected-battery = "󰂱 {device_battery_percentage}󰏰"; 284 - format-disabled = "󰂲"; 285 - format-off = "󰂲"; 286 - on-click-right = "rfkill toggle bluetooth"; 287 - tooltip-format = "{controller_alias}\t{controller_address}\n\n{num_connections} connected"; 288 - tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}"; 289 - tooltip-format-enumerate-connected = "{device_alias}\t{device_address}"; 290 - tooltip-format-enumerate-connected-battery = "{device_alias}\t{device_address}\t{device_battery_percentage}%"; 291 - }; 292 - "clock#1" = { 293 - actions = { 294 - on-click = "shift_up"; 295 - on-click-middle = "mode"; 296 - on-click-right = "shift_down"; 232 + position = "top"; 233 + privacy = { 234 + icon-size = 20; 235 + icon-spacing = 4; 236 + modules = [ 237 + { 238 + tooltip = true; 239 + tooltip-icon-size = 24; 240 + type = "screenshare"; 241 + } 242 + { 243 + tooltip = true; 244 + tooltip-icon-size = 24; 245 + type = "audio-in"; 246 + } 247 + ]; 248 + transition-duration = 200; 297 249 }; 298 - calendar = { 299 - format = { 300 - days = "<span color='#ecc6d9'><b>{}</b></span>"; 301 - months = "<span color='#ffead3'><b>{}</b></span>"; 302 - today = "<span color='#ff6699'><b><u>{}</u></b></span>"; 303 - weekdays = "<span color='#ffcc66'><b>{}</b></span>"; 304 - weeks = "<span color='#99ffdd'><b>W{}</b></span>"; 250 + pulseaudio = { 251 + format = "{icon} {volume:2}󰏰"; 252 + format-bluetooth = "{icon} {volume}󰏰"; 253 + format-icons = { 254 + car = ""; 255 + default = [ 256 + "󰖀" 257 + "󰕾" 258 + ]; 259 + hands-free = "󰋋"; 260 + headphone = "󰋋"; 261 + headset = "󰋋"; 262 + phone = ""; 263 + portable = ""; 305 264 }; 306 - mode = "month"; 307 - mode-mon-col = 3; 308 - on-scroll = 1; 309 - weeks-pos = "right"; 265 + format-muted = "󰝟"; 266 + on-click = "pamixer -t"; 267 + on-click-right = "pavucontrol"; 268 + scroll-step = 5; 269 + }; 270 + tray = { 271 + icon-size = 25; 272 + show-passive-items = true; 273 + spacing = 5; 310 274 }; 311 - format = "󰃭 {:%A, %B %Od}"; 312 - tooltip-format = "<tt><small>{calendar}</small></tt>"; 313 - }; 314 - "clock#2" = { 315 - format = "󰥔 {:%I:%M %p}"; 316 - tooltip-format = "{:%F at %T in %Z (UTC%Ez)}"; 317 - }; 318 - "custom/kde-connect" = { 319 - exec = ''${pkgs.nushell}/bin/nu --plugins "[${ 320 - lib.getExe inputs.nu_plugin_dbus.packages.${pkgs.system}.default 321 - }]" ${../res/custom_waybar_modules/kdeconnect.nu}''; 322 - format = "{}"; 323 - interval = 30; 324 - on-click = "kdeconnect-settings"; 325 - return-type = "json"; 326 - }; 327 - "custom/news" = { 328 - exec = "${pkgs.nushell}/bin/nu ${../res/custom_waybar_modules/newsboat.nu}"; 329 - exec-on-event = true; 330 - format = "{}"; 331 - on-click-right = "pkill waybar -SIGRTMIN+6"; 332 - restart-interval = 1800; 333 - return-type = "json"; 334 - signal = 6; 335 - }; 336 - "custom/notification" = { 337 - escape = true; 338 - exec = "swaync-client -swb"; 339 - exec-if = "which swaync-client"; 340 - format = "{icon}"; 341 - format-icons = { 342 - dnd-inhibited-none = "󰂛"; 343 - dnd-inhibited-notification = "󰂛<sup></sup>"; 344 - dnd-none = "󰂛"; 345 - dnd-notification = "󰂛<sup></sup>"; 346 - inhibited-none = "󰂠"; 347 - inhibited-notification = "󰂠<sup></sup>"; 348 - none = "󰂚"; 349 - notification = "󱅫"; 275 + user = { 276 + format = " {user}"; 277 + icon = true; 350 278 }; 351 - max-length = 3; 352 - on-click = "sleep 0.2 && swaync-client -t -sw"; 353 - on-click-middle = "sleep 0.2 && swaync-client -C -sw"; 354 - on-click-right = "sleep 0.2 && swaync-client -d -sw"; 355 - return-type = "json"; 356 - tooltip = false; 357 - }; 358 - "custom/weather" = { 359 - exec = "${pkgs.nushell}/bin/nu ${../res/custom_waybar_modules/weather.nu}"; 360 - format = "{}"; 361 - interval = 600; 362 - on-click = "xdg-open https://duckduckgo.com/?q=weather"; 363 - return-type = "json"; 364 - }; 365 - idle_inhibitor = { 366 - format = "{icon}"; 367 - format-icons = { 368 - activated = "󰒳"; 369 - deactivated = "󰒲"; 279 + } 280 + { 281 + cpu = { 282 + format = "󰍛 {usage}󰏰"; 283 + states = { 284 + critical = 95; 285 + warning = 80; 286 + }; 370 287 }; 371 - }; 372 - layer = "top"; 373 - modules-center = []; 374 - modules-left = 375 - [ 376 - "user" 377 - "clock#1" 378 - "clock#2" 379 - ] 380 - ++ lib.optional config.cow.news.enable "custom/news" 381 - ++ [ 382 - "custom/weather" 383 - "mpris" 384 - ]; 385 - modules-right = 386 - [ 387 - "network" 388 - "battery" 389 - "bluetooth" 390 - "pulseaudio" 391 - ] 392 - ++ lib.optional config.cow.kde-connect.enable "custom/kde-connect" 393 - ++ lib.optional config.cow.gdi.doIdle "idle_inhibitor" 394 - ++ [ 395 - "custom/notification" 396 - "privacy" 397 - "tray" 398 - ]; 399 - mpris = { 400 - album-len = 20; 401 - artist-len = 25; 402 - interval = 1; 403 - dynamic-importance-order = [ 404 - "title" 405 - "position" 406 - "length" 407 - "artist" 408 - "album" 409 - ]; 410 - dynamic-len = 50; 411 - dynamic-order = [ 412 - "title" 413 - "artist" 414 - "album" 415 - "position" 416 - "length" 417 - ]; 418 - format = "{player_icon} {dynamic}"; 419 - format-paused = "{status_icon} {dynamic}"; 420 - player-icons = { 421 - QMPlay2 = "󰐌"; 422 - default = "󰎆"; 423 - firefox = ""; 424 - firefox-devedition = ""; 425 - chromium = "󰖟"; 426 - kdeconnect = ""; 427 - spotify = "󰓇"; 288 + "hyprland/workspaces" = { 289 + disable-scroll = true; 290 + format = "{name}"; 428 291 }; 429 - status-icons = { 430 - paused = "󰏤"; 431 - stopped = "󰓛"; 292 + layer = "top"; 293 + memory = { 294 + format = " {}󰏰 ({used:0.1f}/{total:0.1f} GiB)"; 295 + states = { 296 + critical = 90; 297 + warning = 70; 298 + }; 432 299 }; 433 - title-len = 35; 434 - }; 435 - network = { 436 - format = "{ifname}"; 437 - format-disconnected = "󰪎"; 438 - format-ethernet = "󱎔 {ifname}"; 439 - format-icons = [ 440 - "󰤟" 441 - "󰤢" 442 - "󰤥" 443 - "󰤨" 444 - ]; 445 - format-linked = "󰌷 {ifname}"; 446 - format-wifi = "{icon} {essid}"; 447 - tooltip-disconnected = "Disconnected"; 448 - tooltip-format = "{ifname} via {gwaddr}"; 449 - tooltip-format-ethernet = "󱎔 {ifname}"; 450 - tooltip-format-wifi = "Connected to {essid} ({signalStrength}󰏰 Strength) over {ifname} via {gwaddr}"; 451 - }; 452 - position = "top"; 453 - privacy = { 454 - icon-size = 20; 455 - icon-spacing = 4; 456 - modules = [ 457 - { 458 - tooltip = true; 459 - tooltip-icon-size = 24; 460 - type = "screenshare"; 461 - } 462 - { 463 - tooltip = true; 464 - tooltip-icon-size = 24; 465 - type = "audio-in"; 466 - } 300 + # modules-center = ["wlr/taskbar"]; 301 + # modules-left = ["hyprland/workspaces"]; 302 + modules-right = [ 303 + "temperature" 304 + "cpu" 305 + "power-profiles-daemon" 306 + "memory" 467 307 ]; 468 - transition-duration = 200; 469 - }; 470 - pulseaudio = { 471 - format = "{icon} {volume:2}󰏰"; 472 - format-bluetooth = "{icon} {volume}󰏰"; 473 - format-icons = { 474 - car = ""; 475 - default = [ 476 - "󰖀" 477 - "󰕾" 308 + position = "bottom"; 309 + temperature = { 310 + critical-threshold = 80; 311 + format = "{icon} {temperatureC} °C"; 312 + format-critical = "{icon}! {temperatureC} °C"; 313 + format-icons = [ 314 + "󱃃" 315 + "󰔏" 316 + "󱃂" 478 317 ]; 479 - hands-free = "󰋋"; 480 - headphone = "󰋋"; 481 - headset = "󰋋"; 482 - phone = ""; 483 - portable = ""; 318 + thermal-zone = 1; 484 319 }; 485 - format-muted = "󰝟"; 486 - on-click = "pamixer -t"; 487 - on-click-right = "pavucontrol"; 488 - scroll-step = 5; 489 - }; 490 - tray = { 491 - icon-size = 25; 492 - show-passive-items = true; 493 - spacing = 5; 494 - }; 495 - user = { 496 - format = " {user}"; 497 - icon = true; 498 - }; 499 - } 500 - { 501 - cpu = { 502 - format = "󰍛 {usage}󰏰"; 503 - states = { 504 - critical = 95; 505 - warning = 80; 320 + "wlr/taskbar" = { 321 + format = "{icon}"; 322 + icon-size = 35; 323 + on-click = "activate"; 506 324 }; 507 - }; 508 - "hyprland/workspaces" = { 509 - disable-scroll = true; 510 - format = "{name}"; 511 - }; 512 - layer = "top"; 513 - memory = { 514 - format = " {}󰏰 ({used:0.1f}/{total:0.1f} GiB)"; 515 - states = { 516 - critical = 90; 517 - warning = 70; 325 + power-profiles-daemon = { 326 + format = "{icon}"; 327 + tooltip-format = "Power Profile: {profile}"; 328 + format-icons = { 329 + default = "󰓅"; 330 + performance = "󰓅"; 331 + balanced = "󰾅"; 332 + power-saver = "󰾆"; 333 + }; 518 334 }; 519 - }; 520 - # modules-center = ["wlr/taskbar"]; 521 - # modules-left = ["hyprland/workspaces"]; 522 - modules-right = [ 523 - "temperature" 524 - "cpu" 525 - "power-profiles-daemon" 526 - "memory" 527 - ]; 528 - position = "bottom"; 529 - temperature = { 530 - critical-threshold = 80; 531 - format = "{icon} {temperatureC} °C"; 532 - format-critical = "{icon}! {temperatureC} °C"; 533 - format-icons = [ 534 - "󱃃" 535 - "󰔏" 536 - "󱃂" 537 - ]; 538 - thermal-zone = 1; 539 - }; 540 - "wlr/taskbar" = { 541 - format = "{icon}"; 542 - icon-size = 35; 543 - on-click = "activate"; 544 - }; 545 - power-profiles-daemon = { 546 - format = "{icon}"; 547 - tooltip-format = "Power Profile: {profile}"; 548 - format-icons = { 549 - default = "󰓅"; 550 - performance = "󰓅"; 551 - balanced = "󰾅"; 552 - power-saver = "󰾆"; 553 - }; 554 - }; 555 - } 556 - ]; 557 - }; 558 - }; 335 + } 336 + ]; 337 + }; 338 + } 339 + ] 340 + ); 559 341 }
+220
res/waybar.css
··· 1 + @import "catppuccin.css"; 2 + 3 + * { 4 + font-family: sans-serif; 5 + } 6 + 7 + window#waybar { 8 + background: rgba(49, 50, 68, 0.65); 9 + color: @text; 10 + } 11 + 12 + .modules-left>*>*, 13 + .modules-right>*>* { 14 + font-size: 1.5rem; 15 + background: @crust; 16 + border: 2px solid @base; 17 + border-radius: 5rem; 18 + padding: 5px 15px; 19 + margin: 5px 2px; 20 + } 21 + 22 + #bluetooth.disabled { 23 + border-color: @red; 24 + } 25 + 26 + #waybar .modules-left>*:first-child>* { 27 + margin-left: 25px; 28 + } 29 + 30 + #waybar .modules-right>*:last-child>* { 31 + margin-right: 25px; 32 + } 33 + 34 + #waybar .modules-left, 35 + #waybar .modules-right { 36 + margin-top: 10px; 37 + margin-bottom: 5px; 38 + } 39 + 40 + #waybar .modules-center { 41 + margin-top: 5px; 42 + margin-bottom: 5px; 43 + } 44 + 45 + #battery.warning { 46 + border-color: @yellow; 47 + } 48 + 49 + #battery.critical { 50 + border-color: @red; 51 + } 52 + 53 + *>#battery.charging { 54 + border-color: @green; 55 + } 56 + 57 + #taskbar, 58 + #workspaces { 59 + padding: 10px; 60 + border-radius: 5rem; 61 + border: none; 62 + background: none; 63 + } 64 + 65 + #taskbar button, 66 + #workspaces button { 67 + color: @text; 68 + border-radius: 5rem; 69 + padding: 5px 15px; 70 + margin: 0 5px; 71 + background: @crust; 72 + border: 2px solid @base; 73 + } 74 + 75 + #taskbar button:hover, 76 + #workspaces button:hover { 77 + background: @mantle; 78 + } 79 + 80 + #workspaces button { 81 + font-size: 1.5rem; 82 + } 83 + 84 + #cpu, 85 + #memory, 86 + #temperature { 87 + font-size: 1.5rem; 88 + padding: 10px 25px; 89 + } 90 + 91 + #cpu.warning, 92 + #memory.warning { 93 + border-color: @yellow; 94 + } 95 + 96 + #cpu.critical, 97 + #memory.critical, 98 + #temperature.critical { 99 + border-color: @red; 100 + } 101 + 102 + #workspaces button.active { 103 + border: 2px solid @sapphire; 104 + } 105 + 106 + #taskbar button.active { 107 + border: 2px solid @sapphire; 108 + } 109 + 110 + #idle_inhibitor.activated { 111 + border-color: @mauve; 112 + } 113 + 114 + #custom-notification.notification { 115 + border-color: @sapphire; 116 + } 117 + 118 + #custom-notification.dnd-none, 119 + #custom-notification.dnd-notification, 120 + #custom-notification.dnd-inhibited-none, 121 + #custom-notification.dnd-inhibited-notification { 122 + border-color: @red; 123 + } 124 + 125 + #custom-notification.inhibited-none, 126 + #custom-notification.inhibited-notification { 127 + border-color: @mauve; 128 + } 129 + 130 + #network.disconnected { 131 + border-color: @red; 132 + } 133 + 134 + #privacy { 135 + background: none; 136 + border: none; 137 + margin: 0; 138 + padding: 0; 139 + } 140 + 141 + #privacy-item { 142 + font-size: 1.5rem; 143 + border-radius: 5rem; 144 + padding: 5px 15px; 145 + margin: 5px 2px; 146 + border: 2px solid @red; 147 + background-color: @crust; 148 + } 149 + 150 + #custom-weather.VeryCloudy, 151 + #custom-weather.Cloudy, 152 + #custom-weather.Fog { 153 + border-color: @overlay0; 154 + } 155 + 156 + #custom-weather.HeavyRain, 157 + #custom-weather.ThunderyHeavyRain, 158 + #custom-weather.ThunderyRain, 159 + #custom-weather.ThunderyShowers, 160 + #custom-weather.HeavyShowers, 161 + #custom-weather.LightRain, 162 + #custom-weather.LightShowers { 163 + border-color: @blue; 164 + } 165 + 166 + #custom-weather.HeavySnow, 167 + #custom-weather.LightSnow, 168 + #custom-weather.Sleet, 169 + #custom-weather.Snow, 170 + #custom-weather.LightSnowShowers, 171 + #custom-weather.LightSleetShowers { 172 + border-color: @text; 173 + } 174 + 175 + #custom-weather.Clear, 176 + #custom-weather.Sunny { 177 + border-color: @yellow; 178 + } 179 + 180 + #custom-weather.PartlyCloudy { 181 + border-color: @flamingo; 182 + } 183 + 184 + #custom-weather.PartlyCloudy.night { 185 + border-color: @lavender; 186 + } 187 + 188 + #custom-weather.Clear.night, 189 + #custom-weather.Sunny.night { 190 + border-color: @mauve; 191 + } 192 + 193 + #custom-news.utd { 194 + font-size: 1.5rem; 195 + } 196 + 197 + #custom-news.unread { 198 + border-color: @sapphire; 199 + } 200 + 201 + #mpris { 202 + opacity: 0; 203 + } 204 + 205 + #mpris.paused { 206 + opacity: 1; 207 + } 208 + 209 + #mpris.playing { 210 + opacity: 1; 211 + border-color: @sapphire; 212 + } 213 + 214 + #mpris.playing.spotify { 215 + border-color: #33B980; 216 + } 217 + 218 + #mpris.paused.kdeconnect { 219 + opacity: 0; 220 + }