Add official aarch64 release builds to deploy workflow#463
Add official aarch64 release builds to deploy workflow#463permafrost06 wants to merge 8 commits intoOpenBangla:developfrom
Conversation
The package filename was being set before CPACK_PACKAGE_NAME was defined, resulting in packages named for example '_3.0.0-distro.rpm' instead of 'ibus-openbangla_3.0.0-distro.rpm'.
QWindow::startSystemMove() was added in Qt 5.15, but Ubuntu 20.04 ships with Qt 5.12. Use preprocessor check to conditionally compile this code.
mominul
left a comment
There was a problem hiding this comment.
Thanks! Let's deduplicate the platform code.
| ui->buttonIcon->setCursor(Qt::ArrowCursor); | ||
| } else if(this->windowHandle()->startSystemMove()){ | ||
| } | ||
| #if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) |
There was a problem hiding this comment.
We now hard depend on Qt 5.15, so lets remove this check and remove the builders that don't have 5.15
| runs-on: ${{ matrix.platform }} | ||
| container: | ||
| image: ${{ matrix.container }} | ||
| image: ${{ matrix.platform == 'ubuntu-24.04-arm' && format('arm64v8/{0}', matrix.container) || matrix.container }} |
There was a problem hiding this comment.
Why do we need to specify arm64v8 explicitly? Isn't it the default that if the host platform is arm64 the docker images will be automatically arm64 based?
There was a problem hiding this comment.
You're right - this is unnecessary. I'll fix it.
This reverts commit f7e6477. Qt 5.15 is a hard dependency - remove the builders that don't have Qt 5.15 instead.
|
The opensuse tumbleweed build is failing for some reason. I haven't tried a lot to fix it because I'm not very familiar with opensuse. I've removed the opensuse builder so that the workflow runs correctly and I can test the built packages. How should this be addressed? |
This adds official aarch64 release builds to the deploy workflow so ARM64 users can download prebuilt artifacts instead of building from source.
I've split x86_64 and aarch64 into separate jobs.
I also had to add two commits to fix issues: one for broken package filenames caused by
CPACK_PACKAGE_FILE_NAMEbeing set beforeCPACK_PACKAGE_NAME, and one for a Qt 5.15+ API used on older Qt versions in CI. I am not very experienced in this area, so please review those two fixes. Please also provide feedback on if the code fits the style of this codebase (e.g. using macros to determine qt version).The built packages can be seen here in a workflow run.
EDIT: I've only tested the fedora 41 package on Fedora Asahi Remix (Apple M1)
Fixes #461
Fixes #408