name: Nix on: push: branches: - master pull_request: workflow_dispatch: schedule: # Run once per day - cron: '0 0 * * *' jobs: build: strategy: # Keep building the other channels if one fails fail-fast: false matrix: channel: - nixos-unstable - nixos-23.05 - nixos-23.11 - nixos-24.05 system: - x86_64-linux - aarch64-linux runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up QEMU uses: docker/setup-qemu-action@v3 with: platforms: arm64 - uses: DeterminateSystems/nix-installer-action@main with: extra-conf: | extra-platforms = aarch64-linux - uses: DeterminateSystems/magic-nix-cache-action@main - run: nix-shell --run ./ci.sh env: CI_REGISTRY_AUTH: '${{ secrets.REGISTRY_AUTH }}' NIXPKGS_CHANNEL: '${{ matrix.channel }}' NIX_SYSTEM_NAME: '${{ matrix.system }}' push-manifest: needs: [build] strategy: fail-fast: false matrix: channel: - nixos-unstable - nixos-23.05 - nixos-23.11 - nixos-24.05 runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: DeterminateSystems/nix-installer-action@main with: extra-conf: | extra-platforms = aarch64-linux - uses: DeterminateSystems/magic-nix-cache-action@main - run: nix-shell --run ./ci-manifests.sh env: CI_REGISTRY_AUTH: '${{ secrets.REGISTRY_AUTH }}' NIXPKGS_CHANNEL: '${{ matrix.channel }}' NIX_SYSTEM_NAME: '${{ matrix.system }}'