name: "Publish" on: workflow_dispatch env: CARGO_INCREMENTAL: 0 RUST_BACKTRACE: short RUSTFLAGS: "-W unreachable-pub -W rust-2021-compatibility" jobs: publish-tauri: strategy: fail-fast: false matrix: include: - platform: "macos-latest" # for Arm based macs (M1 and above). args: "--target aarch64-apple-darwin" - platform: "macos-latest" # for Intel based macs. args: "--target x86_64-apple-darwin" - platform: "macos-latest" # for Intel & Arm based macs. args: "--target universal-apple-darwin" - platform: 'windows-latest' args: '--target x86_64-pc-windows-msvc' runs-on: ${{ matrix.platform }} steps: - uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: node-version: "lts/*" - name: Install PNPM uses: pnpm/action-setup@v2 with: version: 8.x.x run_install: false - name: Install Rust uses: dtolnay/rust-toolchain@stable with: targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }} - name: Install dependencies (ubuntu only) if: matrix.platform == 'ubuntu-22.04' run: | sudo apt-get update sudo apt-get install -y build-essential libssl-dev javascriptcoregtk-4.1 libayatana-appindicator3-dev libsoup-3.0-dev libgtk-3-dev libwebkit2gtk-4.1-dev webkit2gtk-4.1 librsvg2-dev patchelf - name: Install frontend dependencies run: pnpm install - uses: tauri-apps/tauri-action@dev env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} ENABLE_CODE_SIGNING: ${{ secrets.APPLE_CERTIFICATE }} APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }} APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} APPLE_SIGNING_IDENTITY: ${{ secrets.APPLE_SIGNING_IDENTITY }} APPLE_ID: ${{ secrets.APPLE_ID }} APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} with: tagName: v__VERSION__ releaseName: "v__VERSION__" releaseBody: "See the assets to download this version and install." releaseDraft: true prerelease: false args: ${{ matrix.args }} includeDebug: false