ALPHA: wire is a tool to deploy nixos systems wire.althaea.zone/
at stable 40 lines 1.5 kB view raw
1name: Build 2 3on: 4 push: 5 branches: [main] 6 7jobs: 8 build-partitioned: 9 name: Build Partitioned 10 runs-on: ubuntu-latest 11 permissions: {} 12 strategy: 13 matrix: 14 # Break into 4 partitions 15 partition: [1, 2, 3, 4] 16 steps: 17 - uses: actions/checkout@v6 18 with: 19 persist-credentials: false 20 # This will likely be required if you have multiple architectures 21 # in your hive. 22 - name: Set up QEMU 23 uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 24 - uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 25 with: 26 nix_path: nixpkgs=channel:nixos-unstable 27 extra_nix_config: | 28 # Install binary cache as described in the install wire guide 29 trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g= 30 substituters = https://cache.nixos.org/ https://cache.garnix.io 31 32 # Again, include additional architectures if you have multiple 33 # architectures in your hive 34 extra-platforms = aarch64-linux i686-linux 35 # Uses wire from your shell (as described in the install wire guide). 36 - name: Build partition ${{ matrix.partition }} 37 run: nix develop -Lvc wire \ 38 build \ 39 --parallel 1 \ 40 --partition ${{ matrix.partition }}/4