name: CI on: push: branches: [main] pull_request: concurrency: group: ${{ gitea.workflow }}-${{ gitea.head_ref || gitea.sha }} cancel-in-progress: true defaults: run: shell: bash jobs: flake-check: runs-on: native strategy: fail-fast: false matrix: system: [x86_64-linux, aarch64-linux] timeout-minutes: 30 steps: - uses: actions/checkout@v4 - name: Install Nix run: | curl -L https://nixos.org/nix/install | sh -s -- --no-daemon mkdir -p "$HOME/.config/nix" echo 'experimental-features = nix-command flakes' >> "$HOME/.config/nix/nix.conf" # shellcheck disable=SC1091 source "$HOME/.nix-profile/etc/profile.d/nix.sh" - name: Flake check (${{ matrix.system }}) run: | # shellcheck disable=SC1091 source "$HOME/.nix-profile/etc/profile.d/nix.sh" nix flake check --no-build --system ${{ matrix.system }} pre-commit: runs-on: native strategy: fail-fast: false matrix: system: [x86_64-linux, aarch64-linux] timeout-minutes: 20 steps: - uses: actions/checkout@v4 - name: Install Nix run: | curl -L https://nixos.org/nix/install | sh -s -- --no-daemon mkdir -p "$HOME/.config/nix" echo 'experimental-features = nix-command flakes' >> "$HOME/.config/nix/nix.conf" # shellcheck disable=SC1091 source "$HOME/.nix-profile/etc/profile.d/nix.sh" - name: Pre-commit checks (${{ matrix.system }}) run: | # shellcheck disable=SC1091 source "$HOME/.nix-profile/etc/profile.d/nix.sh" nix build .#checks.${{ matrix.system }}.pre-commit