feat: Enhance system dependency installation in Tauri CI to skip miss… #4
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: Tauri CI | |
| on: | |
| push: | |
| branches: [main, master] | |
| pull_request: | |
| branches: [main, master] | |
| jobs: | |
| tauri: | |
| name: Tauri build and tests | |
| runs-on: ubuntu-latest | |
| env: | |
| PKG_CONFIG_PATH: /usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: "18" | |
| - name: Install Node dependencies | |
| run: npm ci | |
| - name: Build web assets | |
| run: npm run build --if-present | |
| - name: Install system dependencies (skip missing packages) | |
| run: | | |
| sudo apt-get update | |
| set -euo pipefail | |
| PACKAGES=( | |
| pkg-config | |
| libglib2.0-dev | |
| libgtk-3-dev | |
| libgdk-pixbuf2.0-dev | |
| libsecret-1-dev | |
| libwebkit2gtk-4.0-dev | |
| ) | |
| for pkg in "${PACKAGES[@]}"; do | |
| if apt-cache show "$pkg" >/dev/null 2>&1; then | |
| echo "Installing $pkg" | |
| sudo apt-get install -y --no-install-recommends "$pkg" | |
| else | |
| echo "Package $pkg not found in apt repositories; skipping." | |
| fi | |
| done | |
| echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH" | |
| if pkg-config --exists gdk-3.0; then | |
| echo "pkg-config: gdk-3.0 found" | |
| else | |
| echo "pkg-config: gdk-3.0 NOT found" | |
| echo "Available pkg-config search paths:" && pkg-config --variable pc_path pkg-config || true | |
| fi | |
| - name: Install Rust toolchain | |
| uses: actions-rs/toolchain@v1 | |
| with: | |
| toolchain: stable | |
| override: true | |
| - name: Build Tauri (Rust) | |
| working-directory: src-tauri | |
| run: cargo build --verbose | |
| - name: Run Rust tests | |
| working-directory: src-tauri | |
| run: cargo test --verbose |