From c4e9657e1b2653f50230643ce18daad341d021ab Mon Sep 17 00:00:00 2001 From: Alexander Weidinger Date: Sun, 25 Nov 2018 15:02:50 +0100 Subject: [PATCH] Make battery option optional --- Makefile | 2 +- dwmst.c | 55 ++++++++++++++++++++++++++++++------------------------- 2 files changed, 31 insertions(+), 26 deletions(-) diff --git a/Makefile b/Makefile index 459a8b3..7222648 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ all: - gcc -o dwmst -lX11 dwmst.c + gcc -o dwmst -lX11 -D OPTION_BATTERY=0 dwmst.c clean: rm -f dwmst diff --git a/dwmst.c b/dwmst.c index b2264b9..cc6ffbf 100644 --- a/dwmst.c +++ b/dwmst.c @@ -31,36 +31,41 @@ int main(void) { strftime(tbuffer, sizeof(tbuffer), "%a %b %d %H:%M", timeinfo); - /* battery status */ - f = fopen("/sys/class/power_supply/BAT0/capacity", "r"); - if (f == NULL) { - fprintf(stderr, "dwmst: cannot access battery.\n"); - } else { - fgets(bbuffer, 4, f); - strtok(bbuffer, "\n"); /* remove trailing white space */ - strcat(bbuffer, "%"); - } - fclose(f); + if (OPTION_BATTERY) { + /* battery status */ + f = fopen("/sys/class/power_supply/BAT0/capacity", "r"); + if (f == NULL) { + fprintf(stderr, "dwmst: cannot access battery.\n"); + } else { + fgets(bbuffer, 4, f); + strtok(bbuffer, "\n"); /* remove trailing white space */ + strcat(bbuffer, "%"); + fclose(f); + } - f = fopen("/sys/class/power_supply/BAT0/status", "r"); - if (f == NULL) { - fprintf(stderr, "dwmst: cannot access battery.\n"); - } else { - switch(getc(f)) { - case 'D': /* Discharging */ - strcat(bbuffer, "-"); - break; - case 'C': /* Charging */ - strcat(bbuffer, "+"); - break; - case 'F': /* Full */ - strcat(bbuffer, "="); + f = fopen("/sys/class/power_supply/BAT0/status", "r"); + if (f == NULL) { + fprintf(stderr, "dwmst: cannot access battery.\n"); + } else { + switch(getc(f)) { + case 'D': /* Discharging */ + strcat(bbuffer, "-"); + break; + case 'C': /* Charging */ + strcat(bbuffer, "+"); + break; + case 'F': /* Full */ + strcat(bbuffer, "="); + } + fclose(f); } } - fclose(f); /* build status */ - sprintf(status, "%s | %s", tbuffer, bbuffer); + if (OPTION_BATTERY) + sprintf(status, "%s | %s", tbuffer, bbuffer); + else + sprintf(status, "%s", tbuffer); /* store root window name */ XStoreName(display, DefaultRootWindow(display), status);