9628b17e72877fedba8158c0fa0fb6d042229698
[sysstatus.git] / sysstatus.c
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include "config.h"
4 #include "statuses/battery.h"
5 #include "statuses/cpuusage.h"
6 #include "statuses/datetime.h"
7 #include "statuses/fan.h"
8 #include "statuses/memusage.h"
9 #include "statuses/netif.h"
10 #include "statuses/volume_alsa.h"
11 #include "statuses/temp.h"
12 #include "statuses/uptime.h"
13
14
15 void updatestatus()
16 {
17   //status_uptime();
18
19   status_cpuusage();
20
21   status_battery("BAT0");
22   status_battery("BAT1");
23
24   status_memusage();
25
26   status_netif("eth0");
27   //status_netif("eth1");
28   //status_netif("eth2");
29   status_netif("wlan0");
30   //status_netif("wlan1");
31   status_netif("wlan2");
32   //status_netif("usb0");
33   status_netif("ppp0");
34
35   //status_temp("GPU: ", "/sys/class/hwmon/hwmon0/device/temp4_input");
36   //status_temp("CPU: ", "/sys/class/hwmon/hwmon0/device/temp2_input");
37   status_temp("CPU: ", "/sys/devices/platform/coretemp.0/temp1_input");
38
39   status_fan("Fan: ", "/sys/devices/platform/thinkpad_hwmon/fan1_input");
40
41   status_volume_alsa("default", "Master", 0);
42
43   status_datetime();
44
45   fputs("\n", stdout);
46   fflush(stdout);
47 }
48
49 int main()
50 {
51   struct timeval tv;
52
53   for(;;)
54   {
55     updatestatus();
56
57     tv.tv_sec = UPDATE_SECS;
58     tv.tv_usec = 0;
59
60     select(0, NULL, NULL, NULL, &tv);
61   }
62
63   return 0;
64 }