Install this version:
emerge -a =dev-python/dbus-fast-5.2.0
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=poetry
# TODO: freethreading compatible
PYTHON_COMPAT=( python3_{12..15} )
inherit distutils-r1 virtualx pypi
DESCRIPTION="A faster version of dbus-next"
HOMEPAGE="
https://github.com/bluetooth-devices/dbus-fast/
https://pypi.org/project/dbus-fast/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 ~riscv"
IUSE="+native-extensions"
BDEPEND="
<dev-python/cython-3.4[${PYTHON_USEDEP}]
>=dev-python/cython-3[${PYTHON_USEDEP}]
>=dev-python/setuptools-65.4.1[${PYTHON_USEDEP}]
test? (
dev-python/blockbuster[${PYTHON_USEDEP}]
>=dev-python/pycairo-1.21.0[${PYTHON_USEDEP}]
>=dev-python/pygobject-3.50[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=( pytest-{asyncio,timeout} )
distutils_enable_tests pytest
src_configure() {
export REQUIRE_CYTHON=1
if ! use native-extensions; then
export SKIP_CYTHON=1
fi
}
src_test() {
local dbus_params=(
$(dbus-daemon --session --print-address --fork --print-pid)
)
local -x DBUS_SESSION_BUS_ADDRESS=${dbus_params[0]}
virtx distutils-r1_src_test
kill "${dbus_params[1]}" || die
}
python_test() {
local EPYTEST_DESELECT=(
# interface not found on this object: org.freedesktop.DBus.Debug.Stats
tests/client/test_signals.py::test_signals
)
local EPYTEST_IGNORE=(
tests/benchmarks
)
nonfatal epytest -o addopts= || die
}
Manage flags for this package:
euse -i <flag> -p dev-python/dbus-fast |
euse -E <flag> -p dev-python/dbus-fast |
euse -D <flag> -p dev-python/dbus-fast
<dev-python/cython-3.4[] >=dev-python/cython-3[] >=dev-python/setuptools-65.4.1[] test? ( dev-python/blockbuster[] >=dev-python/pycairo-1.21.0[] >=dev-python/pygobject-3.50[] )