--- id: dbus-next version: "0.2.3" license: MIT license_treatment: permissive maintenance: dormant --- # dbus-next — A zero-dependency DBus library for Python with asyncio support License: permissive · Maintenance: dormant · Downloads: 411.6K/mo ## What it is and what it does dbus-next is a pure-Python DBus library designed for integrating applications into Linux desktop and mobile environments. It provides three interface layers: a high-level client API for calling methods and listening to signals on DBus services, a high-level service API for exporting DBus interfaces with decorated methods and properties, and a low-level message API for direct DBus message handling. The library supports both asyncio and GLib main loops, making it suitable for GUI applications and long-running services. The package has no runtime dependencies and targets modern Python (3.6+) with full type hints. It aims to improve on older DBus libraries by avoiding type guessing, providing complete DBus type system support, and offering nonblocking I/O suitable for responsive applications. Common use cases include controlling media players via MPRIS, automating desktop environments, and building custom DBus services for system integration. Use it for: - Control media players or other DBus services from Python scripts using the high-level client interface. - Export custom DBus services to integrate Python applications into desktop environments. - Build desktop automation utilities that interact with system services via DBus. - Create asyncio-based daemon services that respond to DBus method calls and emit signals. - Inspect and interact with arbitrary DBus services using the low-level message interface. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. A pure-Python DBus library for Linux desktop and mobile environments that supports asyncio and GLib main loops, enabling applications to call DBus methods, access properties, listen to signals, and export services. Yes, if you need DBus integration on Linux. The library is stable, dependency-free, and well-documented. However, be aware it is dormant—no active maintenance since July 2021—so expect no updates for new Python versions or DBus protocol changes. Suitable for stable use cases; risky if you need ongoing support or compatibility with future Python releases. ## Install pip install dbus-next uv add dbus-next poetry add dbus-next ## Installing dbus-next Before you install: Installation is straightforward with no runtime dependencies. The package is dormant (last commit June 2024, no release since July 2021), so expect no active maintenance or bug fixes, though the codebase is stable for existing use cases. License in practice: MIT license is permissive, allowing free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects. Quickstart: pip install dbus-next from dbus_next.aio import MessageBus import asyncio async def main(): bus = await MessageBus().connect() introspection = await bus.introspect('org.mpris.MediaPlayer2.vlc', '/org/mpris/MediaPlayer2') obj = bus.get_proxy_object('org.mpris.MediaPlayer2.vlc', '/org/mpris/MediaPlayer2', introspection) player = obj.get_interface('org.mpris.MediaPlayer2.Player') await player.call_play() asyncio.run(main()) Requires a running DBus daemon (standard on Linux desktops and mobile environments); Python 3.6 or later. Verify before relying: - Whether dormancy since July 2021 poses compatibility risks with modern DBus protocol versions or Python 3.12+. - Whether GLib main loop support is production-ready or primarily asyncio-focused in practice. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: dormant - Downloads: 411.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags dbus python library, asyncio dbus client, linux desktop ipc, dbus service interface, gnome dbus integration, dbus method calls, desktop environment automation, dbus, asyncio, linux-desktop [View on SkillFed](https://skillfed.io/packages/dbus-next) · [View on PyPI](https://pypi.org/project/dbus-next/)