name: Setup Nix description: Installs nix, sets up cachix and installs a subset of tooling. inputs: authToken: description: Token to pass to cachix tools: description: Tools to install with nix-env -iA cache-id: description: Cache id to use for cache-nix-action default: "default" runs: using: composite steps: - uses: nixbuild/nix-quick-install-action@v26 with: nix_version: '2.13.6' - name: Restore and cache Nix store uses: nix-community/cache-nix-action@v4.0.3 with: key: cache-nix-${{ runner.os }}-id-${{ inputs.cache-id }}-${{ hashFiles('nix/**/*.nix', '.github/actions/setup-nix/*') }} restore-keys: | cache-nix-${{ runner.os }}-common- - uses: cachix/cachix-action@v13 with: name: postgrest authToken: ${{ inputs.authToken }} - if: ${{ inputs.tools }} run: nix-env -f default.nix -iA ${{ inputs.tools }} shell: bash