{
"layer": "top",
"position": "top",
"height": 33,
"width": 1350,
"margin": "3, 0, 2, 0",
// Choose the order of the modules
"modules-left": ["custom/wmname","sway/workspaces","hyprland/workspaces","sway/mode","cpu","custom/separator","memory","custom/separator","network", "custom/recorder", "custom/audiorec"],
"modules-center": ["tray","mpd"],
"modules-right": [
"idle_inhibitor",
"custom/separator",
"backlight",
"custom/separator",
"battery",
"custom/separator",
"pulseaudio",
"custom/separator",
"clock"],
// Modules configuration
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": true,
"format": "{icon}",
"format-icons": {
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"urgent": "",
"focused": "",
"default": ""
}
},
"custom/wmname": {
"format": "",
"tooltip": false,
},
"hyprland/workspaces": {
"format": "{icon}",
"format-icons": {
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"urgent": "",
"focused": "",
"default": ""
}
},
"custom/language": {
"exec": "swaymsg --type get_inputs | grep \"xkb_active_layout_name\" | sed -u '1!d; s/^.*xkb_active_layout_name\": \"//; s/ (US)//; s/\",//' && swaymsg --type subscribe --monitor '[\"input\"]' | sed -u 's/^.*xkb_active_layout_name\": \"//; s/\",.*$//; s/ (US)//'"
},
"custom/separator": {
"format": "|",
"interval": "once",
"tooltip": false
},
"sway/mode": {
"format": "{}"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
"icon-size": 20,
"spacing": 6
},
"clock": {
"interval": 1,
"locale": "C",
"format": " {:%I:%M %p}",
"format-alt": " {:%a,%b %d}" // Icon: calendar-alt
},
"cpu": {
"format": " {usage}%",
"tooltip": false,
"on-click": "kitty -e 'htop'"
},
"memory": {
"interval": 30,
"format": " {used:0.2f}GB",
"max-length": 10,
"tooltip": false,
"warning": 70,
"critical": 90
},
"temperature": {
// "thermal-zone": 2,
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
"critical-threshold": 80,
// "format-critical": "{temperatureC}°C {icon}",
"format": "{icon} {temperatureC}°C",
"format-icons": ["", "", ""]
},
"backlight": {
// "device": "acpi_video1",
"format": "{icon} {percent}%",
"format-icons": ["💡", "💡"],
"on-scroll-down": "brightnessctl -c backlight set 1%-",
"on-scroll-up": "brightnessctl -c backlight set +1%"
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-charging": " {capacity}%",
"format-plugged": " {capacity}%",
"format-alt": "{icon} {time}",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
// "format-icons": ["", "", "", "", ""]
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": " ({signalStrength}%)",
"format-ethernet": " {ifname}: {ipaddr}/{cidr}",
"format-linked": " {ifname} (No IP)",
"format-disconnected": "✈ Disconnected",
"format-alt": "{ifname}: {ipaddr}/{cidr}",
"tooltip-format": "{essid}: {ipaddr}"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{icon} {volume}% {format_source}",
"format-bluetooth": "{icon} {volume}% {format_source}",
"format-bluetooth-muted": " {format_source}",
"format-muted": " {format_source}",
"format-source": " {volume}%",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "🎧",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
},
"mpd": {
"format": "{stateIcon} {artist} - {title}",
"format-disconnected": "🎶",
"format-stopped": "♪",
"interval": 10,
"consume-icons": {
"on": " " // Icon shows only when "consume" is on
},
"random-icons": {
"off": " ", // Icon grayed out when "random" is off
"on": " "
},
"repeat-icons": {
"on": " "
},
"single-icons": {
"on": "1 "
},
"state-icons": {
"paused": "",
"playing": ""
},
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)",
"max-length": 45
},
"custom/recorder": {
"format": " Rec",
"format-disabled": " Off-air", //An empty format will hide the module.
"return-type": "json",
"interval": 1,
"exec": "echo '{\"class\": \"recording\"}'",
"exec-if": "pgrep wf-recorder",
},
"custom/audiorec": {
"format": "♬ Rec",
"format-disabled": "♬ Off-air", //An empty format will hide the module.
"return-type": "json",
"interval": 1,
"exec": "echo '{\"class\": \"audio recording\"}'",
"exec-if": "pgrep ffmpeg",
},
}