diff --git a/modules/waybar.nix b/modules/waybar.nix index 951f149..42cdd7a 100644 --- a/modules/waybar.nix +++ b/modules/waybar.nix @@ -1,6 +1,6 @@ { config, - pkgs, + pkgs, ... }: { programs.waybar = { @@ -8,7 +8,7 @@ programs.waybar = { package = pkgs.waybar; settings = { mainBar = { - height = 20; + height = 18; layer = "top"; modules-left = [ "custom/launcher" @@ -28,6 +28,7 @@ programs.waybar = { "battery" "clock" "tray" + "group/group-power" # "hyprland/language" # "custom/wallpaper" # "custom/power-menu" @@ -99,14 +100,14 @@ programs.waybar = { tooltip-format = "Brightness {percent}%"; }; "network" = { - format-wifi = "{bandwidthDownBytes} {icon}"; + format-wifi = "{essid} {icon}"; min-length = 10; fixed-width = 10; format-ethernet = "󰈀"; format-disconnected = "󰤭"; tooltip-format = "{essid}"; interval = 1; - on-click = "renema"; + on-click = "ronema"; format-icons = ["󰤯" "󰤟" "󰤢" "󰤥" "󰤨"]; }; @@ -201,6 +202,47 @@ programs.waybar = { on-click = "rofi -show drun &"; }; + "group/group-power" = { + orientation = "inherit"; + drawer = { + transition-duration = 500; + children-class = "not-suspend"; + transition-left-to-right = false; + }; + modules = [ + "custom/suspend" + "custom/power" + "custom/quit" + "custom/lock" + "custom/reboot" + ]; + }; + "custom/suspend" = { + format = "󰒲"; + tooltip = false; + on-click = "systemctl suspend"; + }; + "custom/quit" = { + format = "󰗼"; + tooltip = false; + on-click = "hyprctl dispatch exit"; + }; + "custom/lock" = { + format = "󰍁"; + tooltip = false; + on-click = "hyprlock"; + }; + "custom/reboot" = { + format = "󰜉"; + tooltip = false; + on-click = "reboot"; + }; + "custom/power" = { + format = ""; + tooltip = false; + on-click = "shutdown now"; + }; + # "custom/wallpaper" = { # format = "󰸉"; # on-click = "bash ~/.config/waybar/scripts/changewallpaper.sh"; @@ -210,7 +252,7 @@ programs.waybar = { style = '' * { /* `otf-font-awesome` is required to be installed for icons */ - font-family: Material Design Icons, JetBrainsMono Nerd Font, Iosevka Nerd Font ; + font-family: CascadiaCode Nerd Font, Material Design Icons, JetBrainsMono Nerd Font, Iosevka Nerd Font ; font-size: 14px; border: none; border-radius: 0; @@ -240,12 +282,18 @@ programs.waybar = { #custom-media, #tray, #mode, - #custom-lock, #workspaces, #idle_inhibitor, #custom-launcher, #custom-spotify, #custom-weather, + #custom-suspend, + #group-power + #custom-power, + #custom-lock, + #custom-quit, + #custom-reboot, + #group-power.drawer #custom-weather.severe, #custom-weather.sunnyDay, #custom-weather.clearNight, @@ -352,13 +400,13 @@ programs.waybar = { #pulseaudio { color: #81A1C1; padding-left: 9px; - font-size: 22px; + font-size: 16px; } #pulseaudio.muted { color: #fb958b; padding-left: 9px; - font-size: 22px; + font-size: 16px; } #backlight { @@ -577,6 +625,29 @@ programs.waybar = { #custom-weather.default { color: #dbd9d8; } + + @define-color macchiato-red #ab4c3e; + @define-color macchiato-blue #8aadf4; + @define-color macchiato-yellow #eed49f; + @define-color macchiato-mauve #c6a0f6; + + #group-power { + margin-bottom: 0px; + } + + #group-power .text-button { + font-weight: normal; + } + + #group-power .drawer .text-button { + padding-bottom: 8.5px; + } + + #custom-suspend { color: @macchiato-red; padding-bottom: 6px; } + #custom-power { color: @macchiato-red; } + #custom-reboot { color: @macchiato-yellow; } + #custom-lock { color: @macchiato-blue; } + #custom-quit { color: @macchiato-mauve; } ''; }; } \ No newline at end of file