On 2024-05-04, at 17:56:06 +0530, Nilesh Patra wrote:
> I am trying to update riseup-vpn to its latest version. I am seeing
> some confused mix of qt5 and qt6 - not really sure how qt updates for
> applications work. I tried to replace qt5 packages (builddeps) with
> its qt6 equivalents but I end up with:
>
> | ==============BUILD GUI===============
> | TARGET: bitmask-vpn
> | VENDOR_PATH: providers
> | [build.sh] VENDOR_PATH = providers
> | [+] Building BitmaskVPN
> | lrelease: could not find a Qt installation of ''
> | make[2]: *** [Makefile:151: build_gui] Error 1
> | make[2]: Leaving directory '/<<PKGBUILDDIR>>/_build/src/0xacab.org/leap/bitmask-vpn'
>
> I was getting a different error with qt5:
>
> | /usr/lib/qt5/bin/qmlcachegen --resource=/tmp/riseup-vpn_/_build/src/0xacab.org/leap/bitmask-vpn/gui/gui.qrc -o release/gui_main_qml.cpp ../../gui/main.qml
> | Error compiling qml file: ../../gui/main.qml:0: error: Library import requires a version
> | ../../gui/main.qml:0: error: Library import requires a version
> | ../../gui/main.qml:0: error: Library import requires a version
> | ../../gui/main.qml:0: error: Library import requires a version
> | ../../gui/main.qml:0: error: Library import requires a version
>
> But given that the readme says to use qt6, I should not be using qt5
> here. The versions from the qml file have been omitted in this
> release.
>
> I am also puzzled with different paths for the same binaries across qt
> versions for instance qmlcachegen is:
>
> qt6-declarative-dev-tools: /usr/lib/qt6/libexec/qmlcachegen
> qtdeclarative5-dev-tools: /usr/lib/qt5/bin/qmlcachegen
>
> Why is that?
Presumably so one can co-install the dev tools for multiple releases
of QT.
> In any case, I am not sure how to proceed from here (the error with
> lrelease). Can anyone help out, please? My changes are available in
> salsa at: https://salsa.debian.org/go-team/packages/riseup-vpn
>
> I'd appreciate any pointers.
You can tell the GUI build script to use the qt6 lrelease and qmake
binaries:
diff --git a/debian/rules b/debian/rules
index 0e587fbc94d5..31656e0ad777 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,6 +7,8 @@ export DH_GOLANG_INSTALL_EXTRA=Makefile gui tests vendor/modules.txt branding pr
export BUILDDIR=_build/src/0xacab.org/leap/bitmask-vpn/
export GOPATH = ${CURDIR}/_build:/usr/share/gocode
export GO111MODULE := off
+export LRELEASE := /usr/lib/qt6/bin/lrelease
+export QMAKE := qmake6
include /usr/share/dpkg/pkg-info.mk
@@ -24,7 +26,7 @@ override_dh_auto_build:
override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
# Qmake test
- cd $(BUILDDIR) && qmake test.pro -o tests/Makefile.test && \
+ cd $(BUILDDIR) && $(QMAKE) test.pro -o tests/Makefile.test && \
cd tests && $(MAKE) -f Makefile.test && $(MAKE) -f Makefile.test clean
# Golang test
DH_GOLANG_EXCLUDES=gui dh_auto_test
You can also drop the build-dep on qtchooser, 'cause it only work with
qt4 and qt6, I believe.
J.
Attachment:
signature.asc
Description: PGP signature