flatpak-test #3
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: flatpak-test | |
| on: | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| build-flatpak: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| lfs: true | |
| - name: Checkout Flathub manifest repo | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| repository: Open-VCS/flathub | |
| path: flathub | |
| - name: Setup Node | |
| uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 | |
| with: | |
| node-version: '24' | |
| cache: 'npm' | |
| cache-dependency-path: Frontend/package-lock.json | |
| - name: Install frontend deps | |
| working-directory: Frontend | |
| run: npm ci | |
| - name: Build frontend | |
| working-directory: Frontend | |
| run: npm run build | |
| - name: Install Linux build deps | |
| shell: bash | |
| run: | | |
| set -euxo pipefail | |
| sudo apt-get update | |
| sudo apt-get install -y libappindicator3-dev librsvg2-dev patchelf | |
| sudo apt-get install -y libwebkit2gtk-4.1-dev || sudo apt-get install -y libwebkit2gtk-4.0-dev | |
| - name: Install Flatpak tooling | |
| shell: bash | |
| run: | | |
| set -euxo pipefail | |
| sudo apt-get update | |
| sudo apt-get install -y --no-install-recommends flatpak flatpak-builder appstream elfutils | |
| flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo | |
| flatpak install --user -y flathub org.gnome.Platform//49 org.gnome.Sdk//49 | |
| flatpak install --user -y flathub org.freedesktop.Sdk.Extension.rust-stable//25.08 \ | |
| || flatpak install --user -y flathub org.freedesktop.Sdk.Extension.rust-stable//24.08 \ | |
| || flatpak install --user -y flathub org.freedesktop.Sdk.Extension.rust-stable | |
| flatpak install --user -y flathub org.freedesktop.Sdk.Extension.node24//25.08 \ | |
| || flatpak install --user -y flathub org.freedesktop.Sdk.Extension.node24//24.08 | |
| - name: Build Flatpak bundle | |
| shell: bash | |
| run: | | |
| set -euxo pipefail | |
| yq eval '(.modules[] | select(.name == "openvcs-backend") | ."build-options".env.OPENVCS_OFFICIAL_RELEASE) = "1"' -i flathub/io.github.jordonbc.OpenVCS.yml | |
| flatpak-builder --user --force-clean --repo=repo build-flatpak flathub/io.github.jordonbc.OpenVCS.yml | |
| flatpak build-bundle repo OpenVCS-test.flatpak io.github.jordonbc.OpenVCS | |
| - name: Upload Flatpak artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: OpenVCS-flatpak-test | |
| path: OpenVCS-test.flatpak |