UPower

UPower (previously DeviceKit-power) is a piece of middleware (an abstraction layer) for power management on Linux systems. It enumerates power sources, maintains statistics and history data on them and notifies about status changes. It consists of a daemon (upowerd), an application programming interface and a set of command line tools. The daemon provides its functionality to applications over the system bus (an instance of D-Bus, service codice_1). PolicyKit restricts access to the UPower functionality for initiating hibernate mode or shutting down the operating system (freedesktop.upower.policy).
The command-line client program codice_2 can be used to query and monitor information about the power supply devices in the system. Graphical user interfaces to the functionality of UPower include the GNOME Power Manager and the Xfce Power Manager.
UPower is a product of the cross-desktop freedesktop.org project. As free software it is published with its source code under the terms of version 2 or later of the GNU General Public License (GPL).
It was conceived as a replacement for the corresponding features of the deprecated HAL. In 2008, David Zeuthen started a comprehensive rewrite of HAL. This resulted in a set of separate services under the new name "DeviceKit". In 2010 the included "DeviceKit-power" was renamed. UPower was first introduced and established as a standard in GNOME. In January 2011 the desktop environment Xfce followed (version 4.8).