Skip to content

Add Flatpak aarch64 builds#8105

Closed
tytan652 wants to merge 4 commits intoobsproject:masterfrom
tytan652:flatpak_aarch64
Closed

Add Flatpak aarch64 builds#8105
tytan652 wants to merge 4 commits intoobsproject:masterfrom
tytan652:flatpak_aarch64

Conversation

@tytan652
Copy link
Copy Markdown
Collaborator

@tytan652 tytan652 commented Jan 21, 2023

Description

Depends on:

Add aarch64 to the manifest:

Disable SVT-AV1 on non-x86_64 and add CEF arm64, both setup with shell commands to avoid duplicating modules.

Add aarch64 to CIs:

Building through QEMU emulation is really slow. So to avoid timing out
the job (6h), the original job is split in two.

The first job build dependencies (4-5h), if the cache already exist the
build is skipped.

And the second job build CEF and OBS Studio by relying on the cache of the
first job (2-3h).

This separation is done by modifying the manifest in the first job to
build only dependencies with a fake "obs" module/command.

aarch64 builds are not enabled by default on the main workflow, it can
be enabled with a dedicated label on PRs.

Motivation and Context

Publish Flatpak aarch64 builds.

How Has This Been Tested?

CI with a PR on my fork: tytan652#8 (aarch64 artifacts availlable)

Types of changes

  • CI

Checklist:

  • My code has been run through clang-format.
  • I have read the contributing document.
  • My code is not on the master branch.
  • The code has been tested.
  • All commit messages are properly formatted and commits squashed where appropriate.
  • I have included updates to all appropriate documentation.

@tytan652 tytan652 added kind/enhancement Enhancements are not bugs or new features but can improve usability or performance. area/ci labels Jan 21, 2023
Comment thread .github/workflows/flatpak.yml Outdated
Comment on lines +94 to +169
ostree commit --repo=repo --canonical-permissions --branch=screenshots/x86_64 flatpak_app/screenshots
ostree commit --repo=repo --canonical-permissions --branch=screenshots/${{ matrix.arch }} flatpak_app/screenshots
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@GeorgesStavracas is this good ?

Comment thread .github/workflows/main.yml Outdated
Comment on lines +85 to +78
if test -n "$(curl -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" -s "${{ github.event.pull_request.url }}" | jq -e '.labels[] | select(.name == "Flatpak aarch64")')"; then
echo 'flatpak_matrix=["x86_64", "aarch64"]' >> $GITHUB_OUTPUT
else
echo 'flatpak_matrix=["x86_64"]' >> $GITHUB_OUTPUT
fi
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is Flatpak aarch64 a good label name to enable aarch64 build on PRs ?

@tytan652 tytan652 marked this pull request as ready for review February 17, 2023 12:26
@tytan652 tytan652 force-pushed the flatpak_aarch64 branch 2 times, most recently from 4a5b354 to 8610b91 Compare February 17, 2023 14:33
@tytan652
Copy link
Copy Markdown
Collaborator Author

NOTE for self: add an option to the upstream action to use flatpak-builder option --stop-at=MODULENAME

@tytan652 tytan652 force-pushed the flatpak_aarch64 branch 2 times, most recently from ffec62e to 52fdeb2 Compare February 19, 2023 11:42
@tytan652 tytan652 marked this pull request as draft February 23, 2023 19:40
@tytan652
Copy link
Copy Markdown
Collaborator Author

Drafted waiting for PRs on flatpak action being reviewed and merged.

@tytan652 tytan652 force-pushed the flatpak_aarch64 branch 5 times, most recently from 196206e to d0c10e9 Compare March 27, 2023 21:14
@tytan652 tytan652 force-pushed the flatpak_aarch64 branch 3 times, most recently from 6a4e7d1 to 20b7fff Compare March 29, 2023 07:32
@Conan-Kudo
Copy link
Copy Markdown
Contributor

Disable SVT-AV1 on non-x86_64

SVT-AV1 builds on AArch64 just fine. We build it in Fedora for all architectures.

@tytan652
Copy link
Copy Markdown
Collaborator Author

tytan652 commented Aug 29, 2023

SVT-AV1 builds on AArch64 just fine. We build it in Fedora for all architectures.

When the PR was made, SVT-AV1 repo was explicitly stating that only x86_64 was supported, it has indeed changed since then.

Note, that PR is under a heavy rewrite.

@tytan652
Copy link
Copy Markdown
Collaborator Author

tytan652 commented Dec 9, 2023

Closed over #9979

@tytan652 tytan652 closed this Dec 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ci kind/enhancement Enhancements are not bugs or new features but can improve usability or performance.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants