diff --git a/modules/home/waybar/default.nix b/modules/home/waybar/default.nix index c8d0d33..626b8b9 100644 --- a/modules/home/waybar/default.nix +++ b/modules/home/waybar/default.nix @@ -1,8 +1,13 @@ -{ config, lib, pkgs, username, ... }: +{ + config, + lib, + pkgs, + username, + ... +}: { - imports = - [(import ./scripts.nix)]; + imports = [ (import ./scripts.nix) ]; programs.waybar = { enable = true; @@ -20,14 +25,17 @@ [{ "layer": "top", "position": "top", - + "modules-left": [ - "sway/workspaces", - "hyprland/workspaces", "privacy", "group/network", "tray", ], + + "modules-center": [ + "hyprland/workspaces", + ], + "modules-right": [ "custom/yubikey#icon", "custom/yubikey#data", @@ -37,27 +45,29 @@ // "wireplumber", "group/audio", "battery", - "custom/notification", "group/clock" ], - - - // ------------------------------------------------------------------------- - // modules-left - // ------------------------------------------------------------------------- - + + "hyprland/window": { + "format": "{}", + "rewrite": { + "(.*) - zsh": "> [$1]" + }, + "separate-outputs": true + }, + "sway/workspaces": { "all-outputs": true, "disable-scroll": true, "format": "{name}" }, - + "hyprland/workspaces": { "all-outputs": true, "disable-scroll": true, "format": "{name}" }, - + "group/network": { "orientation": "horizontal", "modules": [ @@ -94,7 +104,7 @@ // "on-click-right": "/usr/local/bin/get-public-ip-info", // "interval": 30 // }, - + "privacy": { "icon-spacing": 8, "icon-size": 14, @@ -117,31 +127,27 @@ } ] }, - + "tray": { "icon-size": 12, "spacing": 0 }, - + "sway/mode": { "format": " {}", "tooltip": false }, - // ------------------------------------------------------------------------- - // modules-right - // ------------------------------------------------------------------------- - "custom/yubikey#icon": { "exec": "~/.local/bin/waybar-yubikey 0", "return-type": "json" }, - + "custom/yubikey#data": { "exec": "~/.local/bin/waybar-yubikey 1", "return-type": "json" }, - + "group/hardware": { "orientation": "horizontal", "modules": [ @@ -156,7 +162,7 @@ "transition-duration": 500 } }, - + "cpu": { "interval": 30, "format": " {avg_frequency:3.2f}GHz {usage}%", @@ -165,31 +171,31 @@ "critical": 90 }, }, - + "temperature#cpu": { "hwmon-path": "/sys/class/hwmon/hwmon5/temp1_input", "critical-threshold": 80, "format": " CPU {temperatureC}°C" }, - + "temperature#gpu": { "hwmon-path": "/sys/class/hwmon/hwmon0/temp1_input", "critical-threshold": 80, "format": "· GPU {temperatureC}°C" }, - + "temperature#nvme": { "hwmon-path": "/sys/class/hwmon/hwmon1/temp1_input", "critical-threshold": 80, "format": "· NVMe {temperatureC}°C" }, - + "temperature#wifi": { "hwmon-path": "/sys/class/hwmon/hwmon11/temp1_input", "critical-threshold": 80, "format": "· WiFi {temperatureC}°C" }, - + "group/resources": { "orientation": "horizontal", "modules": [ "memory", "disk#root" ], @@ -198,18 +204,18 @@ "transition-duration": 500 } }, - + "memory": { "interval": 60, "format": "󰘚 {used:3.1f}GiB/{total:3.1f}GiB" }, - + "disk#root": { "interval": 360, "format": " {used}/{total}", "path": "/" }, - + "bluetooth": { // "controller": "controller1", "on-click": "~/.local/bin/waybar-bluetooth toggle", @@ -223,7 +229,7 @@ "tooltip-format-enumerate-connected": "{device_alias}\t\t[{device_address}]", "tooltip-format-enumerate-connected-battery": "{device_alias} ({device_battery_percentage})\t\t[{device_address}]" }, - + "group/audio": { "orientation": "horizontal", "modules": [ @@ -237,7 +243,7 @@ "transition-duration": 500 } }, - + "wireplumber": { "format": "{icon} {node_name}/{volume}", "format-muted": "", @@ -245,21 +251,21 @@ "on-click-right": "helvum", "format-icons": ["", "", ""] }, - + "custom/audio-internal": { "format": "󱡬 ", "tooltip-format": "Internal", "on-click": "audio-router analog", "interval": "once" }, - + "custom/audio-hdmi": { "format": "󰡁 ", "tooltip-format": "HDMI", "on-click": "audio-router hdmi", "interval": "once" }, - + "battery": { "bat": "BAT1", "interval": 30, @@ -277,28 +283,7 @@ "format-not-charging": "󱐤 {capacity}%", "format-icons": [" ", " ", " ", " ", " "], }, - - "custom/notification": { - "tooltip": false, - "format": "{icon} ", - "format-icons": { - "notification": "", - "none": "", - "dnd-notification": "", - "dnd-none": "", - "inhibited-notification": "", - "inhibited-none": "", - "dnd-inhibited-notification": "", - "dnd-inhibited-none": "" - }, - "return-type": "json", - "exec-if": "which swaync-client", - "exec": "swaync-client -swb", - "on-click": "swaync-client -t -sw", - "on-click-right": "swaync-client -d -sw", - "escape": true - }, - + "group/clock": { "orientation": "horizontal", "modules": [ "custom/clock#minutes", "clock#time", "clock#date" ], @@ -307,7 +292,7 @@ "transition-duration": 500 } }, - + "clock#date": { "interval": 60, "format": " {:%a %e %b %Y}", @@ -331,7 +316,7 @@ "on-scroll-down": "shift_down" } }, - + "clock#time": { "interval": 60, "format": " {:%I:%M %p}", @@ -361,32 +346,33 @@ min-height: 26px; /* margin: 0 0px; */ } - + window#waybar.top { - background-color: rgba(115, 116, 116, 0.22); + /* background-color: rgba(115, 116, 116, 0.22); */ + background-color: rgba(0, 0, 0, 0.75); border-bottom: none; color: #eeeeee; transition-property: background-color; transition-duration: .5s; } - + window#waybar.hidden { opacity: 0.5; } - + label#window { text-shadow: 0px 0px 3px #18181e; } - + tooltip { background: rgba(43, 48, 59, 0.5); border: 1px solid rgba(100, 114, 125, 0.5); } - + tooltip label { color: white; } - + .modules-left > widget > label, .modules-left > box > widget > label, .modules-right > widget > label, @@ -394,15 +380,15 @@ padding: 0 10px; margin: 0px 0px 0px 10px; } - + #network, #resources, #audio, #clock { padding: 0 4px; } - + .drawer-child > label { margin: 0px 10px; } - + #custom-audio-internal, #custom-audio-motu, #custom-audio-headphones, @@ -411,11 +397,11 @@ padding: 4px 2px; border-radius: 0px; } - + #workspaces { margin: 0px 0px 0px 0px; } - + #workspaces button { /*padding: 4px 6px;*/ padding: 4px 6px; @@ -423,61 +409,62 @@ border-radius: 0px; /*min-width: 32px;*/ } - + /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ - + #workspaces button:hover { box-shadow: inherit; text-shadow: inherit; background: transparent; color: #ffffff; } - + + #workspaces button.active { + box-shadow: inherit; + text-shadow: inherit; + background: transparent; + color: #ffffff; + } + #workspaces button.focused { color: #eeeeee; } - + #workspaces button.focused:hover { color: #ffffff; } - + #workspaces button.urgent { color: #ffffff; background-color: #e27878; } - + #language { /* margin: 0px 0px 0px 0px; */ color: #cccccc; } - + #tray { background-color: rgba(0, 0, 0, 0); /* margin-left: 10px; */ } - + #tray image { margin: 0px 10px 0px 0px; } - + #mode { background-color: rgba(0, 0, 0, 0); border: 2px solid #e2a478; margin: 0px 10px 0px 0px; border-radius: 5px; } - + #custom-yubikey.icon { background: #f9409d; } - - #custom-notification { - padding: 0; - color: #ffffff; - margin: 0px 10px; - } + ''; }; }; } -