Skip to content

chore(flake/home-manager): 3593ee59 -> 7fb86787 #13746

chore(flake/home-manager): 3593ee59 -> 7fb86787

chore(flake/home-manager): 3593ee59 -> 7fb86787 #13746

Workflow file for this run

name: ci
on:
push:
branches:
- master
- try
pull_request:
permissions: {}
env:
flake: github:${{ github.repository }}/${{ github.sha }}
nix-conf: |-
accept-flake-config = true
always-allow-substitutes = true
builders-use-substitutes = true
max-jobs = auto
nix-fast-build-args: --no-nom --skip-cached --retries=3 --option accept-flake-config true
jobs:
flake-check:
name: flake check (${{ matrix.systems.platform }})
runs-on: ${{ matrix.systems.os }}
strategy:
matrix:
systems:
- os: ubuntu-24.04
platform: x86_64-linux
- os: ubuntu-22.04-arm
platform: aarch64-linux
- os: macos-15
platform: aarch64-darwin
steps:
- uses: DeterminateSystems/nix-installer-action@v16
with:
extra-conf: ${{ env.nix-conf }}
- uses: cachix/cachix-action@v15
with:
name: nix-config
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: vim-config,nix-community
- name: nix-flake-check
run: nix flake check '${{ env.flake }}'
flake-show:
name: flake show (${{ matrix.systems.platform }})
runs-on: ${{ matrix.systems.os }}
strategy:
matrix:
systems:
- os: ubuntu-24.04
platform: x86_64-linux
- os: ubuntu-22.04-arm
platform: aarch64-linux
- os: macos-15
platform: aarch64-darwin
steps:
- uses: DeterminateSystems/nix-installer-action@v16
with:
extra-conf: ${{ env.nix-conf }}
- uses: cachix/cachix-action@v15
with:
name: nix-config
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: vim-config,nix-community
- name: nix-flake-show
run: nix flake show '${{ env.flake }}'
get-attrs:
runs-on: ubuntu-24.04
outputs:
build: ${{ steps.get-attrs.outputs.build }}
eval: ${{ steps.get-attrs.outputs.eval }}
darwin-hosts: ${{ steps.get-attrs.outputs.darwin-hosts }}
steps:
- uses: actions/checkout@v4
with:
sparse-checkout: |
nix/hosts.nix
.github/workflows/get-attrs.py
- uses: nixbuild/nix-quick-install-action@v30
- id: get-attrs
run: ./.github/workflows/get-attrs.py
eval:
name: eval ${{ matrix.attrs.name }} (${{ matrix.attrs.hostPlatform }})
if: ${{ fromJson(needs.get-attrs.outputs.eval)[0] != null }}
runs-on: ${{ matrix.attrs.runsOn }}
needs: [ get-attrs ]
strategy:
fail-fast: false
matrix:
attrs: ${{ fromJson(needs.get-attrs.outputs.eval) }}
env:
system: ${{ matrix.attrs.hostPlatform }}
steps:
- uses: DeterminateSystems/nix-installer-action@v16
with:
extra-conf: ${{ env.nix-conf }}
- uses: cachix/cachix-action@v15
with:
name: nix-config
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: vim-config,nix-community
- name: eval
run: |
nix eval --raw '${{ env.flake }}#${{ matrix.attrs.attr }}'
build-linux-builder:
name: build linux-builder for ${{ matrix.attrs.name }} (${{ matrix.attrs.equivalentLinuxPlatform }})
if: ${{ fromJson(needs.get-attrs.outputs.darwin-hosts)[0] != null }}
runs-on: ${{ matrix.attrs.equivalentLinuxRunner }}
needs: [ get-attrs ]
strategy:
fail-fast: false
matrix:
attrs: ${{ fromJson(needs.get-attrs.outputs.darwin-hosts) }}
env:
system: ${{ matrix.attrs.equivalentLinuxPlatform }}
steps:
- uses: DeterminateSystems/nix-installer-action@v16
with:
extra-conf: ${{ env.nix-conf }}
- uses: cachix/cachix-action@v15
with:
name: nix-config
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: vim-config,nix-community
- name: nix-fast-build
run: nix run '${{ env.flake }}#nix-fast-build' -- ${{ env.nix-fast-build-args }} --systems=${{ env.system }} --flake='${{ env.flake }}#${{ matrix.attrs.linuxBuilderAttr }}'
build-darwin-host:
name: build ${{ matrix.attrs.name }} (${{ matrix.attrs.hostPlatform }})
if: ${{ fromJson(needs.get-attrs.outputs.darwin-hosts)[0] != null }}
runs-on: ${{ matrix.attrs.runsOn }}
needs: [ get-attrs, build-linux-builder ]
strategy:
fail-fast: false
matrix:
attrs: ${{ fromJson(needs.get-attrs.outputs.darwin-hosts) }}
env:
system: ${{ matrix.attrs.hostPlatform }}
steps:
- uses: DeterminateSystems/nix-installer-action@v16
with:
extra-conf: ${{ env.nix-conf }}
- uses: cachix/cachix-action@v15
with:
name: nix-config
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: vim-config,nix-community
- name: nix-fast-build
run: nix run '${{ env.flake }}#nix-fast-build' -- ${{ env.nix-fast-build-args }} --systems=${{ env.system }} --flake='${{ env.flake }}#${{ matrix.attrs.attr }}'
build:
name: build ${{ matrix.attrs.name }} (${{ matrix.attrs.hostPlatform }})
runs-on: ${{ matrix.attrs.runsOn }}
needs: [ get-attrs ]
strategy:
fail-fast: false
matrix:
attrs: ${{ fromJson(needs.get-attrs.outputs.build) }}
env:
system: ${{ matrix.attrs.hostPlatform }}
steps:
- uses: DeterminateSystems/nix-installer-action@v16
with:
extra-conf: ${{ env.nix-conf }}
- uses: cachix/cachix-action@v15
with:
name: nix-config
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: vim-config,nix-community
- name: nix-fast-build
run: nix run '${{ env.flake }}#nix-fast-build' -- ${{ env.nix-fast-build-args }} --systems=${{ env.system }} --flake='${{ env.flake }}#${{ matrix.attrs.attr }}'
check:
runs-on: ubuntu-24.04
needs: [ flake-check, flake-show, build, eval, build-linux-builder, build-darwin-host ]
if: always()
steps:
- uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}
allowed-skips: eval, build-linux-builder, build-darwin-host