diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..5a0519969 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,60 @@ +name: Build + +on: + workflow_dispatch: + push: + tags: + - 'v*' + +permissions: + contents: write + +jobs: + build: + strategy: + fail-fast: false + matrix: + include: + - platform: windows-latest + target: x86_64-pc-windows-msvc + label: windows-x64 + - platform: windows-latest + target: aarch64-pc-windows-msvc + label: windows-arm64 + - platform: macos-latest + target: aarch64-apple-darwin + label: macos-arm64 + - platform: macos-latest + target: x86_64-apple-darwin + label: macos-x64 + + runs-on: ${{ matrix.platform }} + steps: + - uses: actions/checkout@v4 + + - uses: oven-sh/setup-bun@v2 + + - uses: dtolnay/rust-toolchain@stable + with: + targets: ${{ matrix.target }} + + - name: Install dependencies (Ubuntu) + if: matrix.platform == 'ubuntu-latest' + run: | + sudo apt-get update + sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev + + - run: bun install + + - name: Build Tauri + uses: tauri-apps/tauri-action@v0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY || '' }} + with: + tauriScript: bunx tauri + args: --target ${{ matrix.target }} + tagName: ${{ github.ref_name }} + releaseName: ${{ github.ref_name }} + releaseBody: '' + releaseDraft: true