/* See LICENSE file for copyright and license details. */
-/* alsa sound */
-static const char channel[] = "Master";
-
-/* battery */
-static const char batterypath[] = "/sys/class/power_supply/";
-static const char batterynow[] = "energy_now";
-static const char batteryfull[] = "energy_full_design";
-
-/* bar update interval in seconds (smallest value = 1) */
-static unsigned int update_interval = 1;
+/* interval between updates (in ms) */
+static const unsigned int interval = 1000;
/* text to show if no value can be retrieved */
-static const char unknowntext[] = "n/a";
+static const char unknown_str[] = "n/a";
+
+/* maximum output string length */
+#define MAXLEN 2048
-/* statusbar
-- battery_perc (battery percentage) [argument: battery name]
-- cpu_perc (cpu usage in percent) [argument: NULL]
-- datetime (date and time) [argument: format]
-- disk_free (disk usage in percent) [argument: mountpoint]
-- disk_perc (disk usage in percent) [argument: mountpoint]
-- disk_total (disk usage in percent) [argument: mountpoint]
-- disk_used (disk usage in percent) [argument: mountpoint]
-- entropy (available entropy) [argument: NULL]
-- gid (gid of current user) [argument: NULL]
-- hostname [argument: NULL]
-- ip (ip address) [argument: interface]
-- load_avg (load average) [argument: NULL]
-- ram_free (ram usage in percent) [argument: NULL]
-- ram_perc (ram usage in percent) [argument: NULL]
-- ram_total (ram usage in percent) [argument: NULL]
-- ram_used (ram usage in percent) [argument: NULL]
-- run_command (run custom shell command) [argument: command]
-- temp (temperature in degrees) [argument: temperature file]
-- uid (uid of current user) [argument: NULL]
-- username (username of current user) [argument: NULL]
-- vol_perc (alsa volume and mute status in percent) [argument: soundcard]
-- wifi_perc (wifi signal in percent) [argument: wifi card interface name]
-- wifi_essid (wifi essid) [argument: wifi card interface name] */
+/*
+ * function description argument (example)
+ *
+ * battery_perc battery percentage battery name (BAT0)
+ * NULL on OpenBSD
+ * battery_state battery charging state battery name (BAT0)
+ * NULL on OpenBSD
+ * battery_remaining battery remaining HH:MM battery name (BAT0)
+ * NULL on OpenBSD
+ * cpu_perc cpu usage in percent NULL
+ * cpu_freq cpu frequency in MHz NULL
+ * datetime date and time format string (%F %T)
+ * disk_free free disk space in GB mountpoint path (/)
+ * disk_perc disk usage in percent mountpoint path (/)
+ * disk_total total disk space in GB mountpoint path (/")
+ * disk_used used disk space in GB mountpoint path (/)
+ * entropy available entropy NULL
+ * gid GID of current user NULL
+ * hostname hostname NULL
+ * ipv4 IPv4 address interface name (eth0)
+ * ipv6 IPv6 address interface name (eth0)
+ * kernel_release `uname -r` NULL
+ * keyboard_indicators caps/num lock indicators NULL
+ * load_avg load average format string
+ * (%.2f %.2f %.2f)
+ * num_files number of files in a directory path
+ * (/home/foo/Inbox/cur)
+ * ram_free free memory in GB NULL
+ * ram_perc memory usage in percent NULL
+ * ram_total total memory size in GB NULL
+ * ram_used used memory in GB NULL
+ * run_command custom shell command command (echo foo)
+ * swap_free free swap in GB NULL
+ * swap_perc swap usage in percent NULL
+ * swap_total total swap size in GB NULL
+ * swap_used used swap in GB NULL
+ * temp temperature in degree celsius sensor file
+ * (/sys/class/thermal/...)
+ * NULL on OpenBSD
+ * uid UID of current user NULL
+ * uptime system uptime NULL
+ * username username of current user NULL
+ * vol_perc OSS/ALSA volume in percent mixer file (/dev/mixer)
+ * wifi_perc WiFi signal in percent interface name (wlan0)
+ * wifi_essid WiFi ESSID interface name (wlan0)
+ */
static const struct arg args[] = {
- /* function format argument */
- { wifi_perc, "wifi %4s | ", "wlp3s0" },
- { battery_perc, "bat %4s | ", "BAT0" },
- { cpu_perc, "cpu %4s ", NULL },
- { temp, "%3s | ", "/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input" },
- { ram_perc, "ram %3s | ", NULL },
- { vol_perc, "vol %4s | ", "default" },
- { disk_perc, "ssd %3s | ", "/" },
- { datetime, "%s", "%y-%m-%d %H:%M:%S" },
+ /* function format argument */
+ { datetime, "%s", "%F %T" },
};