// Double Bar Config
[
// Top Bar Config
{
// Main Config
"name": "top_bar",
"layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
"height": 36, // Waybar height (to be removed for auto height)
"spacing": 4, // Gaps between modules (4px)
"modules-left": ["hyprland/workspaces", "hyprland/submap"],
"modules-center": ["clock#time", "custom/separator", "clock#week", "custom/separator_dot", "clock#month", "custom/separator", "clock#calendar"],
"modules-right": [ "bluetooth", "network", "group/misc", "custom/logout_menu" ],
// Modules Config
"hyprland/workspaces": {
"on-click": "activate",
"format": "{icon}",
"format-icons": {
"active": "",
"default": ""
},
"persistent_workspaces": {
"*": 10,
},
},
"hyprland/submap": {
"format": "Mode: {}",
"tooltip": false,
},
"clock#time": {
"format": "{:%I:%M %p %Ez}",
// "locale": "en_US.UTF-8",
// "timezones": [ "Europe/Kyiv", "America/New_York" ],
},
"custom/separator": {
"format": "|",
},
"custom/separator_dot": {
"format": "•",
},
"clock#week": {
"format": "{:%a}",
},
"clock#month": {
"format": "{:%h}",
},
"clock#calendar": {
"format": "{:%F}",
"tooltip-format": "{calendar}",
"actions": {
"on-click-right": "mode",
},
"calendar": {
"mode" : "month",
"mode-mon-col" : 3,
"weeks-pos" : "right",
"on-scroll" : 1,
"on-click-right": "mode",
"format": {
"months": "{}",
"days": "{}",
"weeks": "W{}",
"weekdays": "{}",
"today": "{}"
}
},
},
"clock": {
"format": "{:%I:%M %p %Ez | %a • %h | %F}",
"format-alt": "{:%I:%M %p}",
"tooltip-format": "{calendar}",
// "locale": "en_US.UTF-8",
// "timezones": [ "Europe/Kyiv", "America/New_York" ],
"actions": {
"on-click-right": "mode",
},
"calendar": {
"mode" : "month",
"mode-mon-col" : 3,
"weeks-pos" : "right",
"on-scroll" : 1,
"on-click-right": "mode",
"format": {
"months": "{}",
"days": "{}",
"weeks": "W{}",
"weekdays": "{}",
"today": "{}"
}
},
},
"custom/media": {
"format": "{icon}",
"restart-interval": 2,
"return-type": "json",
"format-icons": {
"Playing": "",
"Paused": "",
},
"max-length": 35,
"exec": "fish -c fetch_music_player_data",
"on-click": "playerctl play-pause",
"on-click-right": "playerctl next",
"on-click-middle": "playerctl prev",
"on-scroll-up": "playerctl volume 0.05-",
"on-scroll-down": "playerctl volume 0.05+",
"smooth-scrolling-threshold": "0.1",
},
"bluetooth": {
"format": "",
"format-disabled": "",
"format-connected": " {device_alias}",
"format-connected-battery": " {device_alias} ( {device_battery_percentage}%)",
// "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device
"tooltip-format": "{controller_alias}\t{controller_address} ({status})\n\n{num_connections} connected",
"tooltip-format-disabled": "bluetooth off",
"tooltip-format-connected": "{controller_alias}\t{controller_address} ({status})\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}%)",
"max-length": 35,
"on-click": "fish -c bluetooth_toggle",
"on-click-right": "blueman-manager",
},
"network": {
"format": "",
"format-wifi": "{icon}({signalStrength}%){essid}",
"format-icons": [ "", "", "", "", "" ],
"format-disconnected": " Disconnected",
"tooltip-format": "wifi off",
"tooltip-format-wifi":"SSID: {essid}({signalStrength}%), {frequency} MHz\nInterface: {ifname}\nIP: {ipaddr}\nGW: {gwaddr}\n\n{bandwidthUpBits}\t{bandwidthDownBits}\t{bandwidthTotalBits}",
"tooltip-format-disconnected": "disconnected",
// "format-ethernet": " {ipaddr}/{cidr}",
// "format-linked": " {ifname} (No IP)",
// "tooltip-format-ethernet":"Interface: {ifname}\nIP: {ipaddr}\nGW: {gwaddr}\nNetmask: {netmask}\nCIDR: {cidr}\n\n{bandwidthUpBits}\t{bandwidthDownBits}\t{bandwidthTotalBits}",
"max-length": 35,
"on-click": "fish -c wifi_toggle",
"on-click-right": "wezterm start nmtui",
},
"group/misc": {
"orientation": "horizontal",
"modules": [
"custom/recording",
"custom/geo",
"custom/media",
"custom/dunst",
"custom/night_mode",
"custom/airplane_mode",
"idle_inhibitor",
],
},
"custom/recording": {
"interval": 1,
"exec-if": "pgrep wf-recorder",
"exec": "fish -c check_recording",
"return-type": "json",
},
"custom/geo": {
"interval": 1,
"exec-if": "pgrep geoclue",
"exec": "fish -c check_geo_module",
"return-type": "json",
},
"custom/airplane_mode": {
"return-type": "json",
"interval": 1,
"exec": "fish -c check_airplane_mode",
"on-click": "fish -c airplane_mode_toggle",
},
"custom/night_mode": {
"return-type": "json",
"interval": 1,
"exec": "fish -c check_night_mode",
"on-click": "fish -c night_mode_toggle",
},
"custom/dunst": {
"return-type": "json",
"exec": "fish -c dunst_pause",
"on-click": "dunstctl set-paused toggle",
"restart-interval": 1,
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
},
"tooltip-format-activated": "idle-inhibitor on",
"tooltip-format-deactivated": "idle-inhibitor off",
// "start-activated": true,
},
"custom/logout_menu": {
"return-type": "json",
"exec": "echo '{ \"text\":\"\", \"tooltip\": \"logout menu\" }'",
"interval": "once",
"on-click": "fish -c wlogout_uniqe",
},
},
// Bottom Bar Config
{
// Main Config
"name": "bottom_bar",
"layer": "top", // Waybar at top layer
"position": "bottom", // Waybar position (top|bottom|left|right)
"height": 36, // Waybar height (to be removed for auto height)
"spacing": 4, // Gaps between modules (4px)
"modules-left": ["user"],
"modules-center": ["hyprland/window"],
"modules-right": ["keyboard-state", "hyprland/language"],
// Modules Config
"hyprland/window": {
"format": "👼 {title} 😈",
"max-length": 50,
},
"hyprland/language": {
"format-en": "🇺🇸 ENG (US)",
"format-uk": "🇺🇦 UKR",
"format-ru": "🇷🇺 RUS",
"on-click": "hyprctl switchxkblayout at-translated-set-2-keyboard next",
},
"keyboard-state": {
"capslock": true,
// "numlock": true,
"format": "{name} {icon}",
"format-icons": {
"locked": "",
"unlocked": ""
}
},
"user": {
"format": "{user} (up {work_H} h {work_M} min ↑)",
"icon": true,
},
},
// Left Bar Config
{
// Main Config
"name": "left_bar",
"layer": "top", // Waybar at top layer
"position": "left", // Waybar position (top|bottom|left|right)
"spacing": 4, // Gaps between modules (4px)
"width": 75,
"margin-top": 10,
"margin-bottom": 10,
"modules-left": ["wlr/taskbar"],
"modules-center": ["cpu", "memory", "disk", "temperature", "battery", "backlight", "pulseaudio"],
"modules-right": ["tray"],
// Modules Config
"wlr/taskbar": {
"format": "{icon}",
"icon-size": 20,
"icon-theme": "Numix-Circle",
"tooltip-format": "{title}",
"on-click": "activate",
"on-click-right": "close",
"on-click-middle": "fullscreen",
},
"tray":{
"icon-size": 20,
"spacing": 2,
},
"cpu": {
"format": "{usage}%",
"states": {
"high": 90,
"upper-medium": 70,
"medium": 50,
"lower-medium": 30,
"low": 10,
},
"on-click": "wezterm start btop",
"on-click-right": "wezterm start btm",
},
"memory": {
"format": "{percentage}%",
"tooltip-format": "Main: ({used} GiB/{total} GiB)({percentage}%), available {avail} GiB\nSwap: ({swapUsed} GiB/{swapTotal} GiB)({swapPercentage}%), available {swapAvail} GiB",
"states": {
"high": 90,
"upper-medium": 70,
"medium": 50,
"lower-medium": 30,
"low": 10,
},
"on-click": "wezterm start btop",
"on-click-right": "wezterm start btm",
},
"disk": {
"format": "{percentage_used}%",
"tooltip-format": "({used}/{total})({percentage_used}%) in '{path}', available {free}({percentage_free}%)",
"states": {
"high": 90,
"upper-medium": 70,
"medium": 50,
"lower-medium": 30,
"low": 10,
},
"on-click": "wezterm start btop",
"on-click-right": "wezterm start btm",
},
"temperature": {
"tooltip": false,
"thermal-zone": 8,
"critical-threshold": 80,
"format": "{icon}{temperatureC}",
"format-critical": "🔥{icon}{temperatureC}",
"format-icons": [ "", "", "", "", "" ],
},
"battery": {
"states": {
"high": 90,
"upper-medium": 70,
"medium": 50,
"lower-medium": 30,
"low": 10,
},
"format": "{icon}{capacity}%",
"format-charging": "{icon}{capacity}%",
"format-plugged": "{icon}{capacity}%",
"format-time": "{H} h {M} min",
"format-icons": [ "", "", "", "", "", "", "", "", "", "", "" ],
"tooltip-format": "{timeTo}",
},
"backlight": {
"format": "{icon}{percent}%",
"format-icons": [
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
],
"tooltip": false,
"states": {
"high": 90,
"upper-medium": 70,
"medium": 50,
"lower-medium": 30,
"low": 10,
},
"reverse-scrolling": true,
"reverse-mouse-scrolling": true,
},
"pulseaudio": {
"states": {
"high": 90,
"upper-medium": 70,
"medium": 50,
"lower-medium": 30,
"low": 10,
},
"tooltip-format": "{desc}",
"format": "{icon}{volume}%\n{format_source}",
"format-bluetooth": "{icon}{volume}%\n{format_source}",
"format-bluetooth-muted": "{volume}%\n{format_source}",
"format-muted": "{volume}%\n{format_source}",
"format-source": "{volume}%",
"format-source-muted": "{volume}%",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"speaker": "",
"hdmi": "",
"hifi": "",
"default": [
"",
"",
"",
],
},
"reverse-scrolling": true,
"reverse-mouse-scrolling": true,
"on-click": "pavucontrol",
},
},
]