static char *battery_perc(const char *bat);
static char *battery_power(const char *bat);
static char *battery_state(const char *bat);
+static char *cpu_freq(void);
static char *cpu_perc(void);
static char *datetime(const char *fmt);
static char *disk_free(const char *mnt);
fscanf(fp, "%i", &perc);
fclose(fp);
- return smprintf("%d%%", perc);
+ return smprintf("%d", perc);
}
static char *
}
}
+static char *
+cpu_freq(void)
+{
+ int freq;
+ FILE *fp;
+
+ fp = fopen("/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq", "r");
+ if (fp == NULL) {
+ warn("Failed to open file /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq");
+ return smprintf("%s", UNKNOWN_STR);
+ }
+ fscanf(fp, "%i", &freq);
+ fclose(fp);
+
+ return smprintf("%d", (freq + 500) / 1000);
+}
+
static char *
cpu_perc(void)
{
fclose(fp);
perc = 100 * ((b[0]+b[1]+b[2]) - (a[0]+a[1]+a[2])) / ((b[0]+b[1]+b[2]+b[3]) - (a[0]+a[1]+a[2]+a[3]));
- return smprintf("%d%%", perc);
+ return smprintf("%d", perc);
}
static char *
perc = 100 * (1.0f - ((float)fs.f_bfree / (float)fs.f_blocks));
- return smprintf("%d%%", perc);
+ return smprintf("%d", perc);
}
static char *
fscanf(fp, "Cached: %ld kB\n", &cached);
fclose(fp);
- return smprintf("%d%%", 100 * ((total - free) - (buffers + cached)) / total);
+ return smprintf("%d", 100 * ((total - free) - (buffers + cached)) / total);
}
static char *
}
sscanf(match, "SwapFree: %ld kB\n", &free);
- return smprintf("%d%%", 100 * (total - free - cached) / total);
+ return smprintf("%d", 100 * (total - free - cached) / total);
}
static char *
fscanf(fp, "%d", &temp);
fclose(fp);
- return smprintf("%d°C", temp / 1000);
+ return smprintf("%d", temp / 1000);
}
static char *
close(afd);
- return smprintf("%d%%", v & 0xff);
+ return smprintf("%d", v & 0xff);
}
static char *
datastart = (datastart+(strlen(iface)+1));
sscanf(datastart + 1, " %*d %d %*d %*d %*d %*d %*d %*d %*d %*d", &perc);
- return smprintf("%d%%", perc);
+ return smprintf("%d", perc);
}
static char *