{ pkgs, config, ... }: let workspaces = { }; mainWaybarConfig = { mod = "dock"; layer = "top"; gtk-layer-shell = true; height = 14; position = "top"; modules-left = ["hyprland/workspaces"]; modules-center = ["clock"]; modules-right = [ "pulseaudio" "tray" ]; "wlr/workspaces" = workspaces; "hyprland/workspaces" = workspaces; clock = { actions = { on-click-forward = "tz_up"; on-click-right = "mode"; on-scroll-down = "shift_down"; on-scroll-up = "shift_up"; }; }; pulseaudio = { format = "{icon} {volume}%"; on-click = "pavucontrol"; format-icons = { default = ["" "" ""]; }; }; tray = { icon-size = 15; spacing = 5; }; }; css = '' /* ----------------------------------------------------- * General * ----------------------------------------------------- */ * { font-size: 16px; font-family: Ubuntu Nerd Font, Font Awesome, sans-serif; font-weight: bold; } window#waybar { background-color: rgba(26,27,38,0.4); border-bottom: 1px solid rgba(26,27,38,0); border-radius: 0px; color: #f8f8f2; } /* ----------------------------------------------------- * Workspaces * ----------------------------------------------------- */ #workspaces { background: #458588; margin: 5px 3px 5px 12px; padding: 0px 1px; border-radius: 15px; border: 0px; font-style: normal; color: #15161e; } #workspaces button { padding: 0px 5px; margin: 4px 3px; border-radius: 15px; border: 0px; color: #15161e; background-color: #458588; opacity: 0.5; transition: all 0.3s ease-in-out; } #workspaces button.active { color: #15161e; * { border: none; border-radius: 0px; font-family: "Inconsolata"; font-size: 16px; min-height: 0; color: #ebdbb2; } window#waybar { border-bottom-style: inset; border-bottom: 4px solid #689d6a; background: #1d2021; } #workspaces, #clock, #custom-music, #window { font-weight: 800; } /* Workspace Buttons */ #workspaces button label{ color: #689d6a; } #workspaces button.focused label { color: #1d2021; } #workspaces button.focused { background: #689d6a; } #mode { background-color: #cc241d; color: white; } #clock, #battery, #cpu, #memory, #network, #pulseaudio, #tray, #mode, #idle_inhibitor { padding: 0 5px; margin: 0 10px; } #idle_inhibitor { padding: 0 10px; } #idle_inhibitor.activated { background-color: #689d6a; color: #1d2021; } #custom-music { color: #b8bb26; margin: 0 15px; padding: 0 20px; border-bottom: 4px solid #b8bb26; } #clock { margin: 0; color: #fabd2f; border-bottom: 4px solid #fabd2f; } #network.disconnected { color: #cc241d; border-bottom: 4px solid #cc241d; } #pulseaudio.muted { padding: 0 20px; color: #cc241d; border-bottom: 4px solid #cc241d; } background: #458588; border-radius: 15px; min-width: 40px; transition: all 0.3s ease-in-out; opacity: 1.0; } #workspaces button:hover { color: #15161e; background: #458588; border-radius: 15px; opacity: 1.0; } /* ----------------------------------------------------- * Tooltips * ----------------------------------------------------- */ tooltip { background: #282828; border: 1px solid #282828; border-radius: 10px; } tooltip label { color: #15161e; } /* ----------------------------------------------------- * Window * ----------------------------------------------------- */ #window { color: #15161e; background: #8ec07c; border-radius: 15px; margin: 5px; padding: 2px 10px; } #custom-packages { color: #15161e; background: #f7768e; border-radius: 15px; margin: 5px; padding: 2px 10px; } #memory { color: #15161e; background: #e0af68; border-radius: 15px; margin: 5px; padding: 2px 10px; } #clock { color: #15161e; background: #458588; border-radius: 15px; margin: 5px; padding: 2px 10px; } #cpu { color: #15161e; background: #7dcfff; border-radius: 15px; margin: 5px; padding: 2px 10px; } #disk { color: #15161e; background: #9ece6a; border-radius: 15px; margin: 5px; padding: 2px 10px; } #battery { color: #15161e; background: #ff79c6; border-radius: 15px; margin: 5px; padding: 2px 10px; } #network { color: #15161e; background: #f1fa8c; border-radius: 15px; margin: 5px; padding: 2px 10px; } #tray { color: #15161e; background: #8EC07C; border-radius: 15px; margin: 5px; padding: 2px 10px; } #pulseaudio { color: #15161e; background: #458588; border-radius: 15px; margin: 5px; padding: 2px 10px; } #custom-notification { color: #15161e; background: #6272a4; border-radius: 15px; margin: 5px; padding: 2px 10px; } ''; in { programs.waybar = { enable = true; package = pkgs.waybar.overrideAttrs (oldAttrs: { mesonFlags = oldAttrs.mesonFlags ++ ["-Dexperimental=true"]; }); style = css; settings = {mainBar = mainWaybarConfig;}; }; }