diff --git a/.github/workflows/flatpak-template.yml b/.github/workflows/flatpak-template.yml new file mode 100644 index 00000000000..773bc489f97 --- /dev/null +++ b/.github/workflows/flatpak-template.yml @@ -0,0 +1,30 @@ +name: Flatpak Build + +on: + workflow_call: + inputs: + arch: + required: true + type: string + runner_labels: + required: true + type: string + +jobs: + flatpak: + runs-on: ${{ fromJSON(inputs.runner_labels) }} + + container: + image: ghcr.io/flathub-infra/flatpak-github-actions:kde-6.9 + options: --privileged + + steps: + - uses: actions/checkout@v4 + - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 + with: + bundle: Ladybird.flatpak + manifest-path: Meta/CMake/flatpak/org.ladybird.Ladybird.json + cache: 'true' + arch: ${{ inputs.arch }} + # Note: default cache key is 'flatpak-builder-${arch}-${sha256(manifestPath)}' + upload-artifact: 'true' diff --git a/.github/workflows/nightly-lagom.yml b/.github/workflows/nightly-lagom.yml index 5850c4d65ee..201c5d3731e 100644 --- a/.github/workflows/nightly-lagom.yml +++ b/.github/workflows/nightly-lagom.yml @@ -77,3 +77,22 @@ jobs: arch: ${{ matrix.arch }} build_preset: ${{ matrix.build_preset }} clang_plugins: ${{ matrix.clang_plugins }} + + flatpak: + if: github.repository == 'LadybirdBrowser/ladybird' + name: Flatpak ${{ matrix.arch }} + strategy: + fail-fast: false + matrix: + arch: [ 'x86_64' ] + runner_labels: [ '["blacksmith-8vcpu-ubuntu-2404"]' ] + + include: + - arch: 'aarch64' + runner_labels: '["blacksmith-8vcpu-ubuntu-2404-arm"]' + + secrets: inherit + uses: ./.github/workflows/flatpak-template.yml + with: + arch: ${{ matrix.arch }} + runner_labels: ${{ matrix.runner_labels }}