The widget reads /proc/acpi/battery/*/{info,state} and doesn't require
an external utility like 'acpi' or 'acpitool'. It returns state,
charge and remaining time information, just like the old bat (now
batat) widget. Using /sys/class/power_supply we would need to open
much more file descriptors so we use /proc for now.
It's time for a standalone battery widget that reads
/proc/acpi/battery/*/{info,state} alone. However the old battery
widget that uses 'acpitool' will not be deleted, let it serve as an
alternative widget as a convenience. Some might also prefer it over
reading multiple files in /proc
The widget uses 'wget' to grab the information. The Lua socket library
would be nicer, of course, but let's not introduce external libraries
at this point. Wget will write to stdout with a timeout of 5s. This
has the potential to block everything else in case of problems... But
let's not introduce temporary files at this point. Besides having to
handle files, operations while running on battery power are to be
avoided.
Vicious is a modular widget library for 'awesome' window manager,
derived from the 'Wicked' widget library.
Summary of changes:
* Original wicked code modularized
* Widgets ported from Wicked:
- CPU, MEM, FS, NET, Date, Uptime, MPD
* CPU widget rewritten, uses pattern matching
* MEM widget rewritten, uses pattern matching
- Swap widget merged with MEM widget type
* FS widget rewritten, uses pattern matching
- Also fixed padding in the process
* NET widget rewritten, uses pattern matching
* MPD widget rewritten, a bit more versatile
* Removed deprecated helper functions
* Widgets written for Vicious:
- Thermal, Battery, Mbox, OrgMode, Volume, Entropy,
Disk I/O, System Load, Wireless, Pacman, Maildir