custos

Quis custodiet ipsos custodes?

— Decimus Junius Juvenalis

System monitoring utility.

Several modules exist to monitor different aspects of the system. A simple Lua file is used to configure the update interval and the presentation, which can be either simple text or curses windows.

Modules include:


Example:

load                            battery
  1.54 1.35 1.13                  [=========|------]  100%|57.66% 0
date                              ▄▄▄▄▄▄▄▄▃▃▃▃▃▃▃▃▅▆▇█████        Full
  P   2024-06-18T01:53:21       backlight
  E   2024-06-18T04:53:21         [================]  100% 0
  BR  2024-06-18T05:53:21       fs
  UTC 2024-06-18T08:53:21         [=============---] 81.6%  51G/ 62G /
  CE  2024-06-18T10:53:21         [=============---] 83.0% 135G/162G /home
                                  [----------------]  0.5%  36M/7.8G /tmp
                                thermal
                                  [=======---------] 46.0°C Package id 0
                                  [=======---------] 45.0°C Core 0
                                  [=======---------] 46.0°C Core 1
                                  [=======---------] 45.0°C Core 2
                                  [=======---------] 46.0°C Core 3

Configuration file:

modules { "load", "backlight", "battery", "fs", "thermal", "date" }

windows {
    {modules = {"load", "date"}},
    {modules = {"battery", "backlight", "fs", "thermal"}, x = 32},
}

timezones {
    {"P  ", "US/Pacific"},
    {"E  ", "US/Eastern"},
    {"BR ", "America/Sao_Paulo"},
    {"UTC", "UTC"},
    {"CE ", "Europe/Prague"},
}

backlights {
    {"0", "/sys/class/backlight/intel_backlight/brightness"},
}

batteries {
    {"0", "/sys/class/power_supply/BAT0"},
}

thermal {
    glob "/sys/devices/platform/coretemp.0/hwmon/hwmon*/temp*_input"
}

file_systems {
    "/",
    "/home",
    "/tmp",
}