-
Notifications
You must be signed in to change notification settings - Fork 82
scripts: upgrade qt to 6.9.0 for all platforms #18011
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Jenkins BuildsClick to see older builds (33)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tiny nit pick , otherwise looks good to me, lets test this in infra-ci
here https://github.com/status-im/infra-ci/tree/master/ansible/roles/status-desktop-setup/vars
7905493
to
1fa9920
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice 👍
scripts/ubuntu_build_setup.sh
Outdated
@@ -47,7 +47,7 @@ function install_qt { | |||
apt install -y python3-pip | |||
pip install -U pip | |||
pip install aqtinstall | |||
aqt install-qt linux desktop ${QT_VERSION} gcc_64 -m qtwebengine -O ${QT_INSTALL_DIR} | |||
aqt install-qt linux desktop ${QT_VERSION} linux_gcc_64 -m qtwebengine -O ${QT_INSTALL_DIR} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We'll need more modules now - at least qt5compat
. Will it hurt if we're just install all of them so that we're free then to just update the dependencies with what's needed?
aqt install-qt linux desktop ${QT_VERSION} linux_gcc_64 -m qtwebengine -O ${QT_INSTALL_DIR} | |
aqt install-qt linux desktop ${QT_VERSION} linux_gcc_64 -m all -O ${QT_INSTALL_DIR} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, just install them all to be on the safe side
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How much is that tho? The Docker image is already massive, how much bigger would it make it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
~/.../gcc_64/qml$ ll
total 304
drwxr-xr-x. 1 ltinkl ltinkl 20 28. bře 21.11 Assets
-rw-r--r--. 1 ltinkl ltinkl 145171 28. bře 21.03 builtins.qmltypes
-rw-r--r--. 1 ltinkl ltinkl 161034 28. bře 21.03 jsroot.qmltypes
drwxr-xr-x. 1 ltinkl ltinkl 44 28. bře 21.11 QML
drwxr-xr-x. 1 ltinkl ltinkl 44 28. bře 21.11 QmlTime
drwxr-xr-x. 1 ltinkl ltinkl 16 30. bře 10.27 Qt
drwxr-xr-x. 1 ltinkl ltinkl 128 30. bře 10.27 QtCore
drwxr-xr-x. 1 ltinkl ltinkl 188 30. bře 10.17 QtDataVisualization
drwxr-xr-x. 1 ltinkl ltinkl 130 30. bře 10.28 QtGraphs
drwxr-xr-x. 1 ltinkl ltinkl 128 30. bře 10.20 QtGrpc
drwxr-xr-x. 1 ltinkl ltinkl 156 30. bře 10.28 QtCharts
drwxr-xr-x. 1 ltinkl ltinkl 102 29. bře 02.26 QtInsightTracker
drwxr-xr-x. 1 ltinkl ltinkl 194 30. bře 10.28 QtLocation
drwxr-xr-x. 1 ltinkl ltinkl 170 30. bře 10.25 QtMultimedia
drwxr-xr-x. 1 ltinkl ltinkl 132 30. bře 10.27 QtNetwork
drwxr-xr-x. 1 ltinkl ltinkl 156 30. bře 10.17 QtPositioning
drwxr-xr-x. 1 ltinkl ltinkl 144 30. bře 10.20 QtProtobuf
drwxr-xr-x. 1 ltinkl ltinkl 188 30. bře 10.27 QtQml
drwxr-xr-x. 1 ltinkl ltinkl 382 30. bře 10.27 QtQuick
drwxr-xr-x. 1 ltinkl ltinkl 24 29. bře 02.30 QtQuickEffectMaker
drwxr-xr-x. 1 ltinkl ltinkl 310 30. bře 10.22 QtQuick3D
drwxr-xr-x. 1 ltinkl ltinkl 192 30. bře 10.27 QtRemoteObjects
drwxr-xr-x. 1 ltinkl ltinkl 160 30. bře 10.22 QtScxml
drwxr-xr-x. 1 ltinkl ltinkl 140 30. bře 10.28 QtSensors
drwxr-xr-x. 1 ltinkl ltinkl 236 30. bře 10.27 QtTest
drwxr-xr-x. 1 ltinkl ltinkl 152 30. bře 10.17 QtTextToSpeech
drwxr-xr-x. 1 ltinkl ltinkl 32 30. bře 10.16 QtWayland
drwxr-xr-x. 1 ltinkl ltinkl 190 30. bře 10.30 QtWebEngine
drwxr-xr-x. 1 ltinkl ltinkl 152 30. bře 10.28 QtWebChannel
drwxr-xr-x. 1 ltinkl ltinkl 144 30. bře 10.19 QtWebSockets
drwxr-xr-x. 1 ltinkl ltinkl 148 30. bře 10.20 QtWebView
drwxr-xr-x. 1 ltinkl ltinkl 70 30. bře 10.20 Qt3D
drwxr-xr-x. 1 ltinkl ltinkl 32 29. bře 00.43 Qt5Compat
~/.../gcc_64/qml$ du -sh . --exclude=*.debug
32M
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not that big :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I built a docker image and got successful builds on linux with these modules
qtwebchannel qtwebview qtwebsockets
qt5compat qtmultimedia qtwebengine
qtpositioning qtserialport qtshadertools
in this PR : #18019
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we can add more modules to the DockerImage as and when needed, for now I think we should stick to QT modules that are absolutely needed for builds to work :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those are runtime modules; so what's sufficient to build the app may not be necessary to actually run the app. Looking at the (very) big complete Docker image, it looks like you're installing all of Qt, including Qt sources and debug info. Can you pls check that this is not the case?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I built a docker image and got successful builds on linux with these modules
qtwebchannel qtwebview qtwebsockets qt5compat qtmultimedia qtwebengine qtpositioning qtserialport qtshadertools
in this PR : #18019
This is not enough to run the app
FYI, we might have an issue while packaging the app with qt6. We rely on |
Referenced issue: * #17639
@markoburcul there's a 6.9.1 that just got released 😉 |
yeah, it would be nice to have an "easy" upgrade option. In an ideal setup we could change the qt version by changing some repo files alone. Not sure it's possible, but for sure a nice to have. If we'll bring the browser back I expect we'll bump the qt version every 2 months or so - depending on how fast qt moves. This means there's a chance we'll have a different qt version in every release. |
That is not doable currently. The Now, if we used Nix that would be possible, since Nix just downloads things into |
Referenced issue:
What does the PR do
Upgrades scripts for installing dependencies on all platforms to install QT 6.9.0
Affected areas
None.
Architecture compliance
My PR is consistent with this document: Status Desktop Architecture Guide
Screenshot of functionality (including design for comparison)