int main(void) { char *status; char *newmails; if (!(dpy = XOpenDisplay(NULL))) { fprintf(stderr, "dwmstatus: cannot open display.\n"); return 1; } for (;;sleep(60)) { newmails = get_nmail("/home/xavier/Maildir/laposte/new", "Mails:"); status = smprintf("%s",newmails); setstatus(status); free(newmails); free(status); } XCloseDisplay(dpy); return 0; }
int main(void) { char *status = NULL; char *avgs = NULL; char *tmprs = NULL; char *bat = NULL; char *netstats = NULL; char *mail_laposte = NULL; char *mail_fac = NULL; char *mail_lavabit = NULL; char *mail_tl = NULL; char *rootfs = NULL; char *homefs = NULL; time_t count5min = 0; time_t count60 = 0; if (!(dpy = XOpenDisplay(NULL))) { fprintf(stderr, "dwmstatus: cannot open display.\n"); return 1; } for (;;sleep(1)) { /* checks every minutes */ if ( runevery(&count60, 60) ) { free(tmprs); free(bat); free(rootfs); free(homefs); tmprs = mktimes("%d/%m/%y %H:%M", tzparis); bat = getbattery("/sys/class/power_supply/BAT0/"); homefs = get_freespace("/home"); rootfs = get_freespace("/"); } /* checks mail every 5 minutes */ if (runevery(&count5min, 300) ) { free(mail_laposte); free(mail_fac); free(mail_lavabit); free(mail_tl); mail_laposte = get_nmail("/home/xavier/Maildir/fac/new", " Fac:"); mail_fac = get_nmail("/home/xavier/Maildir/lavabit/new", " Lavabit:"); mail_lavabit = get_nmail("/home/xavier/Maildir/toilelibre/new", " TL:"); mail_tl = get_nmail("/home/xavier/Maildir/laposte/new", " Laposte:"); } /* checks every second */ avgs = loadavg(); netstats = get_netusage(); status = smprintf("%s%s%s%s | %s | /:%s% /home:%s% | B:%s% | %s | %s", mail_tl, mail_fac, mail_lavabit, mail_laposte, netstats, rootfs, homefs, bat, avgs, tmprs); setstatus(status); free(avgs); free(netstats); free(status); } XCloseDisplay(dpy); return 0; }