waybar-temperature(5)

okay bestie, sit down, hydrate, and let me tell you about waybar-temperature(5) β€” it's a whole module from the File Formats Manual and it's genuinely so useful. let's get into it πŸ’…


πŸŽ€ NAME πŸŽ€

waybar β€” the temperature module. that's it, that's the girl. 🌑️✨


🌈 DESCRIPTION 🌈

the temperature module displays the current temperature from a thermal zone. she reads your machine's temp and puts it on your bar. lowkey essential, no cap. πŸ”₯


πŸ’– CONFIGURATION πŸ’–

you reach this module by the name temperature. here's every knob she has:

  • thermal-zone β€” typeof: integer. the thermal zone, as in /sys/class/thermal/. that's the directory she pulls from. 🌑️
  • hwmon-path β€” typeof: string. the temperature path you wanna use, e.g. /sys/class/hwmon/hwmon2/temp1_input, instead of one of the ones sitting in /sys/class/thermal/.
    • this can also be an array of strings. in that case, waybar checks each item in the array and uses the first valid one. obsessed, honestly β€” it's perfect if you wanna share the same configuration file between different machines that have different hardware configurations. πŸ–₯οΈπŸ’ž
  • hwmon-path-abs β€” typeof: string. the path of the hwmon-directory of the device, e.g. /sys/devices/pci0000:00/0000:00:18.3/hwmon. (note that the subdirectory hwmon/hwmon#, where # is a number, is not part of the path!) this one has to be used together with input-filename, they're a package deal bestie 🫢
    • this can also be an array of strings, and for that, it just works like hwmon-path.
  • input-filename β€” typeof: string. the temperature filename of your hwmon-path-abs, e.g. temp1_input.
  • warning-threshold β€” typeof: integer. the threshold before it is considered warning (Celsius).
  • critical-threshold β€” typeof: integer. the threshold before it is considered critical (Celsius).
  • interval β€” typeof: integer or float, default: 10. the interval in which the information gets polled.
  • format-warning β€” typeof: string. the format to use when temperature is considered warning.
  • format-critical β€” typeof: string. the format to use when temperature is considered critical.
  • format β€” typeof: string, default: {temperatureC}Β°C. the format (Celsius/Fahrenheit/Kelvin) in which the temperature should be displayed.
  • format-icons β€” typeof: array. based on the current temperature (Celsius) and critical-threshold if available, the corresponding icon gets selected. the order is low to high. ⬆️
  • tooltip-format β€” typeof: string, default: {temperatureC}Β°C. the format for the tooltip.
  • rotate β€” typeof: integer. positive value to rotate the text label (in 90 degree increments). spin her around πŸŒ€
  • max-length β€” typeof: integer. the maximum length in characters the module should display.
  • min-length β€” typeof: integer. the minimum length in characters the module should accept.
  • align β€” typeof: float. the alignment of the label within the module, where 0 is left-aligned and 1 is right-aligned. if the module is rotated, it will follow the flow of the text.
  • justify β€” typeof: string. the alignment of the text within the module's label, allowing options 'left', 'right', or 'center' to define the positioning.
  • on-click β€” typeof: string. command to execute when you click on the module.
  • on-click-middle β€” typeof: string. command to execute when middle-clicked on the module using mousewheel.
  • on-click-right β€” typeof: string. command to execute when you right-click on the module.
  • on-update β€” typeof: string. command to execute when the module is updated.
  • on-scroll-up β€” typeof: string. command to execute when scrolling up on the module.
  • on-scroll-down β€” typeof: string. command to execute when scrolling down on the module.
  • smooth-scrolling-threshold β€” typeof: double. threshold to be used when scrolling.
  • tooltip β€” typeof: bool, default: true. option to disable tooltip on hover.
  • menu β€” typeof: string. action that popups the menu.
  • menu-file β€” typeof: string. location of the menu descriptor file. there need to be an element of type GtkMenu with id menu.
  • menu-actions β€” typeof: array. the actions corresponding to the buttons of the menu.
  • expand β€” typeof: bool, default: false. enables this module to consume all left over space dynamically.

πŸ”₯ FORMAT REPLACEMENTS πŸ”₯

these are the lil tokens you drop into your formats, bestie:

  • {temperatureC}: temperature in Celsius.
  • {temperatureF}: temperature in Fahrenheit.
  • {temperatureK}: temperature in Kelvin.

✨ EXAMPLES ✨

here's the vibe, copy-paste ready, character for character:

    "temperature": {
        // "thermal-zone": 2,
        // "hwmon-path": ["/sys/class/hwmon/hwmon2/temp1_input", "/sys/class/thermal/thermal_zone0/temp"],
        // "critical-threshold": 80,
        // "format-critical": "{temperatureC}Β°C ",
        "format": "{temperatureC}Β°C "
   }

πŸ‘‘ STYLE πŸ‘‘

these are the CSS selectors she answers to, periodt:

  • #temperature
  • #temperature.warning
  • #temperature.critical

and that's the whole page, my love πŸ¦‹ go forth and keep an eye on your temps, she can't hurt you if you're watching her. this one came from the File Formats Manual, dated 2026-02-08 β€” waybar-temperature(5), mwah, iconic, no notes πŸ’œβœ¨

πŸ“¦ where this page comes from