示例#1
0
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;
}
示例#2
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;
}