name: Build on: push: branches: ["main"] jobs: build: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 20 cache: "npm" - name: Install Linux dependencies if: matrix.os == 'ubuntu-latest' run: | sudo apt-get update sudo apt-get install -y \ libgtk-3-dev \ libwebkit2gtk-4.0-dev \ libayatana-appindicator3-dev \ librsvg2-dev \ python3 \ make \ g++ \ build-essential - name: Install dependencies run: npm ci - name: Build run: npm run make - name: Upload artifacts uses: actions/upload-artifact@v4 with: name: build-${{ matrix.os }} path: out/make/**/* if-no-files-found: error