name: Build Flatpak on: push: branches: [ main ] tags: [ '*' ] pull_request: branches: [ main ] jobs: flatpak: name: Build Flatpak runs-on: ubuntu-latest steps: - name: Checkout Code run: git clone --depth 1 http://gitea.service:3000/secstate/Notify.git . - name: Install Flatpak Tools run: | sudo apt-get update sudo apt-get install -y flatpak flatpak-builder - name: Add Flathub run: flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo - name: Install Runtimes run: | flatpak --user install -y flathub org.gnome.Platform//48 org.gnome.Sdk//48 - name: Build Flatpak run: | rm -rf .flatpak-builder build-dir repo _build flatpak-builder --disable-rofiles-fuse --force-clean --user --install-deps-from=flathub --repo=repo build-dir build-aux/com.ranfdev.Notify.Devel.json 2>&1 - name: Build Bundle run: | # Create a single .flatpak file for distribution flatpak build-bundle repo my-app.flatpak com.ranfdev.Notify.Devel - name: Validate AppStream run: | # Optional: Check metadata validity flatpak run org.freedesktop.appstream-cli validate --nonet my-app.flatpak || true - name: Upload Artifact uses: actions/upload-artifact@v4 with: name: flatpak-bundle path: my-app.flatpak