name: "publish desktop apps" on: push: tags: - "desktop-app-v*" workflow_dispatch: jobs: publish-tauri: permissions: contents: write strategy: fail-fast: false matrix: platform: [macos-latest, ubuntu-20.04, windows-latest] runs-on: ${{ matrix.platform }} steps: - name: 🚚 Checkout uses: actions/checkout@v3 - name: 🐍 Use Python 3.x uses: actions/setup-python@v3.1.4 with: python-version: 3.x cache: pip - name: ⏬ Install Python dependencies run: pip install -r requirements.txt - name: 🐉 Use Node.js 18.16.x uses: actions/setup-node@v3 with: node-version: 18.16.x cache: "npm" - name: 🦀 Use Rust Stable uses: dtolnay/rust-toolchain@stable - name: 🐧 Install Linux Dependencies if: matrix.platform == 'ubuntu-20.04' run: | sudo apt-get update sudo apt-get install -y libudev-dev libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf - name: ⏬ Install Node dependencies run: npm ci - name: 🔥 Optimize icon font run: npm run minify-icons - name: 📦 Build, Package & Release uses: tauri-apps/tauri-action@v0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} with: tagName: v__VERSION__ # the action automatically replaces \_\_VERSION\_\_ with the app version releaseName: "App v__VERSION__" releaseBody: "See the assets to download this version and install." releaseDraft: true prerelease: false