{
"layer": "top",
"position": "top",
"exclusive": true, // keep the gap reserved
"margin-top": 8, // gap from the top edge
"margin-left": 10, // gap from the left edge
"margin-right": 10, // gap from the right edge
"margin-bottom": 0,
/* order: 1-2-3 | window-title | tray + clock */
// "modules-left": [ "custom/group1", "custom/group2", "custom/group3", "custom/group4","custom/group5","custom/group6","custom/group7","custom/group8","custom/group9","custom/group10"],
"modules-left": ["hyprland/workspaces"],
"modules-center": [ "hyprland/window" ],
"modules-right": [ "tray", "custom/separator", "network", "bluetooth", "custom/separator", "disk", "cpu", "memory", "pulseaudio", "custom/separator", "clock"],
"hyprland/workspaces": {
"disable-scroll": true,
"all-outputs": true,
"warp-on-scroll": false,
"format": "{icon}",
"format-icons": {
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"10": "0"
},
"persistent-workspaces": {
"1": [],
"2": [],
"3": [],
"4": [],
"5": [],
"6": [],
"7": [],
"8": [],
"9": [],
"10": []
}
},
"hyprland/window": { "format": "{title}", "max-length": 60 },
"tray": { "icon-size": 16, "spacing": 10 },
"pulseaudio": {
// ——— behaviour ———
"scroll-step": 5, // ± 5 % per wheel-step
"max-volume": 150, // allow 0 – 150 %
"on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle",
"on-click-right": "pavucontrol",
// ——— appearance ———
"markup": "pango", // enable coloured markup
"format": "{icon} {volume}%",
"format-muted": " muted",
// choose the glyphs you like (Nerd Font / Font Awesome)
"format-icons": {
"default": "", // speaker
"muted": "", // muted speaker
"headphones": ""
}
},
"custom/separator": {
// emit a JSON object with field "text"
"exec": "echo '{\"text\":\"|\"}'",
// treat stdout as JSON
"return-type": "json",
// wrap the text in a colored Pango span
"format": "{text}",
"markup": "pango",
// refresh only hourly
"interval": 3600
},
"cpu": {
"interval": 1, // update every second
"markup": "pango",
"format": " {usage}%"
},
"memory": {
"interval": 2, // fast enough, still light
"markup": "pango",
"format": " {percentage}%"
},
"disk": {
"interval": 30, // disks change slowly
"path": "/",
"markup": "pango",
"format": " {percentage_used}%"
},
/* ─── CLOCK (add date) ──────────────────────────────────── */
"clock": {
"interval": 1,
"format": "{:%Y-%m-%d %H:%M:%S}",
"format-alt": "{:%Y-%m-%d %H:%M}"
},
/* ─── NETWORK ─────────────────────────────────────────────── */
"network": {
"interface": ["enp.*", "eth.*"], // wired NICs (regex—adjust if needed)
"interval": 3,
"markup": "pango",
"format-ethernet": " up",
"format-wifi": " {essid}",
// "format-linked": " link",
"format-unknown": " up",
"format-disconnected":" down",
"on-click": "nm-connection-editor"
},
}