Xinqi Bao's Git

Add native OpenBSD support for mute/volume
[slstatus.git] / config.def.h
index 5f1d4db..e06be66 100644 (file)
@@ -1,37 +1,67 @@
 /* See LICENSE file for copyright and license details. */
 
 /* See LICENSE file for copyright and license details. */
 
-/* alsa sound */
-static const char soundcard[] = "default";
-static const char channel[]   = "Master";
+/* interval between updates (in ms) */
+const unsigned int interval = 1000;
 
 
-/* cpu temperature */
-static const char tempfile[] = "/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input";
+/* text to show if no value can be retrieved */
+static const char unknown_str[] = "n/a";
 
 
-/* wifi */
-static const char wificard[] = "wlp3s0";
+/* maximum output string length */
+#define MAXLEN 2048
 
 
-/* battery */
-static const char batterynowfile[]  = "/sys/class/power_supply/BAT0/energy_now";
-static const char batteryfullfile[] = "/sys/class/power_supply/BAT0/energy_full_design";
-
-/* time */
-static const char timeformat[] = "%y-%m-%d %H:%M:%S";
-
-/* bar update interval in seconds (smallest value = 1) */
-static unsigned int update_interval = 1;
-
-/* mountpoint for diskusage */
-static const char mountpath[] = "/home";
-
-/* statusbar
-Possible arguments:
-- battery (battery percentage)
-- cpu_temperature (cpu temperature in degrees)
-- cpu usage (cpu usage in percent)
-- datetime (date and time)
-- diskusage (disk usage in percent)
-- ram_usage (ram usage in percent)
-- volume (alsa volume and mute status in percent)
-- wifi_signal (wifi signal in percent) */
-#define FORMATSTRING "wifi %4s | bat %4s | cpu %4s %3s | ram %3s | vol %4s | disk %4s | %3s"
-#define ARGUMENTS wifi_signal, battery, cpu_usage, cpu_temperature, ram_usage, volume, diskusage, datetime
+/*
+ * function            description                     argument (example)
+ *
+ * battery_perc        battery percentage              battery name (BAT0)
+ *                                                     NULL on OpenBSD/FreeBSD
+ * battery_state       battery charging state          battery name (BAT0)
+ *                                                     NULL on OpenBSD/FreeBSD
+ * battery_remaining   battery remaining HH:MM         battery name (BAT0)
+ *                                                     NULL on OpenBSD/FreeBSD
+ * 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        format string (c?n?)
+ *                                                     see keyboard_indicators.c
+ * keymap              layout (variant) of current     NULL
+ *                     keymap
+ * load_avg            load average                    NULL
+ * netspeed_rx         receive network speed           interface name (wlan0)
+ * netspeed_tx         transfer network speed          interface name (wlan0)
+ * 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
+ *                                                     thermal zone on FreeBSD
+ *                                                     (tz0, tz1, etc.)
+ * 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 */
+       { datetime, "%s",           "%F %T" },
+};