all repos — slstatus @ 2d1bbf0d35f096803a96afbc8ae89a057e646d9f

my build of slstatus (tools.suckless.org/slstatus/)

simplified battery_perc() a lot and removed useless options from config.def.h
Aaron Marcher info@nulltime.net
Tue, 13 Sep 2016 20:54:45 +0200
commit

2d1bbf0d35f096803a96afbc8ae89a057e646d9f

parent

60df4f0f05e261d2787b9512cea262248ebaf166

2 files changed, 16 insertions(+), 19 deletions(-)

jump to
M config.def.hconfig.def.h

@@ -3,11 +3,6 @@

/* alsa sound */ #define ALSA_CHANNEL "Master" -/* battery */ -#define BATTERY_PATH "/sys/class/power_supply/" -#define BATTERY_NOW "energy_now" -#define BATTERY_FULL "energy_full_design" - /* how often to update the statusbar (min value == 1) */ #define UPDATE_INTERVAL 1
M slstatus.cslstatus.c

@@ -98,34 +98,36 @@

static char * battery_perc(const char *battery) { - int now, full, perc; + int now, full; FILE *fp; - ccat(4, BATTERY_PATH, battery, "/", BATTERY_NOW); - + ccat(3, "/sys/class/power_supply/", battery, "/energy_now"); fp = fopen(concat, "r"); if (fp == NULL) { - warn("Error opening battery file: %s", concat); - return smprintf(UNKNOWN_STR); + ccat(4, "/sys/class/power_supply/", battery, "/charge_now"); + fp = fopen(concat, "r"); + if (fp == NULL) { + warn("Error opening battery file: %s", concat); + return smprintf(UNKNOWN_STR); + } } - fscanf(fp, "%i", &now); fclose(fp); - ccat(4, BATTERY_PATH, battery, "/", BATTERY_FULL); - + ccat(3, "/sys/class/power_supply/", battery, "/energy_full"); fp = fopen(concat, "r"); if (fp == NULL) { - warn("Error opening battery file: %s", concat); - return smprintf(UNKNOWN_STR); + ccat(4, "/sys/class/power_supply/", battery, "/charge_full"); + fp = fopen(concat, "r"); + if (fp == NULL) { + warn("Error opening battery file: %s", concat); + return smprintf(UNKNOWN_STR); + } } - fscanf(fp, "%i", &full); fclose(fp); - perc = now / (full / 100); - - return smprintf("%d%%", perc); + return smprintf("%d%%", now / (full / 100)); } static char *