name: Build Tauri Linux ELF on: push: branches: [ main ] pull_request: jobs: build: runs-on: ubuntu-latest steps: # 1. Checkout repository - name: Checkout repository uses: actions/checkout@v3 # 2. Install Rust toolchain - name: Install Rust uses: actions-rs/toolchain@v1 with: toolchain: stable profile: minimal override: true # 3. Install Linux dependencies for Tauri - name: Install Linux dependencies run: | sudo apt-get update sudo apt-get install -y \ libgtk-3-dev \ libayatana-appindicator3-dev \ librsvg2-dev \ webkit2gtk-4.1 \ build-essential \ curl \ pkg-config \ xdg-utils # 4. Install Tauri CLI - name: Install Tauri CLI run: cargo install tauri-cli # 5. Build Tauri release binary - name: Build Tauri release run: | cd src-tauri cargo tauri build # 6. Upload raw ELF binary - name: Upload ELF binary uses: actions/upload-artifact@v3 with: name: tauri-elf-binary path: src-tauri/target/release/bytechat-desktop # 7. Upload Debian package - name: Upload .deb package uses: actions/upload-artifact@v3 with: name: tauri-deb path: src-tauri/target/release/bundle/deb/*.deb # 8. Upload RPM package - name: Upload .rpm package uses: actions/upload-artifact@v3 with: name: tauri-rpm path: src-tauri/target/release/bundle/rpm/*.rpm # 9. Upload AppImage package - name: Upload AppImage uses: actions/upload-artifact@v3 with: name: tauri-appimage path: src-tauri/target/release/bundle/appimage/*.AppImage