UPower is an abstraction for enumerating power devices, listening to device
events and querying history and statistics. Any application or service on the
system can access the org.freedesktop.UPower service via the system message
bus. Some operations (such as suspending the system) are restricted using
PolicyKit.

Homepage:
https://upower.freedesktop.org/
