diff --git a/waybar/dot-config/waybar/config.jsonc b/waybar/dot-config/waybar/config.jsonc index 90c9c72..3c7f413 100644 --- a/waybar/dot-config/waybar/config.jsonc +++ b/waybar/dot-config/waybar/config.jsonc @@ -1,92 +1,158 @@ { - "layer": "top", - "position": "top", - "height": 32, - "spacing": 4, - "exclusive": true, - "gtk-layer-shell": true, - "passthrough": false, - "fixed-center": true, + "layer": "top", // Waybar at top layer + "position": "top", // Waybar position (top|bottom|left|right) + // "width": 1280, // Waybar width + // Choose the order of the modules "modules-left": [ "hyprland/workspaces", "hyprland/window" ], "modules-center": [ - "custom/spotify" + "clock" ], "modules-right": [ - "cpu", - "memory", "pulseaudio", - "clock", - "clock#simpleclock", "tray", + "bluetooth", + "battery", "custom/power" ], - "custom/spotify": { - "format": "{}", - "return-type": "json", - "on-click": "playerctl -p spotify play-pause", - "on-click-right": "spotifatius toggle-liked", - "on-click-middle": "playerctl -p spotify next", - "exec": "spotifatius monitor" - }, - "wlr/workspaces": { - "on-click": "activate", - "format": "{name}", + "hyprland/workspaces": { + "disable-scroll": true, + "disable-markup": false, "all-outputs": true, - "disable-scroll": false, - "active-only": false + "format": " {icon} ", + "on-click": "activate", + "sort-by-number": true, + "format-icons": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "urgent": "", + "active": "", + "default": "" + }, + "persistent-workspaces": { + "1": [ + "HDMI-A-1" + ], + "2": [ + "HDMI-A-1" + ], + "3": [ + "HDMI-A-1" + ], + "4": [ + "HDMI-A-1" + ], + "5": [ + "HDMI-A-1" + ], + "6": [ + "HDMI-A-1" + ], + "7": [ + "HDMI-A-1" + ], + "8": [ + "HDMI-A-1" + ], + "9": [ + "HDMI-A-1" + ], + "10": [ + "eDP-1" + ] + } }, "tray": { - "show-passive-items": true, - "spacing": 10 + "icon-size": 24, + "spacing": 5 }, - "clock#simpleclock": { + "custom/spotify": { + "format": " {}", + "escape": true, + "interval": 5, "tooltip": false, - "format": " {:%H:%M}" + "exec": "playerctl metadata --format='{{ title }}'", + "on-click": "playerctl play-pause", + "max-length": 50 }, "clock": { - "format": " {:L%a %d %b}", - "tooltip-format": "{:%Y %B}\n{calendar}" + "timezone": "Europe/Rome", + "tooltip-format": "{:%Y %B}\n{calendar}", + "format-alt": "{:%d/%m/%Y}", + "format": "{:%a %b %d %I:%M %p}" }, - "cpu": { - "format": " {usage}%", - "tooltip": true, - "interval": 1 + "backlight": { + "device": "intel_backlight", + "format": "{icon} {percent}%", + "format-icons": [ + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] }, - "memory": { - "format": " {used:0.2f}G" + "battery": { + "states": { + "warning": 30, + "critical": 15 + }, + "format": "{icon} {capacity}%", + "format-charging": "󰂄", + "format-plugged": "󰂄", + "format-alt": "{icon}", + "format-icons": [ + "󰁺", + "󰁻", + "󰁼", + "󰁽", + "󰁾", + "󰁿", + "󰂀", + "󰂁", + "󰂂" + ] }, "pulseaudio": { + // "scroll-step": 1, // %, can be a float "format": "{icon} {volume}%", - "format-muted": " muted", + "format-muted": "", "format-icons": { - "headphone": " ", - "hands-free": "󰂑", - "headset": "󰂑", - "phone": "", - "portable": "", - "car": "", "default": [ - " ", - " ", + "", + "", " " ] }, "on-click": "pavucontrol" }, - "custom/logo": { - "format": "", - "tooltip": false - }, - "custom/sep": { - "format": "|", - "tooltip": false + "custom/lock": { + "tooltip": false, + "on-click": "sh -c '(sleep 0.5s; swaylock --grace 0)' & disown", + "format": "" }, "custom/power": { "tooltip": false, - "on-click": "wlogout -p layer-shell &", - "format": "⏻ " + "on-click": "wlogout &", + "format": "" + }, + "bluetooth": { + "format": " {status}", + "format-connected": " {device_alias}", + "format-connected-battery": " {device_alias} {device_battery_percentage}%", + "format-off": "󰂲", // "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device + "tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected", + "tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}", + "tooltip-format-enumerate-connected": "{device_alias}\t{device_address}", + "tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%" } } diff --git a/waybar/dot-config/waybar/style.css b/waybar/dot-config/waybar/style.css index b615b42..24a20ae 100644 --- a/waybar/dot-config/waybar/style.css +++ b/waybar/dot-config/waybar/style.css @@ -1,143 +1,103 @@ +@import "themes/frappe.css"; + * { + font-family: FiraCode Nerd Font; + font-size: 17px; min-height: 0; - font-family: Lexend, "Font Awesome 6 Free Solid"; - font-size: 16px; - font-weight: 500; } -window#waybar { - transition-property: background-color; - transition-duration: 0.5s; - /* background-color: #1e1e2e; */ - /* background-color: #181825; */ - background-color: rgba(24, 24, 37, 0.6); -} - -window#waybar.hidden { - opacity: 0.5; +#waybar { + background: transparent; + color: @text; + margin: 5px 5px; } #workspaces { - background-color: transparent; + border-radius: 1rem; + margin: 5px; + background-color: @surface0; + margin-left: 1rem; } #workspaces button { - all: initial; - min-width: 0; - box-shadow: inset 0 -3px transparent; - padding: 2px 10px; - min-height: 0; - margin: 4px 4px; - border-radius: 8px; - background-color: #181825; - color: #cdd6f4; -} - -#workspaces button:hover { - box-shadow: inherit; - text-shadow: inherit; - color: #1e1e2e; - background-color: #cdd6f4; + color: @lavender; + border-radius: 1rem; + padding: 0.4rem; } #workspaces button.active { - color: #1e1e2e; - background-color: #89b4fa; + color: @sky; + border-radius: 1rem; } -#workspaces button.urgent { - background-color: #f38ba8; +#workspaces button:hover { + color: @sapphire; + border-radius: 1rem; } -#clock, -#pulseaudio, -#custom-logo, -#custom-power, -#custom-spotify, -#cpu, +#custom-music, #tray, -#memory, -#window { - min-height: 0; - padding: 2px 10px; - border-radius: 8px; - margin: 4px 4px; - background-color: #181825; -} - -#custom-sep { - padding: 0px; - color: #585b70; -} - -#custom-spotify.playing { - color: #cdd6f4; -} - -#custom-spotify.liked { - color: #f9e2af; -} -#custom-spotify.added { - color: #cba6f7; -} - -#custom-spotify.removed { - color: #f38ba8; -} - -#custom-spotify.paused { - color: #9399b2; -} - -window#waybar.empty #window { - background-color: transparent; -} - -#cpu { - color: #94e2d5; -} - -#memory { - color: #cba6f7; +#backlight, +#bluetooth, +#clock, +#battery, +#pulseaudio, +#custom-lock, +#custom-power { + background-color: @surface0; + padding: 0.5rem 1rem; + margin: 5px 0; } #clock { - color: #74c7ec; + color: @blue; + border-radius: 0px 1rem 1rem 0px; + margin-right: 1rem; } -#clock.simpleclock { - color: #89b4fa; +#battery { + color: @green; } -#window { - color: #a6e3a1; +#battery.charging { + color: @green; +} + +#battery.warning:not(.charging) { + color: @red; +} + +#bluetooth { + color: @blue; +} + +#bluetooth, #battery { + border-radius: 0; } #pulseaudio { - color: #b4befe; + color: @maroon; + border-radius: 1rem 0px 0px 1rem; + margin-left: 1rem; } -#pulseaudio.muted { - color: #a6adc8; +#clock, #custom-music { + color: @mauve; + border-radius: 1rem; } -#custom-logo { - color: #89b4fa; +#custom-lock { + border-radius: 1rem 0px 0px 1rem; + color: @lavender; } #custom-power { - color: #f38ba8; - padding-right: 5px; - font-size: 14px; + margin-right: 1rem; + border-radius: 0px 1rem 1rem 0px; + color: @red; } -@keyframes blink { - to { - background-color: #f38ba8; - color: #181825; - } -} - -tooltip { - border-radius: 8px; +#tray { + margin-right: 1rem; + border-radius: 1rem; } diff --git a/waybar/dot-config/waybar/themes/frappe.css b/waybar/dot-config/waybar/themes/frappe.css new file mode 100644 index 0000000..c06b8fb --- /dev/null +++ b/waybar/dot-config/waybar/themes/frappe.css @@ -0,0 +1,26 @@ +@define-color rosewater #f2d5cf; +@define-color flamingo #eebebe; +@define-color pink #f4b8e4; +@define-color mauve #ca9ee6; +@define-color red #e78284; +@define-color maroon #ea999c; +@define-color peach #ef9f76; +@define-color yellow #e5c890; +@define-color green #a6d189; +@define-color teal #81c8be; +@define-color sky #99d1db; +@define-color sapphire #85c1dc; +@define-color blue #8caaee; +@define-color lavender #babbf1; +@define-color text #c6d0f5; +@define-color subtext1 #b5bfe2; +@define-color subtext0 #a5adce; +@define-color overlay2 #949cbb; +@define-color overlay1 #838ba7; +@define-color overlay0 #737994; +@define-color surface2 #626880; +@define-color surface1 #51576d; +@define-color surface0 #414559; +@define-color base #303446; +@define-color mantle #292c3c; +@define-color crust #232634; diff --git a/waybar/dot-config/waybar/themes/latte.css b/waybar/dot-config/waybar/themes/latte.css new file mode 100644 index 0000000..bb101b1 --- /dev/null +++ b/waybar/dot-config/waybar/themes/latte.css @@ -0,0 +1,26 @@ +@define-color rosewater #dc8a78; +@define-color flamingo #dd7878; +@define-color pink #ea76cb; +@define-color mauve #8839ef; +@define-color red #d20f39; +@define-color maroon #e64553; +@define-color peach #fe640b; +@define-color yellow #df8e1d; +@define-color green #40a02b; +@define-color teal #179299; +@define-color sky #04a5e5; +@define-color sapphire #209fb5; +@define-color blue #1e66f5; +@define-color lavender #7287fd; +@define-color text #4c4f69; +@define-color subtext1 #5c5f77; +@define-color subtext0 #6c6f85; +@define-color overlay2 #7c7f93; +@define-color overlay1 #8c8fa1; +@define-color overlay0 #9ca0b0; +@define-color surface2 #acb0be; +@define-color surface1 #bcc0cc; +@define-color surface0 #ccd0da; +@define-color base #eff1f5; +@define-color mantle #e6e9ef; +@define-color crust #dce0e8; diff --git a/waybar/dot-config/waybar/themes/macchiato.css b/waybar/dot-config/waybar/themes/macchiato.css new file mode 100644 index 0000000..112ee32 --- /dev/null +++ b/waybar/dot-config/waybar/themes/macchiato.css @@ -0,0 +1,26 @@ +@define-color rosewater #f4dbd6; +@define-color flamingo #f0c6c6; +@define-color pink #f5bde6; +@define-color mauve #c6a0f6; +@define-color red #ed8796; +@define-color maroon #ee99a0; +@define-color peach #f5a97f; +@define-color yellow #eed49f; +@define-color green #a6da95; +@define-color teal #8bd5ca; +@define-color sky #91d7e3; +@define-color sapphire #7dc4e4; +@define-color blue #8aadf4; +@define-color lavender #b7bdf8; +@define-color text #cad3f5; +@define-color subtext1 #b8c0e0; +@define-color subtext0 #a5adcb; +@define-color overlay2 #939ab7; +@define-color overlay1 #8087a2; +@define-color overlay0 #6e738d; +@define-color surface2 #5b6078; +@define-color surface1 #494d64; +@define-color surface0 #363a4f; +@define-color base #24273a; +@define-color mantle #1e2030; +@define-color crust #181926; diff --git a/waybar/dot-config/waybar/themes/mocha.css b/waybar/dot-config/waybar/themes/mocha.css new file mode 100644 index 0000000..0eb6a82 --- /dev/null +++ b/waybar/dot-config/waybar/themes/mocha.css @@ -0,0 +1,26 @@ +@define-color rosewater #f5e0dc; +@define-color flamingo #f2cdcd; +@define-color pink #f5c2e7; +@define-color mauve #cba6f7; +@define-color red #f38ba8; +@define-color maroon #eba0ac; +@define-color peach #fab387; +@define-color yellow #f9e2af; +@define-color green #a6e3a1; +@define-color teal #94e2d5; +@define-color sky #89dceb; +@define-color sapphire #74c7ec; +@define-color blue #89b4fa; +@define-color lavender #b4befe; +@define-color text #cdd6f4; +@define-color subtext1 #bac2de; +@define-color subtext0 #a6adc8; +@define-color overlay2 #9399b2; +@define-color overlay1 #7f849c; +@define-color overlay0 #6c7086; +@define-color surface2 #585b70; +@define-color surface1 #45475a; +@define-color surface0 #313244; +@define-color base #1e1e2e; +@define-color mantle #181825; +@define-color crust #11111b;