Flatpak prototype #246
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build CI release | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - flatpak | |
| # paths: | |
| # - 'Quelea/**' | |
| pull_request: | |
| branches: | |
| - master | |
| jobs: | |
| release: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Java | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| java-package: 'jdk+fx' | |
| distribution: 'zulu' | |
| - name: Setup Gradle | |
| uses: gradle/actions/setup-gradle@v4 | |
| - name: Install Wine and Flatpak | |
| run: | | |
| sudo dpkg --add-architecture i386 | |
| sudo apt update | |
| sudo apt install wine wine32 wine64 flatpak flatpak-builder | |
| - name: Setup Inno Setup cache | |
| id: cache-innosetup | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.wine/drive_c/Program Files (x86)/Inno Setup 6 | |
| key: ${{ runner.os }}-innosetup | |
| - name: Install InnoSetup | |
| if: ${{ ! steps.cache-innosetup.outputs.cache-hit }} # || true on Inno Setup update | |
| env: | |
| DISPLAY: :99 | |
| WINEDEBUG: -all,err+all | |
| WINEARCH: win64 | |
| run: | | |
| Xvfb $DISPLAY & | |
| curl -SL "https://files.jrsoftware.org/is/6/innosetup-6.2.2.exe" -o is.exe | |
| wine is.exe /SP- /VERYSILENT /ALLUSERS /SUPPRESSMSGBOXES | |
| - name: Build | |
| run: | | |
| cd Quelea | |
| gradle -Dnightly=true -Dversionsuffix=CI-UNSTABLE clean dist | |
| - name: Cache Flatpak | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| flatpak/repo | |
| flatpak/builddir | |
| key: flatpak | |
| - name: Build Flatpak | |
| run: | | |
| flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo | |
| cd flatpak | |
| flatpak-builder --force-clean --user --install-deps-from=flathub --repo=repo builddir org.quelea.Quelea.yml | |
| flatpak build-bundle repo/ ../Quelea/dist/standalone/quelea-CI-UNSTABLE.flatpak org.quelea.Quelea --runtime-repo=https://flathub.org/repo/flathub.flatpakrepo | |
| - name: Upload binaries to release | |
| if: ${{ github.event_name == 'push' }} | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: Quelea/dist/standalone/* | |
| tag_name: CI-RELEASE | |
| prerelease: true | |
| make_latest: false | |
| body: "**This is a CI Build, built from the latest copy of the source code automatically. | |
| It's not an official release and we don't recommend using this in production.**<br/> | |
| Quelea is also distributed as a Linux snap package. To install it, make | |
| sure snap is installed then run: | |
| <pre>sudo snap install --edge quelea</pre>" | |
| - name: Upload standalones as artifact of PR | |
| if: ${{ github.event_name == 'pull_request' }} | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| path: Quelea/dist/standalone/ |