/* See LICENSE file for copyright and license details. */
-/* alsa sound */
-static const char channel[] = "Master";
+/* interval between updates (in ms) */
+static const int interval = 1000;
-/* battery */
-static const char batterypath[] = "/sys/class/power_supply/";
-static const char batterynow[] = "energy_now";
-static const char batteryfull[] = "energy_full_design";
+/* text to show if no value can be retrieved */
+static const char unknown_str[] = "n/a";
-/* bar update interval in seconds (smallest value = 1) */
-static unsigned int update_interval = 1;
+/* maximum output string length */
+#define MAXLEN 2048
-/* statusbar
-- get_battery (battery percentage) [argument: battery name]
-- cpu_temperature (cpu temperature in degrees) [argument: temperature file]
-- cpu usage (cpu usage in percent)
-- datetime (date and time) [argument: format]
-- diskusage (disk usage in percent) [argument: mountpoint]
-- ram_usage (ram usage in percent)
-- volume (alsa volume and mute status in percent) [argument: soundcard]
-- wifi_signal (wifi signal in percent) [argument: wifi card interface name] */
+/*
+ * function description argument
+ *
+ * battery_perc battery percentage battery name
+ * battery_state battery charging state battery name
+ * cpu_perc cpu usage in percent NULL
+ * cpu_iowait cpu iowait in percent NULL
+ * cpu_freq cpu frequency in MHz NULL
+ * datetime date and time format string
+ * 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
+ * ipv6 IPv6 address interface name
+ * kernel_release `uname -r` NULL
+ * keyboard_indicators caps/num lock indicators NULL
+ * load_avg load average format string
+ * num_files number of files in a directory path
+ * 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
+ * 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
+ * uid UID of current user NULL
+ * uptime system uptime NULL
+ * username username of current user NULL
+ * vol_perc OSS/ALSA volume in percent "/dev/mixer"
+ * wifi_perc WiFi signal in percent interface name
+ * wifi_essid WiFi ESSID interface name
+ */
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" },
};