From b590c8d7572b727d565cc0b8ff660d43569845de Mon Sep 17 00:00:00 2001 From: root Date: Fri, 12 Jun 2026 19:09:37 -0500 Subject: Adding metadata --- dev-python/pyudev/Manifest | 1 + dev-python/pyudev/metadata.xml | 17 ++++++++ dev-python/pyudev/pyudev-0.24.4.ebuild | 74 ++++++++++++++++++++++++++++++++++ 3 files changed, 92 insertions(+) create mode 100644 dev-python/pyudev/Manifest create mode 100644 dev-python/pyudev/metadata.xml create mode 100644 dev-python/pyudev/pyudev-0.24.4.ebuild (limited to 'dev-python/pyudev') diff --git a/dev-python/pyudev/Manifest b/dev-python/pyudev/Manifest new file mode 100644 index 000000000000..eb29811d24df --- /dev/null +++ b/dev-python/pyudev/Manifest @@ -0,0 +1 @@ +DIST pyudev-0.24.4.gh.tar.gz 80770 BLAKE2B 27e6c3fe8d9ee5088f459981e0a2e69baa124a7d427c08e133e13dc56603c58adc39c8e42fef28b9c26dd724b4ddda0568db234ced65ba7f787381b5f3110411 SHA512 d0edd89a9b024fd166d6286920a37baac5a739f89101a6d7c4dca3dad0b6d8d4a61e93c0ef1ca3795a677558579bdfecf49a5d5b61837345eed90a31fed4aa20 diff --git a/dev-python/pyudev/metadata.xml b/dev-python/pyudev/metadata.xml new file mode 100644 index 000000000000..15dcd023d8f3 --- /dev/null +++ b/dev-python/pyudev/metadata.xml @@ -0,0 +1,17 @@ + + + + + arthurzam@gentoo.org + Arthur Zamarin + + + python@gentoo.org + Python + + + pyudev is a Python binding to libudev, the hardware management library + and service found in modern linux systems. + + baldeagleos-repo + 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..c3dee45776e5 --- /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_{13..14} ) +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" +} -- cgit v1.3