commit:     db89614b8c63bc48fe05ea19771a932107caf61e
Author:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 28 17:54:47 2025 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Tue Oct 28 17:54:57 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=db89614b

app-misc/solaar: sync 9999 ebuild with latest release

Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>

 app-misc/solaar/solaar-9999.ebuild | 70 ++++++++++++++++++++++++++------------
 1 file changed, 49 insertions(+), 21 deletions(-)

diff --git a/app-misc/solaar/solaar-9999.ebuild 
b/app-misc/solaar/solaar-9999.ebuild
index dbd439b70312..a1f5eb2f4f43 100644
--- a/app-misc/solaar/solaar-9999.ebuild
+++ b/app-misc/solaar/solaar-9999.ebuild
@@ -1,11 +1,10 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
 DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..14} )
 
 inherit linux-info udev xdg distutils-r1
 
@@ -22,38 +21,47 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="doc appindicator libnotify"
+IUSE="appindicator dbus doc libnotify test wayland"
+RESTRICT="!test? ( test )"
 
 RDEPEND="
        acct-group/plugdev
-       $(python_gen_cond_dep '
-               dev-python/evdev[${PYTHON_USEDEP}]
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pygobject:3[${PYTHON_USEDEP}]
-               dev-python/python-xlib[${PYTHON_USEDEP}]
-               >=dev-python/pyudev-0.13[${PYTHON_USEDEP}]
-               dev-python/pyyaml[${PYTHON_USEDEP}]
-
-       ')
+       dev-python/evdev[${PYTHON_USEDEP}]
+       dev-python/psutil[${PYTHON_USEDEP}]
+       dev-python/pygobject:3[${PYTHON_USEDEP}]
+       dev-python/python-xlib[${PYTHON_USEDEP}]
+       >=dev-python/pyudev-0.13[${PYTHON_USEDEP}]
+       dev-python/pyyaml[${PYTHON_USEDEP}]
+       dev-python/typing-extensions[${PYTHON_USEDEP}]
        x11-libs/gtk+:3[introspection]
        appindicator? ( dev-libs/libayatana-appindicator )
-       libnotify? ( x11-libs/libnotify[introspection] )"
+       libnotify? ( x11-libs/libnotify[introspection] )
+       dbus? ( dev-python/dbus-python )
+"
+BDEPEND="
+       test? (
+               dev-python/pytest-mock[${PYTHON_USEDEP}]
+       )
+"
 # libayatana-appindicator & libnotify are entirely optional and detected at 
runtime
 
 CONFIG_CHECK="~HID_LOGITECH_DJ ~HIDRAW"
 
+distutils_enable_tests pytest
+
 python_prepare_all() {
        # don't autostart (bug #494608)
-       sed -i \
+       sed -r \
                -e '/yield autostart_path/d' \
-               setup.py || die
-
-       sed -i -r \
                -e '/yield.*udev.*rules.d/{s,/etc,/lib,g}' \
-               setup.py || die
+               -i setup.py || die
 
        # grant plugdev group rw access
-       sed -i 's/#MODE=/MODE=/' rules.d/42-logitech-unify-permissions.rules || 
die
+       sed 's/#MODE=/MODE=/' \
+               -i rules.d/42-logitech-unify-permissions.rules || die
+       # and the same for wayland (bug #933418)
+       sed 's/#MODE=/MODE=/' \
+               -i rules.d-uinput/42-logitech-unify-permissions.rules || die
 
        distutils-r1_python_prepare_all
 }
@@ -67,7 +75,27 @@ python_install_all() {
        else
                newdoc docs/index.md README.md
        fi
-       udev_dorules "${S}"/rules.d/42-logitech-unify-permissions.rules
+
+       # bug #933418
+       if use wayland; then
+               udev_dorules 
"${S}"/rules.d-uinput/42-logitech-unify-permissions.rules
+       else
+               udev_dorules "${S}"/rules.d/42-logitech-unify-permissions.rules
+       fi
+}
+
+python_test() {
+       local -a EPYTEST_DESELECT=(
+               # don't like sandbox
+               
tests/logitech_receiver/test_desktop_notifications.py::test_notifications_available
+               tests/logitech_receiver/test_desktop_notifications.py::test_init
+               tests/logitech_receiver/test_desktop_notifications.py::test_show
+               
tests/solaar/ui/test_desktop_notifications.py::test_notifications_available
+               tests/solaar/ui/test_desktop_notifications.py::test_init
+               tests/solaar/ui/test_desktop_notifications.py::test_show
+       )
+
+       distutils-r1_python_test
 }
 
 pkg_postinst() {

Reply via email to