Interfaces

A collection of commonly available interfaces & projects, showing the wild and diverse usages of D-Bus.

Feel free to edit this page to promote common or useful interfaces.

BlueZ

Linux Bluetooth protocol stack.

👉 doc link

Desktop Notifications

For applications to generate passive popups to notify the user.

👉 spec link

File Manager Interface

Interact with the desktop's file manager.

👉 spec link

Flatpak & portals

Flatpak grants sandboxed applications talk access to names in the org.freedesktop.portal.* prefix. One possible way to use the portal APIs is thus just to make D-Bus calls.

👉 API link

Geoclue

Geoclue is a D-Bus service that provides location information. The goal of the Geoclue project is to make creating location-aware applications as simple as possible.

👉 doc link

GNOME

GNOME shell offers a number of D-Bus interfaces.

👉 search provider

Idle Inhibition

AKA org.freedesktop.ScreenSaver.

👉 spec link

libvirt-dbus

libvirt-dbus wraps libvirt API to provide a high-level object-oriented API better suited for dbus-based applications.

👉 project

MPRIS

The Media Player Remote Interfacing Specification is a standard D-Bus interface which aims to provide a common programmatic API for controlling media players.

👉 spec link

NetworkManager

Make networking configuration and operation as painless and automatic as possible.

👉 project

oFono

oFono is a free software project for mobile telephony applications. It is built on 3GPP standards and uses a high-level D-Bus API for use by telephony applications.

👉 doc link

PackageKit

PackageKit is a system designed to make installing and updating software on your computer easier.

👉 API link

PolicyKit

polkit provides an authorization API intended to be used by privileged programs offering service to unprivileged programs. See the polkit manual page for the system architecture and big picture.

👉 API link

Power Profiles

The power profiles API is meant to be used by parts of the OS or desktop environment to switch system power profiles based on user choice, or user intent.

👉 API link

RealtimeKit

RealtimeKit is a D-Bus system service that changes the scheduling policy of user processes/threads to SCHED_RR (i.e. realtime scheduling mode) on request.

👉 project

Secret Service

The Secrets API allows client applications to store secrets securely using a service running in the user's login session.

👉 spec link

Storaged / udisk

The Storaged project provides a daemon, tools and libraries to access and manipulate disks and storage devices.

👉 API link

Stratis

Easy to use local storage management for Linux.

👉 API link

systemd

systemd (system and service manager) and its auxiliary daemons expose a number of APIs over D-Bus.

👉 API link

UPower

UPower is an abstraction for enumerating power devices, listening to device events and querying history and statistics.

👉 API link

Edit this page on Gitlab