From 72e653809f2c372e3f6583edc431fb93b69506f6 Mon Sep 17 00:00:00 2001 From: JozanLeClerc Date: Mon, 18 Apr 2022 18:32:12 +0200 Subject: Fuck PHP now --- projects/lowbat.html | 398 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 398 insertions(+) create mode 100644 projects/lowbat.html (limited to 'projects/lowbat.html') diff --git a/projects/lowbat.html b/projects/lowbat.html new file mode 100644 index 0000000..5ec85e7 --- /dev/null +++ b/projects/lowbat.html @@ -0,0 +1,398 @@ + + + + + + + Joe's own website - project: lowbat + + + + +
+
+

Joe's dev blog - project: lowbat

+
+ +
+

lowbat - lightweight low battery notifier

+ + +
+

1 Why lowbat?

+
+

+ I've been using minimalist OS installations for work, personnal computing + and playing video games for a while now. I used Arch Linux, I still use + Gentoo Linux - which is by far my favorite Linux distribution - as a desktop + OS, and now I am using FreeBSD on my workstation. +

+ +

+ Those operating systems and distributions basically come with a kernel, + coreutils, a shell and that's pretty much it. Everything else has to be + installed manually. I love this philosophy, the simplicity behind it and the + fact that you know exactly what's on your system at any moment. +

+ +

+ As window managers, I used dwm for a while, and I am now using bspwm. They + are ultra-fast, very lightweight and do not bring extra bloatware to my systems. + I do not use a status bar as well, I like my applications to use the full screen + space available. +

+ +

+ A big problem for me with this setup for me was that they do not come with some + kind of warning or notification system, like fancier desktop environments would, + when my laptop battery is low. That also was before I started using Emacs, + discovering the battery level indicator in the modeline. Ultimatly the + frustration was too important when the computer kept shutting down in + the middle of important work too many time. Then I decided to create lowbat + to cure this issue. +

+
+
+ +
+

2 History of lowbat

+
+

+ It started as a very short dash shell (get dash here) script that was + working fine but I wanted to experiment a little bit with this. It turned into + a C++ program, which is still the case for the GNU/Linux version. + Switching to FreeBSD, I exerimented again by turning it into an + x64 assembly program, following the Intel syntax. In that way lowbat is + even more lightweight and consumes less battery power. + These days, I am rewriting it in the AT&T syntax. +

+
+
+ +
+

3 How it works

+
+
+
+

3.1 libnotify lowbat

+
+

+ The principle of lowbat is rather simple. When it's running in the + background, it checks every 4 minutes whether your battery is above 15%. + If that is the case, it sleeps for another 4 minutes. When your battery runs + bellow 15%, lowbat checks your battery level every 20 seconds as well as + sending you a notification using libnotify. You can display live + notifications on your desktop using dunst for example, as well as many + other I'm sure. +

+ + +
+

lowbat-01.jpg +

+

Figure 1: A notification generated by lowbat, displayed by dunst

+
+
+
+ +
+

3.2 espeak lowbat

+
+

+ lowbat also has an option to send a custom voice message to the use + using espeak. Very handy if you are not in front of your computer or + if you want to bring joy to this dramatic event. +

+
+
+ +
+

3.3 unknown lowbat

+
+

+ Sadly, I wasn't able to test lowbat on machines with more that one + battery. My call is that it will only warn you for the first battery, + but I can't be sure. Try it and tell me! +

+
+
+
+
+

4 Links to lowbat

+ +
+
+ +
+ + -- cgit v1.2.3