PackageKit

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.

PackageKit
64px
300px
PackageKit is a system daemon, various graphical front-ends are available
Original author(s) Richard Hughes
Initial release 2007; 17 years ago (2007)
Stable release 1.0.11 / 27 November 2015; 8 years ago (2015-11-27)[1]
Development status Active
Written in C, C++, Python
Operating system Linux
Type Package management system
License GNU General Public License
Website www.freedesktop.org/software/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,[2][3] and first introduced into an operating system as a default application in May 2008 with the release of Fedora 9.[4]

The suite is cross-platform, though it is primarily targeted at Linux distributions which follow the interoperability standards set out by the freedesktop.org group. It uses the software libraries provided by the D-Bus and Polkit projects to handle inter-process communication and privilege negotiation respectively.

Since 1995, package formats have been around, since 2000 there have been dependency solvers and auto-downloaders as a layer on top of them around, and since 2004 graphical front-ends. PackageKit seeks to introduce automatic updates without having to authenticate as root, fast-user-switching, warnings translated into the correct locale, common upstream GNOME and KDE tools and one software over multiple Linux distributions.[5]

Software architecture

PackageKit itself runs as a system-activated daemon, packagekitd, which abstracts out differences between the different systems. A library called libpackagekit allows other programs to interact with PackageKit.[6]

Features include:

  • installing local files, ServicePack media and packages from remote sources
  • authorization using Polkit
  • the use of existing packaging tools
  • multi-user system awareness – it will not allow shutdown in critical parts of the transaction
  • a system-activated daemon which exits when not in use

Front-ends

Graphical front-ends for PackageKit include:

pkcon operates from the command-line.[7]

Back-ends

A number of different package management systems (known as back-ends) support different abstract methods and signals used by the front-end tools.[8] Back-ends supported include:

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.

External links