diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 0f5409f..11adece 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -135,7 +135,7 @@ jobs: librsvg2-dev \ patchelf \ xdg-utils \ - libfuse2 + squashfs-tools - uses: dtolnay/rust-toolchain@stable @@ -152,18 +152,30 @@ jobs: - name: Install Tauri deps run: npm ci - - name: Stage AppRun for AppImage bundler + - name: Stage AppRun and linuxdeploy for AppImage bundler run: | mkdir -p ~/.cache/tauri cp tools/AppRun-x86_64 ~/.cache/tauri/AppRun-x86_64 chmod +x ~/.cache/tauri/AppRun-x86_64 + # Pre-extract linuxdeploy AppImage so it runs without FUSE in Docker + wget -q \ + "https://github.com/tauri-apps/binary-releases/releases/download/linuxdeploy/linuxdeploy-x86_64.AppImage" \ + -O /tmp/linuxdeploy.AppImage + OFFSET=$(python3 -c " +d=open('/tmp/linuxdeploy.AppImage','rb').read() +o=d.find(b'hsqs') +print(o if o!=-1 else d.find(b'sqsh')) +") + unsquashfs -d /tmp/linuxdeploy-root -offset "$OFFSET" /tmp/linuxdeploy.AppImage + printf '#!/bin/sh\nexec /tmp/linuxdeploy-root/AppRun "$@"\n' \ + > ~/.cache/tauri/linuxdeploy-x86_64.AppImage + chmod +x ~/.cache/tauri/linuxdeploy-x86_64.AppImage - name: Build env: TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }} TAURI_SIGNING_PRIVATE_KEY_PASSWORD: '' NODE_OPTIONS: '--max_old_space_size=4096' - APPIMAGE_EXTRACT_AND_RUN: '1' run: npm run tauri -- build --bundles appimage,deb - name: Upload to release