commit: e44abc68881711cb9ea6b9ff175ca1d2212945a1 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Fri Nov 10 12:59:19 2023 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Fri Nov 10 13:09:20 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e44abc68
dev-python/fritzconnection: Add USE=qrcode for WiFi login QR Code gen Closes: https://bugs.gentoo.org/916578 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> .../fritzconnection-1.13.2-r1.ebuild | 64 ++++++++++++++++++++++ dev-python/fritzconnection/metadata.xml | 6 ++ 2 files changed, 70 insertions(+) diff --git a/dev-python/fritzconnection/fritzconnection-1.13.2-r1.ebuild b/dev-python/fritzconnection/fritzconnection-1.13.2-r1.ebuild new file mode 100644 index 000000000000..73e3ff50eb6b --- /dev/null +++ b/dev-python/fritzconnection/fritzconnection-1.13.2-r1.ebuild @@ -0,0 +1,64 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 + +DESCRIPTION="Lib/tool to communicate with AVM FRITZ! devices using TR-064 protocol over UPnP" +HOMEPAGE=" + https://github.com/kbr/fritzconnection/ + https://pypi.org/project/fritzconnection/ +" + +LICENSE="MIT" +SLOT="0" +IUSE="qrcode" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/kbr/fritzconnection" + inherit git-r3 +else + SRC_URI=" + https://github.com/kbr/fritzconnection/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + " + KEYWORDS="~amd64" +fi + +RDEPEND=" + >=dev-python/requests-2.22[${PYTHON_USEDEP}] + qrcode? ( + dev-python/segno[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + test? ( + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # flaky (relies on time.sleep(0.01) magically being sufficient) + fritzconnection/tests/test_fritzmonitor.py::test_terminate_thread_on_failed_reconnection + ) + + if has_version "dev-python/segno[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + # requires "QR Code detection" support in media-libs/opencv + # https://bugs.gentoo.org/917121 + fritzconnection/tests/test_fritzwlan.py::test_get_wifi_qr_code + fritzconnection/tests/test_fritzwlan.py::test_helper_functions + fritzconnection/tests/test_fritzwlan.py::test_tools + ) + fi + + # "routertest" marks tests against live hardware + epytest -m "not routertest" +} diff --git a/dev-python/fritzconnection/metadata.xml b/dev-python/fritzconnection/metadata.xml index 80aadfcb4881..32eb24693df4 100644 --- a/dev-python/fritzconnection/metadata.xml +++ b/dev-python/fritzconnection/metadata.xml @@ -11,4 +11,10 @@ <remote-id type="github">kbr/fritzconnection</remote-id> <remote-id type="pypi">fritzconnection</remote-id> </upstream> + <use> + <flag name="qrcode"> + Install dependencies needed to generate QR Codes for WiFi + login. + </flag> + </use> </pkgmetadata>