Package: src:pyotherside Severity: wishlist Dear Maintainer, Currently you are building only a Qt 5 plugins, but upstream source code is also compatible with Qt6. Could you please build the Qml6 plugin ?
I already did it locally, please find the debdiff in attachment. Best regards, Sébastien
diff -Nru pyotherside-1.6.0/debian/control pyotherside-1.6.0/debian/control --- pyotherside-1.6.0/debian/control +++ pyotherside-1.6.0/debian/control @@ -7,25 +7,23 @@ python3-dev, python3-sphinx, qt5-qmake, + qmake6, qtbase5-dev, + qt6-base-dev, qtdeclarative5-dev, + qt6-declarative-dev, xauth, xvfb, libqt5svg5-dev, - libqt5opengl5-dev + libqt6svg6-dev, + libqt5opengl5-dev, + libqt6opengl6-dev, Standards-Version: 4.6.1 Rules-Requires-Root: no Vcs-Git: https://salsa.debian.org/python-team/packages/pyotherside.git Vcs-Browser: https://salsa.debian.org/python-team/packages/pyotherside Homepage: https://thp.io/2011/pyotherside/ -Package: pyotherside -Depends: qml-module-io-thp-pyotherside, ${misc:Depends} -Description: transitional dummy package - This is a transitional dummy package. It can safely be removed. -Architecture: all -Section: oldlibs - Package: qml-module-io-thp-pyotherside Multi-Arch: same Architecture: any @@ -46,13 +44,29 @@ objects to Python objects and vice versa, with focus on asynchronous events and continuation-passing style function calls. . - While legacy versions of PyOtherSide worked with Qt 4.x and Python 2.x, its - focus now lies on Python 3.x and Qt 5. Python 3 has been out for several - years, and offers some nice language features and clean-ups, while Qt 5 - supports most mobile platforms well, and has an improved QML engine and a - faster renderer (Qt Scene Graph) compared to Qt 4. + This package provides the QML 5 plugin. + +Package: qml6-module-io-thp-pyotherside +Multi-Arch: same +Architecture: any +Pre-Depends: ${misc:Pre-Depends} +Depends: python3:any, ${misc:Depends}, ${shlibs:Depends} +Description: asynchronous Python 3 Bindings for Qt 6 (QML plugin) + A Qt 6 QML Plugin that provides access to a Python 3 interpreter from QML. + . + PyOtherSide is a Qt QML Plugin that provides access to a Python 3 + interpreter from QML. It was designed with mobile devices in mind, where + high-framerate touch interfaces are common, and where the user usually + interfaces only with one application at a time via a touchscreen. As such, it + is important to never block the UI thread, so that the user can always + continue to use the interface, even when the backend is processing, + downloading or calculating something in the background. + . + At its core, PyOtherSide is basically a simple layer that converts Qt (QML) + objects to Python objects and vice versa, with focus on asynchronous events + and continuation-passing style function calls. . - This package provides the QML plugin. + This package provides the QML 6 plugin. Package: pyotherside-doc Section: doc @@ -60,10 +74,10 @@ Architecture: all Pre-Depends: ${misc:Pre-Depends} Depends: ${misc:Depends}, ${sphinxdoc:Depends} -Description: asynchronous Python 3 Bindings for Qt 5 (documentation) - A Qt 5 QML Plugin that provides access to a Python 3 interpreter from QML. +Description: asynchronous Python 3 Bindings for Qt (documentation) + A Qt QML Plugin that provides access to a Python 3 interpreter from QML. . - PyOtherSide is a Qt 5 QML Plugin that provides access to a Python 3 + PyOtherSide is a Qt QML Plugin that provides access to a Python 3 interpreter from QML. It was designed with mobile devices in mind, where high-framerate touch interfaces are common, and where the user usually interfaces only with one application at a time via a touchscreen. As such, it @@ -75,12 +89,6 @@ objects to Python objects and vice versa, with focus on asynchronous events and continuation-passing style function calls. . - While legacy versions of PyOtherSide worked with Qt 4.x and Python 2.x, its - focus now lies on Python 3.x and Qt 5. Python 3 has been out for several - years, and offers some nice language features and clean-ups, while Qt 5 - supports most mobile platforms well, and has an improved QML engine and a - faster renderer (Qt Scene Graph) compared to Qt 4. - . This package provides the HTML documentation as well as the set of examples. Package: pyotherside-tests @@ -92,10 +100,10 @@ python3:any, ${misc:Depends}, ${shlibs:Depends} -Description: Asynchronous Python 3 Bindings for Qt 5 (tests) - A Qt 5 QML Plugin that provides access to a Python 3 interpreter from QML. +Description: Asynchronous Python 3 Bindings for Qt (tests) + A Qt QML Plugin that provides access to a Python 3 interpreter from QML. . - PyOtherSide is a Qt 5 QML Plugin that provides access to a Python 3 + PyOtherSide is a Qt QML Plugin that provides access to a Python 3 interpreter from QML. It was designed with mobile devices in mind, where high-framerate touch interfaces are common, and where the user usually interfaces only with one application at a time via a touchscreen. As such, it @@ -107,10 +115,4 @@ objects to Python objects and vice versa, with focus on asynchronous events and continuation-passing style function calls. . - While legacy versions of PyOtherSide worked with Qt 4.x and Python 2.x, its - focus now lies on Python 3.x and Qt 5. Python 3 has been out for several - years, and offers some nice language features and clean-ups, while Qt 5 - supports most mobile platforms well, and has an improved QML engine and a - faster renderer (Qt Scene Graph) compared to Qt 4. - . This package contains the test suite that can be started post-installation. diff -Nru pyotherside-1.6.0/debian/pyotherside-tests.install pyotherside-1.6.0/debian/pyotherside-tests.install --- pyotherside-1.6.0/debian/pyotherside-tests.install +++ pyotherside-1.6.0/debian/pyotherside-tests.install @@ -1,3 +1,3 @@ tests/test_*/ /usr/lib/${DEB_HOST_MULTIARCH}/pyotherside/tests -tests/tests /usr/lib/${DEB_HOST_MULTIARCH}/pyotherside/tests +build5/tests/tests /usr/lib/${DEB_HOST_MULTIARCH}/pyotherside/tests usr/tests/qtquicktests/qtquicktests /usr/lib/${DEB_HOST_MULTIARCH}/pyotherside/tests diff -Nru pyotherside-1.6.0/debian/qml6-module-io-thp-pyotherside.install pyotherside-1.6.0/debian/qml6-module-io-thp-pyotherside.install --- pyotherside-1.6.0/debian/qml6-module-io-thp-pyotherside.install 1970-01-01 01:00:00.000000000 +0100 +++ pyotherside-1.6.0/debian/qml6-module-io-thp-pyotherside.install @@ -0,0 +1 @@ +/usr/lib/*/qt6 diff -Nru pyotherside-1.6.0/debian/qml-module-io-thp-pyotherside.install pyotherside-1.6.0/debian/qml-module-io-thp-pyotherside.install --- pyotherside-1.6.0/debian/qml-module-io-thp-pyotherside.install +++ pyotherside-1.6.0/debian/qml-module-io-thp-pyotherside.install @@ -1 +1 @@ -/usr/lib/* +/usr/lib/*/qt5 diff -Nru pyotherside-1.6.0/debian/rules pyotherside-1.6.0/debian/rules --- pyotherside-1.6.0/debian/rules +++ pyotherside-1.6.0/debian/rules @@ -3,22 +3,32 @@ include /usr/share/dpkg/architecture.mk export DEB_BUILD_MAINT_OPTIONS = hardening=+all -export QT_SELECT=qt5 %: dh $@ --with=sphinxdoc +override_dh_auto_configure: + QT_SELECT=qt5 dh_auto_configure --builddir=build5 -- .. + mkdir -p build6 && cd build6 && qmake6 "QMAKE_CFLAGS_RELEASE=${CFLAGS} ${CPPFLAGS}" "QMAKE_CFLAGS_DEBUG=${CFLAGS} ${CPPFLAGS}" "QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS} ${CPPFLAGS}" "QMAKE_CXXFLAGS_DEBUG=${CXXFLAGS} ${CPPFLAGS}" "QMAKE_LFLAGS_RELEASE=${LDFLAGS}" "QMAKE_LFLAGS_DEBUG=${LDFLAGS}" QMAKE_STRIP=: PREFIX=/usr .. && cd .. + override_dh_auto_build: - dh_auto_build + dh_auto_build --builddir=build6 + dh_auto_build --builddir=build5 /usr/share/sphinx/scripts/python3/sphinx-build -b html docs build/sphinx/html +override_dh_auto_install: + dh_auto_install --builddir=build6 + dh_auto_install --builddir=build5 + override_dh_auto_clean: - dh_auto_clean - rm -rf build + dh_auto_clean --builddir=build6 + dh_auto_clean --builddir=build5 + rm -rf build build5 build6 override_dh_auto_test: ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) - xvfb-run -a ./tests/tests + xvfb-run -a ./build5/tests/tests + xvfb-run -a ./build6/tests/tests endif override_dh_installdocs: