diff --git a/.github/workflows/flathub.yml b/.github/workflows/flathub.yml index 55e0d8ad..f327f16e 100644 --- a/.github/workflows/flathub.yml +++ b/.github/workflows/flathub.yml @@ -4,7 +4,7 @@ on: types: [published] permissions: - contents: write + contents: read jobs: update-flathub: @@ -34,15 +34,6 @@ jobs: - name: Run update-manifest.sh run: bash flatpak/update-manifest.sh "${{ github.event.release.tag_name }}" - - name: Commit metainfo update to app repo - run: | - git config user.name "github-actions[bot]" - git config user.email "github-actions[bot]@users.noreply.github.com" - git add flatpak/app.yaak.Yaak.metainfo.xml - git diff --cached --quiet && echo "No metainfo changes" && exit 0 - git commit -m "Add ${{ github.event.release.tag_name }} to metainfo releases" - git push origin HEAD:main - - name: Checkout Flathub repo uses: actions/checkout@v4 with: @@ -51,15 +42,19 @@ jobs: path: flathub-repo - name: Copy updated files to Flathub repo + env: + VERSION: ${{ github.event.release.tag_name }} run: | cp flatpak/app.yaak.Yaak.yml flathub-repo/ - cp flatpak/app.yaak.Yaak.metainfo.xml flathub-repo/ cp flatpak/cargo-sources.json flathub-repo/ cp flatpak/node-sources.json flathub-repo/ cp LICENSE flathub-repo/ + # Rewrite paths for Flathub repo flat structure sed -i 's|path: \.\./LICENSE|path: LICENSE|' flathub-repo/app.yaak.Yaak.yml sed -i 's|install -Dm644 flatpak/app.yaak.Yaak.metainfo.xml|install -Dm644 app.yaak.Yaak.metainfo.xml|' flathub-repo/app.yaak.Yaak.yml sed -i '/path: LICENSE/a\ # Metainfo file (with release history)\n - type: file\n path: app.yaak.Yaak.metainfo.xml' flathub-repo/app.yaak.Yaak.yml + # Add new release to Flathub metainfo (accumulates over time) + sed -i "s| | \n |" flathub-repo/app.yaak.Yaak.metainfo.xml - name: Commit and push to Flathub working-directory: flathub-repo diff --git a/flatpak/update-manifest.sh b/flatpak/update-manifest.sh index 1676365c..83ff1ee4 100755 --- a/flatpak/update-manifest.sh +++ b/flatpak/update-manifest.sh @@ -8,14 +8,12 @@ # This script: # 1. Updates the git tag and commit in the manifest # 2. Regenerates cargo-sources.json and node-sources.json from the tagged lockfiles -# 3. Adds a new entry to the metainfo set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" MANIFEST="$SCRIPT_DIR/app.yaak.Yaak.yml" -METAINFO="$SCRIPT_DIR/app.yaak.Yaak.metainfo.xml" if [ $# -lt 1 ]; then echo "Usage: $0 " @@ -76,14 +74,8 @@ node -e " flatpak-node-generator --no-requests-cache \ -o "$SCRIPT_DIR/node-sources.json" npm "$TMPDIR/package-lock.json" -# Update metainfo with new release -TODAY=$(date +%Y-%m-%d) -sed -i "s| | \n |" "$METAINFO" -echo "Updated metainfo with release $VERSION." - echo "" echo "Done! Review the changes:" echo " $MANIFEST" -echo " $METAINFO" echo " $SCRIPT_DIR/cargo-sources.json" echo " $SCRIPT_DIR/node-sources.json"