name: Lint on: push: branches: [ main ] pull_request: branches: [ main ] jobs: shellcheck: runs-on: ubuntu-latest steps: - name: "Checkout" uses: "actions/checkout@v4" - name: "Install Nix" uses: "cachix/install-nix-action@v23" with: { "extra_nix_config": "access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}" } - name: "Run Shellcheck" run: "nix develop --command bash -c \"find . -type f -name '*.sh' | xargs shellcheck\"" format: runs-on: "ubuntu-latest" steps: - name: "Checkout" uses: "actions/checkout@v4" - name: "Install Nix" uses: "cachix/install-nix-action@v23" with: { "extra_nix_config": "access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}" } - name: "Run Alejandra" run: "nix develop --command alejandra --check ." flake-check: runs-on: "ubuntu-latest" steps: - name: "Checkout" uses: "actions/checkout@v4" - name: "Install Nix" uses: "cachix/install-nix-action@v23" with: { "extra_nix_config": "access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}" } - name: "Check flake" run: "nix flake check --all-systems" all-required-checks-complete: runs-on: "ubuntu-latest" steps: - run: "echo \"All required checks complete.\"" needs: - "shellcheck" - "format" - "flake-check"