QFM3PG5VK2YVVNJ33POCTJGIPSOWMMPZITVIKMFVTL5AHTYLKTUQC outputs:hosts: ${{ steps.filter.outputs.changes }}steps:- uses: actions/checkout@v5with:fetch-depth: 0- uses: https://github.com/dorny/paths-filter@v3id: filterwith:base: masterfilters: |shared: &shared- modules/common/**- flake.*- lib/**- modules/nix.nix- modules/system.nix- keys.nix- yubikey.pubservers: &servers- modules/acme/**- modules/nginx.nixnixosConfigurations.date:- hosts/date/**- modules/linux/**- *sharednixosConfigurations.kiwi:- hosts/kiwi/**- modules/linux/**- modules/dr-radka.nix- *shared- *serversnixosConfigurations.lime:- hosts/lime/**- modules/darwin/**- *sharednixosConfigurations.pear:- hosts/pear/**- modules/linux/**- *sharednixosConfigurations.plum:- hosts/plum/**- modules/linux/**- modules/site.nix- *shared- *serversnixosConfigurations.yuzu:- hosts/yuzu/**- modules/linux/**- *sharedbuild-hosts:name: "Build: ${{ matrix.hosts }}"needs: check-changes
host:- "date"- "kiwi"- "pear"- "plum"- "yuzu"# - "lime" # Can't be done without an aarch64-darwin runner.# I will look into containers or something later - for now it's not that important.
hosts: ${{ fromJSON(needs.check-changes.outputs.hosts) }}runs-on: plum
- name: "Checkout"uses: https://github.com/actions/checkout@v5- name: "Build configuration for ${{ matrix.host }}"run: |echo "Building NixOS configuration for: ${{ matrix.host }}"nix build .#nixosConfigurations.${{ matrix.host }}.config.system.build.toplevel --accept-flake-config --builders "" --fallback --no-link
- uses: actions/checkout@v5- name: "Build configuration for ${{ matrix.hosts }}"run: nix build .#${{ matrix.hosts }}.config.system.build.toplevel --accept-flake-config --builders "" --fallback --no-link