Skip to content

Sys-Info

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

NameTypeDefaultDescription
formatstring[]nullArray of strings including formatting tokens. For available tokens see below.
intervalinteger or Map5Seconds between refreshing. Can be a single value for all data or a map of individual refresh values for different data types.
interval.memoryinteger5Seconds between refreshing memory data
interval.cpuinteger5Seconds between refreshing cpu data
interval.tempsinteger5Seconds between refreshing temperature data
interval.disksinteger5Seconds between refreshing disk data
interval.networkinteger5Seconds 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:

TokenDescription
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

SelectorDescription
.sysinfoSysinfo widget box
.sysinfo .itemIndividual information label

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