{
    // -------------------------------------------------------------------------
    // Global configuration
    // -------------------------------------------------------------------------

    "layer": "top",

    "position": "top",

    //"height": 30,

    "modules-left": [
        "custom/rofi",
        "custom/sp2",
        "custom/terminal",
        "custom/sp2",
        "custom/firefox",
        "custom/sp2"
    ],
    "modules-center": [
        "clock#date",
        "custom/sp1",
        "custom/weather"
    ],
    "modules-right": [
        "custom/media",
        "custom/storage",
        "cpu",
        "memory",
        "idle_inhibitor",
        "pulseaudio",
        "custom/power",
        "tray"
    ],


    // -------------------------------------------------------------------------
    // Modules
    // -------------------------------------------------------------------------

    "custom/sp1": {
        "format": " | ",
        "tooltip": false
    },
    "custom/sp2": {
        "format": " |",
        "tooltip": false
    },


    "custom/rofi": {
        "format": " Menu",
        "on-click-right": "nwg-drawer",
        "on-click": "wofi -show run",
        "on-click-middle": "pkill -9 wofi"
    },

    "custom/terminal": {
        "format": "",
        "on-click": "alacritty",
        "on-click-middle": "pkill -9 alacritty"
    },

    "custom/firefox": {
        "format": "",
        "on-click": "cachy-browser",
    },

    "clock#1": {
        "format": " {:%a}",
        "tooltip": false,
        "on-click": "gsimplecal"
    },
    "clock#2": {
        "format": " {:%d-%h-%Y}",
        "tooltip": false,
        "on-click": "gsimplecal"
    },
    "clock#3": {
        "format": " {:%H:%M:%S %p}",
        "tooltip": false,
        "on-click": "gsimplecal"
    },

    "temperature": {
        // "thermal-zone": 1,
        "interval": 4,
        "hwmon-path": "/sys/class/hwmon/hwmon3/temp1_input",
        "critical-threshold": 80,
        // "format-critical": " {temperatureC}°C",
        "format-critical": "  {temperatureC}°C",
        "format": "{icon}  {temperatureC}°C",
        "format-icons": ["", "", ""],
        "max-length": 7,
        "min-length": 7,
        "on-click": "xsensors"
    },

    "memory": {
        "interval": 30,
        "format": " {used:0.2f} / {total:0.0f} GB",
        "on-click": "alacritty -e btop"
    },

    "sway/mode": {
        "format": "<span style=\"italic\">{}</span>"
    },

    "sway/window": {
        "format": "{}",
        "max-length": 50,
        "tooltip": false
    },

    "battery": {
        "interval": 2,
        "states": {
            "good": 95,
            "warning": 30,
            "critical": 15
        },
        "format": "{icon} {capacity}%",
        "format-charging": " {capacity}%",
        "format-plugged": " {capacity}%",
        "format-icons": [
            "",
            "",
            "",
            "",
            ""
        ]
    },
    "network": {
        "format-wifi": " {essid} ({signalStrength}%)",
        "format-ethernet": "{ifname}: {ipaddr}/{cidr} ",
        "format-linked": "{ifname} (No IP) ",
        "format": "",
        "format-disconnected": "",
        "format-alt": "{ifname}: {ipaddr}/{cidr}",
        "on-click": "wl-copy $(ip address show up scope global | grep inet | head -n1 | cut -d/ -f 1 | tr -d [:space:] | cut -c5-)",
        "on-click-right": "wl-copy $(ip address show up scope global | grep inet6 | head -n1 | cut -d/ -f 1 | tr -d [:space:] | cut -c6-)",
        "tooltip-format": " {bandwidthUpBits}  {bandwidthDownBits}\n{ifname}\n{ipaddr}/{cidr}\n",
        "tooltip-format-wifi": " {essid} {frequency}MHz\nStrength: {signaldBm}dBm ({signalStrength}%)\nIP: {ipaddr}/{cidr}\n {bandwidthUpBits}  {bandwidthDownBits}",
        "interval": 10
    },
    "custom/storage": {
        "format": " {}",
        "format-alt": "{percentage}% ",
        "format-alt-click": "click-right",
        "return-type": "json",
        "interval": 60,
        "exec": "~/.config/waybar/modules/storage.sh"
    },
    "backlight": {
        "device": "intel_backlight",
        "format": "{icon} {percent}%",
        "format-alt": "{percent}% {icon}",
        "format-alt-click": "click-right",
        //"format-icons": ["", ""],
        "format-icons": ["", ""],
        "on-scroll-down": "brightnessctl s 5%-",
        "on-scroll-up": "brightnessctl s +5%"
    },
    "idle_inhibitor": {
        "format": "{icon}",
        "format-icons": {
            "activated": "",
            "deactivated": ""
        },
        "tooltip": "true"
    },
    "custom/weather": {
        "format": "{}",
        "format-alt": "{alt}: {}",
        "format-alt-click": "click-right",
        "interval": 3600,
        "exec": "curl 'https://wttr.in/?format=1'",
        //"return-type": "json",
        //"exec": "~/.config/waybar/modules/weather.sh",
        "exec-if": "ping wttr.in -c1"
    },
    "custom/pacman": {
        "format": "<big>􏆲</big>  {}",
        "interval": 3600,                     // every hour
        "exec": "checkupdates | wc -l",       // # of updates
        "exec-if": "exit 0",                  // always run; consider advanced run conditions
        "on-click": "alacritty -e 'paru'; pkill -SIGRTMIN+8 waybar", // update system
        "signal": 8,
        "max-length": 5,
        "min-length": 3
    },

    "custom/media": {
        "format": "{icon} {}",
        "return-type": "json",
        "max-length": 40,
        "format-icons": {
            "spotify": "",
            "default": "🎜"
        },
        "escape": true,
        "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
        // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
    },

    "custom/power": {
        "format": "",
        "on-click": "wlogout"
    },

    "clock": {
        "format": "  {:%H:%M   %e %b}",
        "tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
        "today-format": "<b>{}</b>"
    },

    "clock#date": {
        "format": "❤️  {:%H:%M   %e %b}", // Icon: calendar-alt
        "tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
        "today-format": "<b>{}</b>"
    },

    "cpu": {
        "interval": 1,
        //"format": " {}%", // Icon: microchip
        "format": "  {max_frequency}GHz <span color=\"darkgray\">| {usage}%</span>",
        "max-length": 13,
        "min-length": 13
    },

    "custom/title": {
        "format": "{}",
        "interval": 0,
        "return-type": "json",
        //"max-length": 35,
        "tooltip": false
    },

    "custom/title#name": {
        "format": "{}",
        "interval": 0,
        "return-type": "json",

        "max-length": 35,
        "exec": "$HOME/.scripts/title"
    },

    /*"custom/keyboard": {
        "format": " {}",
        "interval": 1,
        "exec": "$HOME/.config/waybar/get_kbdlayout.sh"
    },*/

    "sway/workspaces": {
        "disable-scroll": true,
        "all-outputs": true,
        "format": "{icon}",
        "format-icons": {
            "1": "<span color=\"#D8DEE9\"></span>",
            "2": "<span color=\"#88C0D0\"></span>",
            "3": "<span color=\"#A3BE8C\"></span>",
            "4": "<span color=\"#D8DEE9\"></span>",
            "urgent": "",
            "focused": "",
            "default": ""
        }
    },

    "pulseaudio": {
        "scroll-step": 3, // %, can be a float
        "format": "{icon} {volume}% {format_source}",
        "format-bluetooth": "{volume}% {icon} {format_source}",
        "format-bluetooth-muted": " {icon} {format_source}",
        "format-muted": " {format_source}",
        //"format-source": "{volume}% ",
        //"format-source-muted": "",
        "format-source": "",
        "format-source-muted": "",
        "format-icons": {
            "headphone": "",
            "hands-free": "",
            "headset": "",
            "phone": "",
            "portable": "",
            "car": "",
            "default": ["", "", ""]
        },
        "on-click": "pavucontrol",
        "on-click-right": "pactl set-source-mute @DEFAULT_SOURCE@ toggle"
    },

    "tray": {
        "icon-size": 14
    }
}
