Update app and Tauri icons for multiple platforms #7
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Release | |
| on: | |
| push: | |
| tags: | |
| - "v*" | |
| workflow_dispatch: | |
| inputs: | |
| version: | |
| description: "Version tag (e.g., v0.1.0)" | |
| required: false | |
| default: "" | |
| env: | |
| CARGO_TERM_COLOR: always | |
| permissions: | |
| contents: write | |
| jobs: | |
| publish-tauri: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - platform: "macos-latest" | |
| args: "--target aarch64-apple-darwin" | |
| - platform: "macos-latest" | |
| args: "--target x86_64-apple-darwin" | |
| runs-on: ${{ matrix.platform }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install Rust stable | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| targets: aarch64-apple-darwin,x86_64-apple-darwin | |
| - name: Rust cache | |
| uses: swatinem/rust-cache@v2 | |
| with: | |
| workspaces: "./src-tauri -> target" | |
| - name: Install frontend dependencies | |
| run: bun install | |
| - name: Build and release with tauri-action | |
| uses: tauri-apps/tauri-action@v0 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| tagName: ${{ github.event.inputs.version || github.ref_name }} | |
| releaseName: "Seer ${{ github.event.inputs.version || github.ref_name }}" | |
| releaseBody: | | |
| ## Seer ${{ github.event.inputs.version || github.ref_name }} | |
| A desktop application for media file management, metadata editing, codec detection, and re-encoding. | |
| **Seer** (Tamil: சீர்) - to prune, order, uniformity, neatness. | |
| --- | |
| ### 📦 Downloads | |
| | Platform | Architecture | File | | |
| |----------|--------------|------| | |
| | macOS | Apple Silicon (M1/M2/M3) | `Seer_*_aarch64.dmg` | | |
| | macOS | Intel | `Seer_*_x64.dmg` | | |
| --- | |
| ### 👨💻 Developer | |
| **Imran** | |
| - 🌐 Website: [imran.codes](https://imran.codes) | |
| - ☕ Support: [Buy Me a Coffee](https://buymeacoffee.com/imran.vz) | |
| - 🐙 GitHub: [@imran-vz](https://github.com/imran-vz) | |
| --- | |
| ### 📋 Requirements | |
| - **FFmpeg** - Required for media analysis | |
| - **ExifTool** - Optional, for image metadata | |
| --- | |
| ### 📄 License | |
| MIT License | |
| releaseDraft: true | |
| prerelease: false | |
| args: ${{ matrix.args }} | |
| build-tarball: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Get version | |
| id: get_version | |
| run: | | |
| if [ "${{ github.event_name }}" = "workflow_dispatch" ] && [ -n "${{ github.event.inputs.version }}" ]; then | |
| VERSION="${{ github.event.inputs.version }}" | |
| else | |
| VERSION="${GITHUB_REF#refs/tags/}" | |
| fi | |
| echo "version=$VERSION" >> $GITHUB_OUTPUT | |
| - name: Create source tarball | |
| run: | | |
| VERSION="${{ steps.get_version.outputs.version }}" | |
| VERSION_NUM="${VERSION#v}" | |
| # Create a clean directory for the tarball | |
| mkdir -p "seer-${VERSION_NUM}" | |
| # Copy relevant files (excluding node_modules, target, dist, etc.) | |
| rsync -av --progress . "seer-${VERSION_NUM}" \ | |
| --exclude "seer-${VERSION_NUM}" \ | |
| --exclude '.git' \ | |
| --exclude 'node_modules' \ | |
| --exclude 'src-tauri/target' \ | |
| --exclude 'dist' \ | |
| --exclude '.DS_Store' \ | |
| --exclude '*.log' | |
| # Create tarball | |
| tar -czvf "seer-${VERSION_NUM}.tar.gz" "seer-${VERSION_NUM}" | |
| # Create checksum | |
| sha256sum "seer-${VERSION_NUM}.tar.gz" > "seer-${VERSION_NUM}.tar.gz.sha256" | |
| - name: Upload tarball to Release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| tag_name: ${{ steps.get_version.outputs.version }} | |
| draft: true | |
| files: | | |
| seer-*.tar.gz | |
| seer-*.tar.gz.sha256 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |