| PackageKit | |
|---|---|
PackageKit is a system daemon, various graphical front-ends are available | |
| Original author | Richard Hughes |
| Developers | Richard Hughes, Matthias Klumpp, multiple backend maintainers[1] |
| Release | 2007 (2007) |
| Stable release | 1.3.6[2]
/ 16 June 2026 (16 June 2026) |
| Written in | C, C++, Python |
| Operating system | Linux |
| Type | Package management system |
| License | GNU General Public License |
| Website | www |
| Repository | |
PackageKit is a free and open-source suite of software applications designed to provide a consistent and high-level abstraction layer for a number of different package management systems. PackageKit was created by Richard Hughes in 2007,[3][4] and first embedded in an operating system as a default application in May 2008, with the release of Fedora 9.[5]
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.
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.[6]
Software architecture
PackageKit runs as a system-activated daemon, named packagekitd, which abstracts out differences between the different systems. A library called libpackagekit allows other programs to interact with PackageKit.[7]
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

pkgcliis the official front-end of PackageKit, it operates from the command line.[8]pkconthe older command-line interface of PackageKit.
GTK-based:
- gnome-packagekit is an official GNOME front-end for PackageKit. Unlike GNOME Software, gnome-packagekit can handle all packages, not just applications, and has advanced features that are missing in GNOME Software as of June 2020.
- GNOME Software is a utility for installing the applications and updates on Linux. It is part of the GNOME Core Applications and was introduced in GNOME 3.10.
Qt-based:
- Apper
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.[9] Supported back-ends include:
See also
References
- "Backend Maintainers". Retrieved 28 January 2026.
{{cite web}}: CS1 maint: url-status (link) - "Release 1.3.6". 16 June 2026. Retrieved 17 June 2026.
- "Installing and Updating Software Blows Goats". Richard Hughes. 27 July 2007. Retrieved 18 January 2011.
- "Richard Hughes' blog posts about PackageKit". Richard Hughes. Retrieved 18 January 2011.
- "Releases/9/FeatureList". Fedora Project Wiki. Fedora Project. 28 May 2008. Retrieved 7 July 2015.
- "Introduction to PackageKit, a Package Abstraction Framework" (PDF). Richard Hughes. 2008-02-24. Retrieved 2014-04-11.
- "PackageKit Reference Manual". packagekit.org. Archived from the original on 16 July 2009. Retrieved 10 July 2009.
- "HowTo use pkon".
- "Frequently asked questions". packagekit.org. Archived from the original on 19 March 2008. Retrieved 10 July 2009.
- "libdnf on github". GitHub.
- "librepo on github". GitHub.