UPower

Last updated
UPower
UPower logo.png
Xfce4 pop-up notification draining battery.png
GNOME Power Manager notification about switch to battery power
Developer(s) David Zeuthen, Richard Hughes a.o. (freedesktop.org)
Initial release2008;14 years ago (2008)
Stable release
0.99.15 [1]   OOjs UI icon edit-ltr-progressive.svg / 9 February 2022;10 days ago (9 February 2022)
Repository
Written in C
Operating system Linux
License GPL (free software)
Website upower.freedesktop.org

UPower (previously DeviceKit-power) is a piece of middleware (an abstraction layer) for power management on Linux systems. [2] 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 org.freedesktop.UPower). [3] PolicyKit restricts access to the UPower functionality for initiating hibernate mode or shutting down the operating system (freedesktop.upower.policy). [4] The command-line client program upower 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. [5]

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". [6] In 2010 the included DeviceKit-power was renamed. UPower was first introduced and established as a standard in GNOME. [7] In January 2011 the desktop environment Xfce followed (version 4.8).

Sources

  1. "Release v0.99.15".
  2. Michael Kofler (2011), Linux 2011 : Debian, Fedora, openSUSE, Ubuntu (in German) (10 ed.), München: Pearson Education Deutschland GmbH, p. 504, ISBN   9783827330253
  3. Oliver Diedrich (The H Open), 11 February 2013: D-Bus is coming to the Linux Kernel
  4. Richard Petersen (2010), Fedora 14 : Administration and Security (in German), Alameda, CA: Surfing Turtle Press, ISBN   9781936280230
  5. "Xfce:xfce4-power-manager:start [Xfce Docs]".
  6. David Zeuthen (7 May 2008), freedesktop.org (ed.), "Update on DeviceKit", HAL-Mailingliste (in German)
  7. Thorsten Leemhuis (The H Open), 7 August 2012: Comment: Desktop Fragmentation [ permanent dead link ]

Related Research Articles

In computing, a desktop environment (DE) is an implementation of the desktop metaphor made of a bundle of programs running on top of a computer operating system that share a common graphical user interface (GUI), sometimes described as a graphical shell. The desktop environment was seen mostly on personal computers until the rise of mobile computing. Desktop GUIs help the user to easily access and edit files, while they usually do not provide access to all of the features found in the underlying operating system. Instead, the traditional command-line interface (CLI) is still used when full control over the operating system is required.

Xfce Desktop environment

Xfce or XFCE is a free and open-source desktop environment for Linux and Unix-like operating systems.

GNOME Files File manager

GNOME Files, formerly and internally known as Nautilus, is the official file manager for the GNOME desktop. Nautilus was originally developed by Eazel with many luminaries from the tech world including Andy Hertzfeld (Apple), chief architect for Nautilus. The nautilus name was a play on words, evoking the shell of a nautilus to represent an operating system shell. Nautilus replaced Midnight Commander in GNOME 1.4 (2001) and has been the default file manager from version 2.0 onwards.

freedesktop.org (fd.o) is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System (X11) and Wayland on Linux and other Unix-like operating systems. It was founded by Havoc Pennington, a GNOME developer working for Red Hat in March 2000. The project's servers are hosted by Portland State University, sponsored by Hewlett-Packard, Intel, and Google.

udev is a device manager for the Linux kernel. As the successor of devfsd and hotplug, udev primarily manages device nodes in the /dev directory. At the same time, udev also handles all user space events raised when hardware devices are added into the system or removed from it, including firmware loading as required by certain devices.

In computing, D-Bus is a message-oriented middleware mechanism that allows communication between multiple processes running concurrently on the same machine. D-Bus was developed as part of the freedesktop.org project, initiated by Havoc Pennington from Red Hat to standardize services provided by Linux desktop environments such as GNOME and KDE.

NetworkManager

NetworkManager is a daemon that sits on top of libudev and other Linux kernel interfaces and provides a high-level interface for the configuration of the network interfaces.

Tango Desktop Project Open source initiative

The Tango Desktop Project was an open-source initiative to create a set of design guidelines and to provide a consistent user experience for applications on desktop environments. The project created a set of icons known as the Tango Icon Library and that were described as a "proof of concept". The Tango Desktop Project was a project of freedesktop.org, and was closely linked with other freedesktop.org guidelines, such as the Standard Icon Theming Specification.

HAL is a software subsystem for UNIX-like operating systems providing hardware abstraction.

A desktop environment is a collection of software designed to give functionality and a certain look and feel to an operating system.

Polkit Component of UNIX systems

Polkit is a component for controlling system-wide privileges in Unix-like operating systems. It provides an organized way for non-privileged processes to communicate with privileged ones. Polkit allows a level of control of centralized system policy. It is developed and maintained by David Zeuthen from Red Hat and hosted by the freedesktop.org project. It is published as free software under the terms of version 2 of the GNU Lesser General Public License.

PackageKit

PackageKit is a free and open-source suite of software applications designed to provide a consistent and high-level front end for a number of different package management systems. PackageKit was created by Richard Hughes in 2007, and first introduced into an operating system as a default application in May 2008 with the release of Fedora 9.

GVfs is GNOME's userspace virtual filesystem designed to work with the I/O abstraction of GIO, a library available in GLib since version 2.15.1. It installs several modules that are automatically used by applications using the APIs of libgio. There is also FUSE support that allows applications not using GIO to access the GVfs filesystems.

DeviceKit is a modular hardware abstraction layer designed for use in Linux systems that is designed to simplify device management and replace the current monolithic Linux HAL. DeviceKit includes the ability to enumerate system devices and send notifications when hardware is added or removed from the computer system.

GNOME Desktop environment for Linux and other Unix-like systems

GNOME is a free and open-source desktop environment for Linux operating systems. GNOME was originally an acronym for GNU Network Object Model Environment, but the acronym was dropped because it no longer reflected the vision of the GNOME project.

GNOME Disks

GNOME Disks is a graphical front-end for udisks included in the "gnome-disk-utility" package. It can be used for partition management, S.M.A.R.T. monitoring, benchmarking, and software RAID. An introduction is included in the GNOME Documentation Project.

systemd Init system and system/service manager for Linux systems

systemd is a software suite that provides an array of system components for Linux operating systems. Its main aim is to unify service configuration and behavior across Linux distributions; systemd's primary component is a "system and service manager"—an init system used to bootstrap user space and manage user processes. It also provides replacements for various daemons and utilities, including device management, login management, network connection management, and event logging. The name systemd adheres to the Unix convention of naming daemons by appending the letter d. It also plays on the term "System D", which refers to a person's ability to adapt quickly and improvise to solve problems.

Fedora Linux is a Linux distribution developed by the Fedora Project. Fedora attempts to maintain a six-month release schedule, offering new versions in May and November.

Cinnamon (desktop environment) Desktop environment

Cinnamon is a free and open-source desktop environment for the X Window System that derives from GNOME 3 but follows traditional desktop metaphor conventions. Cinnamon is the principal desktop environment of the Linux Mint distribution and is available as an optional desktop for other Linux distributions and other Unix-like operating systems as well.

Phosh Graphical interface for mobile devices

Phosh is a graphical user interface designed for mobile and touch-based devices. It is the default shell used on several mobile Linux operating systems including PureOS, Mobian, and Fedora Mobility. It is also an option on postmarketOS, Manjaro, and openSUSE.