51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
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
|