diff options
Diffstat (limited to 'dev-python')
| -rw-r--r-- | dev-python/pyudev/Manifest | 1 | ||||
| -rw-r--r-- | dev-python/pyudev/pyudev-0.24.4.ebuild | 74 |
2 files changed, 75 insertions, 0 deletions
diff --git a/dev-python/pyudev/Manifest b/dev-python/pyudev/Manifest index c847ea977f96..8070bad28169 100644 --- a/dev-python/pyudev/Manifest +++ b/dev-python/pyudev/Manifest @@ -1 +1,2 @@ DIST pyudev-0.24.3.gh.tar.gz 80807 BLAKE2B 8b047c1d44f9bbb9ace782b690e0859eb3cdc2c1a994a398513e7cc2288803f8cfcdc227546de22275d47961f880bd76e0dec244e46abf451534f5648682febe SHA512 9075437f6fdba0fc1921e252c0a49e1a5eeed8c5cf598856a32aa9f9fcb8885dc0727258d2965241b2e044acfdf70561d5aa3f1380b84e013afc7cb8dcbfce2b +DIST pyudev-0.24.4.gh.tar.gz 80770 BLAKE2B 27e6c3fe8d9ee5088f459981e0a2e69baa124a7d427c08e133e13dc56603c58adc39c8e42fef28b9c26dd724b4ddda0568db234ced65ba7f787381b5f3110411 SHA512 d0edd89a9b024fd166d6286920a37baac5a739f89101a6d7c4dca3dad0b6d8d4a61e93c0ef1ca3795a677558579bdfecf49a5d5b61837345eed90a31fed4aa20 diff --git a/dev-python/pyudev/pyudev-0.24.4.ebuild b/dev-python/pyudev/pyudev-0.24.4.ebuild new file mode 100644 index 000000000000..98473419d9a8 --- /dev/null +++ b/dev-python/pyudev/pyudev-0.24.4.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..13} ) +inherit distutils-r1 optfeature pypi + +DESCRIPTION="Python binding to libudev" +HOMEPAGE="https://pyudev.readthedocs.io/en/latest/ https://github.com/pyudev/pyudev" +SRC_URI="https://github.com/pyudev/pyudev/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + +# Known to fail on test system that aren't exactly the same devices as on CI +#RESTRICT="test" + +RDEPEND=" + virtual/udev +" +BDEPEND=" + test? ( + dev-python/docutils[${PYTHON_USEDEP}] + ) +" + +DOCS=( CHANGES.rst README.rst ) + +EPYTEST_PLUGINS=( hypothesis ) +distutils_enable_tests pytest + +python_prepare_all() { + if use test; then + ewarn "If your PORTAGE_TMPDIR is longer in length then '/var/tmp/'," + ewarn "change it to /var/tmp to ensure tests will pass." + fi + + distutils-r1_python_prepare_all +} + +python_test() { + local -a EPYTEST_DESELECT=( + # tests that require root access + tests/test_device.py::TestAttributes::test_asint + tests/test_device.py::TestAttributes::test_asbool + tests/test_device.py::TestAttributes::test_getitem + tests/test_device.py::TestAttributes::test_asstring + + # tests don't work on systems that differ from the upstream CI + tests/test_monitor.py::TestMonitorObserver::test_deprecated_handler + tests/test_monitor.py::TestMonitorObserver::test_fake + ) + local -a EPYTEST_IGNORE=( + tests/test_observer.py + tests/test_observer_deprecated.py + ) + epytest tests +} + +src_test() { + local virt=$(systemd-detect-virt 2>/dev/null) + if [[ ${virt} == systemd-nspawn ]] ; then + ewarn "Skipping tests because in systemd-nspawn container" + else + distutils-r1_src_test + fi +} + +pkg_postinst() { + optfeature "PyQt5 bindings" "dev-python/pyqt5" +} |
