Repository navigation
Add commercial support, fix WASM and issues with Qt 6.7.+ - #272
Conversation
… as host and 'wasm' as target
|
@Kidev const isAutodesktopSupported = async (): Promise<boolean> => {
const rawOutput = await getPythonOutput("aqt", ["version"]);
const match = rawOutput.match(/aqtinstall\(aqt\)\s+v(\d+\.\d+\.\d+)/);
return match ? compareVersions(match[1], ">=", "3.0.0") : false;
};The problem is, if you point Right now as you discovered, one either needs to pass |
|
Indeed, I'll remove it from the README and such then. In the meantime I got it all working, as you can see in this workflow file of a project of mine. You can check the latest run here. You can use it right now if you need to, no need to wait for either PRs: - name: Install Qt for host architecture
uses: Kidev/install-qt-action@v4.2.0
with:
version: '6.8.1'
host: 'all_os'
target: 'wasm'
arch: 'wasm_singlethread'
set-env: 'true'
modules: 'qtquick3d'
aqtsource: 'git+https://github.com/Kidev/aqtinstall.git@wasm'
extra: '--autodesktop' |
|
@Kidev My application depends on Qt Quick, and this doesn't seem to properly install it for WASM or Android. Here's my config: Why is Quick not getting installed? Actually, scrolling up, it can't find Qt core... ...because it can't find Qt6CoreTools. |
|
Nevermind, I had the wrong host paths set in my configure command. |
|
The PR fixing WASM and more was merged into master and aqtinstall will soon release its version 3.2.0 including those changes. For it to work, I updated the default value of Note Until the release 3.2.0 of Note Once the release 3.2.0 of |
|
https://github.com/miurahr/aqtinstall/blob/master/pyproject.toml#L29 |
|
BTW: I have PR #267 Open for the |
It is a good idea, I also have updated it in my latest update, along with py7zr. It is not yet ready for this PR, still need some testing, but I'm working on getting commercial versions available to the installation using this Action (miurahr/aqtinstall#878 https://github.com/Kidev/install-qt-action). Here you can see a successful install of Qt using the |
|
Added working support for Qt commercial. You can see an example using my version of the workflow You can use it right now yourself like this, until this PR is merged: - name: Install Qt
uses: Kidev/install-qt-action@v4.4.2
with:
version: '6.8.1'
target: 'desktop'
arch: 'linux_gcc_64'
aqtsource: 'git+https://github.com/miurahr/aqtinstall'
use-commercial: true
user: ${{ secrets.QT_USERNAME }}
password: ${{ secrets.QT_PASSWORD }}
modules: 'qtquick3d' |
|
Fixed the issue after the re-sync, and some force push shenanigans to run the workflows on my repo too |
|
Update: @jurplel almost all tests pass on my repo. There are issues with the The commercial PR can be found here for more info. Caution The docs and some commands have changed, I'll update this soon, along with some tests |
|
There seems to have been an update on the Qt repos, the name of the installer have been changed (online installer v4.9). I pushed a fix in Until this gets merged, you can use aqtsource: 'git+https://github.com/Kidev/aqtinstall.git@official_ux'Here it is in action: [workflow] [run]. Also Qt 6.8.3 does not exist yet, I'm changing it to 6.8.2. For the Updated the top post to make it able to be used as documentation. |
Got delayed until start of next week -> https://lists.qt-project.org/pipermail/releasing/2025-March/003048.html Blocker from mailing list has now been resolved -> https://bugreports.qt.io/browse/QTBUG-134289 |
|
off-topic: any options for FOSS to use Qt 5.15.16/Qt 6.5.5 etc.? |
KDE maintains these older versions afaict, I'm not sure if they provide anything other than Linux builds however. |
vcpkg provides latest Qt 5 (Qt 5.15.16) & latest Qt6 (Qt 6.8.x) Just thought there may be another way via this action to support installing Qt 5.15.16 or indeed Qt 6.5.5 on windows via official installer......not a big deal (no pre-existing compiled binaries available) |
|
Good opportunity for someone to host binary installers with the KDE builds. |
You can install those versions using the official installer, you just need a paid account. - name: Install Qt 6.5.5 Windows on 'windows-2019'
uses: jurplel/install-qt-action@v4
with:
version: '6.5.5'
target: 'desktop'
arch: 'win64_msvc2019_64'
use-official: true
email: ${{ secrets.QT_USERNAME }}
pw: ${{ secrets.QT_PASSWORD }}
modules: 'all'- name: Install Qt 5.15.16 Linux on 'ubuntu-24.04'
uses: jurplel/install-qt-action@v4
with:
version: '5.15.16'
target: 'desktop'
arch: 'gcc_64'
use-official: true
email: ${{ secrets.QT_USERNAME }}
pw: ${{ secrets.QT_PASSWORD }}
modules: 'all'With a open-source account you cannot, and building Qt is outside the scope of
I would not advise this, as it would be a massive security concern |
|
@Kidev Thanks! |
|
Binaries for Qt 6.8.3 are showing now as being available: https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt6_683/qt6_683/ |
Still needs to be changed, Line 311 of this PR |
|
@xavier2k6 Will change |
|
@Kidev for the cache to be updated, you'll need to update the dependencies in EDIT: EDIT 2: |
|
@Kidev I think I did something like I think your problem is since |
|
Thanks @xavier2k6 @jdpurcell.
Oh that's it for sure, that's a sneaky error that already happened to me a while back for something else, a sneaky .gitignore mistake. Nice catch! And since I'm not familiar with typescript errors (I use JS but it's for QML aha), I was not able to pinpoint the error because I assumed the whole node_modules dir was pushed... But yeah the release process had me really confused when I first wanted to share PRs aha |
|
Everything's done.
|
|
I have re-synced with master to limit the python version, so now all checks of the CI pass again (CI CI-android) |

This PR includes
aqtinstallversions, making the action once again able to install any version of Qt, WASM and extensions included (aqtinstall>=3.2.0)aqtinstall>=3.2.2)Context
Since Qt 6.7+, the Qt team decided to make WASM a part of
all_osas host, with targetwasm. This is sensible as the WASM version of Qt cannot work on its own and needs a host. To install Qt WASM for the latest versions, thehostandtargetvalues must be edited. See examples.This change is required by the latest versions of
aqtinstall(>=3.2.0)Examples:
Tip
Click [run] to see a successful Github Action run using each example
Click [workflow] to see the corresponding workflow
Latest Qt WASM [run] [workflow]
Notice
hostandtarget. Since--autodesktopis always implied, this will download WASM for the current OS (so this will downloadlinux_gcc_64andwasm_singlethreadif ran onlinux).Qt commercial [run] [workflow]:
Notice the absence of
host: the official installer only installs using the current OS ashost. If provided, it will be ignored. You should use secrets for the login information. This will downloadlinux_gcc_64forlinuxusing the official installer. If you own a paid Qt license, you can use a commercial only version in theversionfield, and it will work.Qt commercial WASM [run] [workflow]
Same as the previous one,
hostis implied. For the official installer however, there is no--autodesktop. Instead, themodulesfield get a widened meaning, and includes all Qt packages. So this example will install Qt forlinux(implied to be thehost), for the WASM host architecturelinux_gcc_64, and will download thewasm_singlethreadpackage (considered the target) along withqtquick3dfor both.