Skip to content

Sys Info

Jake Stanger edited this page Apr 6, 2024 · 6 revisions

Displays one or more labels containing system information.

Separating information across several labels allows for styling each one independently. Pango markup is supported.

Screenshot showing sys-info module with widgets for all of the types of formatting tokens

Configuration

Type: sys_info

Name Type Default Description
format string[] null Array of strings including formatting tokens. For available tokens see below.
interval integer or Map 5 Seconds between refreshing. Can be a single value for all data or a map of individual refresh values for different data types.
interval.memory integer 5 Seconds between refreshing memory data
interval.cpu integer 5 Seconds between refreshing cpu data
interval.temps integer 5 Seconds between refreshing temperature data
interval.disks integer 5 Seconds between refreshing disk data
interval.network integer 5 Seconds between refreshing network data
orientation 'horizontal' or 'vertical' (shorthand: 'h' or 'v') 'horizontal' Orientation of the labels.
direction 'horizontal' or 'vertical' (shorthand: 'h' or 'v') 'horizontal' How the labels are laid out (not the rotation of an individual label).
JSON
{
  "end": [
    {
      "format": [
        " {cpu_percent}% | {temp_c:k10temp-Tccd1}°C",
        " {memory_used} / {memory_total} GB ({memory_percent}%)",
        "| {swap_used} / {swap_total} GB ({swap_percent}%)",
        "󰋊 {disk_used:/} / {disk_total:/} GB ({disk_percent:/}%)",
        "󰓢 {net_down:enp39s0} / {net_up:enp39s0} Mbps",
        "󰖡 {load_average:1} | {load_average:5} | {load_average:15}",
        "󰥔 {uptime}"
      ],
      "interval": {
        "cpu": 1,
        "disks": 300,
        "memory": 30,
        "networks": 3,
        "temps": 5
      },
      "type": "sys_info"
    }
  ]
}
TOML
[[end]]
type = 'sys_info'
format = [
    ' {cpu_percent}% | {temp_c:k10temp-Tccd1}°C',
    ' {memory_used} / {memory_total} GB ({memory_percent}%)',
    '| {swap_used} / {swap_total} GB ({swap_percent}%)',
    '󰋊 {disk_used:/} / {disk_total:/} GB ({disk_percent:/}%)',
    '󰓢 {net_down:enp39s0} / {net_up:enp39s0} Mbps',
    '󰖡 {load_average:1} | {load_average:5} | {load_average:15}',
    '󰥔 {uptime}',
]

[end.interval]
cpu = 1
disks = 300
memory = 30
networks = 3
temps = 5

YAML
end:
- format:
  - ' {cpu_percent}% | {temp_c:k10temp-Tccd1}°C'
  - ' {memory_used} / {memory_total} GB ({memory_percent}%)'
  - '| {swap_used} / {swap_total} GB ({swap_percent}%)'
  - '󰋊 {disk_used:/} / {disk_total:/} GB ({disk_percent:/}%)'
  - '󰓢 {net_down:enp39s0} / {net_up:enp39s0} Mbps'
  - '󰖡 {load_average:1} | {load_average:5} | {load_average:15}'
  - '󰥔 {uptime}'
  interval:
    cpu: 1
    disks: 300
    memory: 30
    networks: 3
    temps: 5
  type: sys_info
Corn
{
  end = [
    {
      type = "sys_info"

      interval.memory = 30
      interval.cpu = 1
      interval.temps = 5
      interval.disks = 300
      interval.networks = 3

      format = [
        " {cpu_percent}% | {temp_c:k10temp-Tccd1}°C"
        " {memory_used} / {memory_total} GB ({memory_percent}%)"
        "| {swap_used} / {swap_total} GB ({swap_percent}%)"
        "󰋊 {disk_used:/} / {disk_total:/} GB ({disk_percent:/}%)"
        "󰓢 {net_down:enp39s0} / {net_up:enp39s0} Mbps"
        "󰖡 {load_average:1} | {load_average:5} | {load_average:15}"
        "󰥔 {uptime}"
      ]
    }
  ]
}

Formatting Tokens

The following tokens can be used in the format configuration option:

Token Description
CPU
{cpu_percent} Total CPU utilisation percentage
Memory
{memory_free} Memory free in GB.
{memory_used} Memory used in GB.
{memory_total} Memory total in GB.
{memory_percent} Memory utilisation percentage.
{swap_free} Swap free in GB.
{swap_used} Swap used in GB.
{swap_total} Swap total in GB.
{swap_percent} Swap utilisation percentage.
Temperature
{temp_c:[sensor]} Temperature in degrees C. Replace [sensor] with the sensor label.
{temp_f:[sensor]} Temperature in degrees F. Replace [sensor] with the sensor label.
Disk
{disk_free:[mount]} Disk free space in GB. Replace [mount] with the disk mountpoint.
{disk_used:[mount]} Disk used space in GB. Replace [mount] with the disk mountpoint.
{disk_total:[mount]} Disk total space in GB. Replace [mount] with the disk mountpoint.
{disk_percent:[mount]} Disk utilisation percentage. Replace [mount] with the disk mountpoint.
Network
{net_down:[adapter]} Average network download speed in Mbps. Replace [adapter] with the adapter name.
{net_up:[adapter]} Average network upload speed in Mbps. Replace [adapter] with the adapter name.
System
{load_average:1} 1-minute load average.
{load_average:5} 5-minute load average.
{load_average:15} 15-minute load average.
{uptime} System uptime formatted as HH:mm.

For Intel CPUs, you can typically use coretemp-Package-id-0 for the temperature sensor. For AMD, you can use k10temp-Tccd1.

Styling

Selector Description
.sysinfo Sysinfo widget box
.sysinfo .item Individual information label

For more information on styling, please see the styling guide.

Clone this wiki locally