name: ci

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

jobs:
  test:
    name: nix flake check --all-systems
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: cachix/install-nix-action@v27
      with:
        extra_nix_config: "extra-platforms = aarch64-linux"
    - run: nix flake check --all-systems
  format:
    name: nix fmt -- --check **/*.nix
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: cachix/install-nix-action@v27
      - run: nix fmt -- --check **/*.nix
  example:
    name: nix flake check ./example
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: cachix/install-nix-action@v27
      - run: cp ./hosts/laptop/hardware-configuration.nix ./example/hardware-configuration.nix
      - run: git add .
      - run: nix flake check ./example --no-write-lock-file --override-input nix-config "git+file://$(pwd | sed -e 's/\s/%20/g')?shallow=1"
