diff --git a/.github/actions/install-nix/action.yaml b/.github/actions/install-nix/action.yaml index 8aa855d..744703d 100644 --- a/.github/actions/install-nix/action.yaml +++ b/.github/actions/install-nix/action.yaml @@ -1,4 +1,7 @@ name: "Nix setup" +inputs: + extra-conf: + required: false runs: using: "composite" steps: @@ -6,6 +9,7 @@ runs: with: # Needs to be kept in sync with flake.nix extra-conf: | + fallback = true allow-import-from-derivation = false extra-substituters = https://hyprland.cachix.org extra-substituters = https://cache.garnix.io @@ -19,4 +23,5 @@ runs: extra-trusted-public-keys = hercules-ci.cachix.org-1:ZZeDl9Va+xe9j+KqdzoBZMFJHVQ42Uu/c/1/KMC5Lw0= extra-trusted-public-keys = nrabulinski.cachix.org-1:Q5FD7+1c68uH74CQK66UWNzxhanZW8xcg1LFXxGK8ic= extra-trusted-public-keys = public:wIIyvCTlsk39uwKlBFOuVY+BXrPY3lUNAEpDN4H+O0Q= + ${{ inputs.extra-conf }} - uses: DeterminateSystems/magic-nix-cache-action@main diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index e851501..a5971d8 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -59,3 +59,24 @@ jobs: run: | nix run .#attic -- login nrab-attic 'https://cache.nrab.lol/' ${{ secrets.ATTIC_TOKEN }} nix run .#attic -- push nrab-attic:public result + + build-aarch64-linux: + runs-on: ubuntu-latest + needs: [matrix] + if: ${{ needs.matrix.outputs.aarch64-linux != '[]' && needs.matrix.outputs.aarch64-linux != '' }} + strategy: + fail-fast: false + matrix: + output: ${{ fromJson(needs.matrix.outputs.aarch64-linux )}} + steps: + - uses: actions/checkout@v3 + - uses: docker/setup-qemu-action@v3 + - uses: ./.github/actions/install-nix + with: + extra-conf: extra-platforms = aarch64-linux + - name: Build output + run: nix build .#${{ matrix.output }} -L + - name: Push output + run: | + nix run .#attic -- login nrab-attic 'https://cache.nrab.lol/' ${{ secrets.ATTIC_TOKEN }} + nix run .#attic -- push nrab-attic:public result