Introduction
Introduction Statistics Contact Development Disclaimer Help
tauxstats: replace /proc ACPI calls with /sys ones (#245) - plan9port - [fork] …
git clone git://src.adamsgaard.dk/plan9port
Log
Files
Refs
README
LICENSE
---
commit 7d827b5cca185b411be3ac9b71834958f4737bdf
parent e995a0c101863688d5f14649ae3de45a7c43789c
Author: Zach Scott <[email protected]>
Date: Thu, 19 Sep 2019 17:08:36 +0000
auxstats: replace /proc ACPI calls with /sys ones (#245)
According to <https://askubuntu.com/a/309146>, use of `/proc/acpi` to
get battery usage is deprecated. This commit replaces the two files from
tthis API with the single file `/sys/class/power_supply/BAT0/capacity`,
simultaneously removing the need to calculate battery percentage.
Diffstat:
M src/cmd/auxstats/Linux.c | 30 ++++++++----------------------
1 file changed, 8 insertions(+), 22 deletions(-)
---
diff --git a/src/cmd/auxstats/Linux.c b/src/cmd/auxstats/Linux.c
t@@ -26,36 +26,22 @@ void (*statfn[])(int) =
void
xapm(int first)
{
- static int fd = -1, fdb = -1;
- int i, last = -1, curr = -1;
+ static int fd = -1;
+ int curr = -1;
if(first){
- fd = open("/proc/acpi/battery/BAT0/info", OREAD);
- fdb = open("/proc/acpi/battery/BAT0/state", OREAD);
+ fd = open("/sys/class/power_supply/BAT0/capacity", OREAD);
return;
}
- if(fd == -1 || fdb == -1)
+ if(fd == -1)
return;
readfile(fd);
- for(i=0; i<nline; i++){
- tokens(i);
- if(ntok < 3)
- continue;
- if(strcmp(tok[0], "last") == 0 && strcmp(tok[1], "full") == 0)
- last = atoi(tok[3]);
- }
- readfile(fdb);
- for(i = 0; i < nline; i++) {
- tokens(i);
- if(ntok < 3)
- continue;
- if(strcmp(tok[0], "remaining") == 0 && strcmp(tok[1], "capacit…
- curr = atoi(tok[2]);
- }
+ tokens(0);
+ curr = atoi(tok[0]);
- if(curr != -1 && last != -1)
- Bprint(&bout, "battery =%d 100\n", (int)(((float)curr/(float)l…
+ if(curr != -1)
+ Bprint(&bout, "battery =%d 100\n", curr);
}
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.