name: 'setup' description: 'Setup project dependencies' inputs: backend: description: 'Whether to setup backend dependencies' required: false default: 'true' frontend: description: 'Whether to setup frontend dependencies' required: false default: 'true' skip-wails: description: 'Whether to skip Wails installation' required: false default: 'false' runs: using: 'composite' steps: - uses: actions/setup-go@v5 with: go-version: 1.22 - uses: pnpm/action-setup@v3 if: ${{ inputs.frontend == 'true' }} with: version: 8.6.1 - uses: actions/setup-node@v4 if: ${{ inputs.frontend == 'true' }} with: node-version: 18 cache: 'pnpm' cache-dependency-path: frontend - name: Install Wails if: ${{ inputs.backend == 'true' && inputs.skip-wails != 'true' }} shell: bash run: go install github.com/wailsapp/wails/v2/cmd/wails@v2.10.2 # Any go operation on linux will require these - name: Install additional dependencies if: ${{ runner.os == 'Linux' && inputs.backend == 'true' }} shell: bash run: | sudo apt update sudo apt -y install libgtk-3-dev libwebkit2gtk-4.1-dev patchelf librsvg2-dev