ci: rilis via API Gitea (ganti action-gh-release) + fix deps build

This commit is contained in:
oxpoe
2026-10-14 21:45:32 +07:00
parent d9b64a5ab5
commit 66894ecdca

View File

@@ -21,7 +21,7 @@ jobs:
run: | run: |
sudo apt-get update sudo apt-get update
sudo apt-get install -y --no-install-recommends \ sudo apt-get install -y --no-install-recommends \
libgl1 libegl1 libxkbcommon0 libdbus-1-3 libfuse2 fuse zsync libgl1 libegl1 libxkbcommon0 libdbus-1-3 libfuse2 fuse zsync libpython3.12
- name: Set up uv - name: Set up uv
uses: astral-sh/setup-uv@v5 uses: astral-sh/setup-uv@v5
@@ -48,32 +48,29 @@ jobs:
cat GAMEMAX-LCD-x86_64.AppImage.sha256 cat GAMEMAX-LCD-x86_64.AppImage.sha256
ls -l ls -l
- name: Publish release - name: Publish release (Gitea API)
uses: softprops/action-gh-release@v2 env:
with: TOKEN: ${{ github.token }}
name: GAMEMAX LCD ${{ github.ref_name }} run: |
generate_release_notes: true API="${GITHUB_API_URL:-${GITHUB_SERVER_URL}/api/v1}"
body: | TAG="${GITHUB_REF_NAME}"
Linux bridge + tray app for the LCD panel of GAMEMAX IceBurg Digital AIO cat > /tmp/body.md <<'EOF'
coolers. Built automatically from `${{ github.sha }}`. Linux bridge + tray app for the LCD panel of GAMEMAX IceBurg Digital AIO coolers.
**Download** `GAMEMAX-LCD-x86_64.AppImage`, then: **Download** `GAMEMAX-LCD-x86_64.AppImage`, then:
```bash ```bash
chmod +x GAMEMAX-LCD-x86_64.AppImage chmod +x GAMEMAX-LCD-x86_64.AppImage
./GAMEMAX-LCD-x86_64.AppImage # tray + window ./GAMEMAX-LCD-x86_64.AppImage
./GAMEMAX-LCD-x86_64.AppImage --selftest # verify the bundle starts ```
```
Device access still needs the udev rule once: Verify with the published SHA-256, or use AppImageUpdate with the `.zsync` asset.
`sudo cp packaging/70-gamemax.rules /etc/udev/rules.d/ && sudo udevadm control --reload` Independent project, not affiliated with the vendor.
EOF
**Integrity:** verify the download with the published SHA-256, or use python3 -c 'import json,sys;print(json.dumps({"tag_name":sys.argv[1],"name":"GAMEMAX LCD "+sys.argv[1],"body":open(sys.argv[2]).read()}))' "$TAG" /tmp/body.md > /tmp/rel.json
`appimageupdatetool`/AppImageUpdate with the `.zsync` asset for delta updates. RID=$(curl -sf -X POST -H "Authorization: token $TOKEN" -H "Content-Type: application/json" "$API/repos/$GITHUB_REPOSITORY/releases" --data @/tmp/rel.json | python3 -c 'import json,sys;print(json.load(sys.stdin)["id"])')
The built-in updater (v1.2.3+) also verifies that checksum before replacing itself. echo "release id=$RID"
for f in dist/GAMEMAX-LCD-x86_64.AppImage dist/GAMEMAX-LCD-x86_64.AppImage.sha256 dist/GAMEMAX-LCD-x86_64.AppImage.zsync; do
Independent project, not affiliated with the vendor — see DISCLAIMER.md. [ -f "$f" ] || continue
files: | curl -sf -X POST -H "Authorization: token $TOKEN" -F "attachment=@$f" "$API/repos/$GITHUB_REPOSITORY/releases/$RID/assets?name=$(basename "$f")" -o /dev/null
dist/GAMEMAX-LCD-x86_64.AppImage done
dist/GAMEMAX-LCD-x86_64.AppImage.sha256
dist/GAMEMAX-LCD-x86_64.AppImage.zsync