Jakub Sokołowski 81f033875a
nix: use Nix Flake from NBS repo to provide Nim
This way we can avoid rebuilding Nim every time we build packages.

Compilation of `libwaku` with Nim: 9 minutes
Compilation of `libwaku` without Nim: 5 minutes

Notably this upgrades:
- Nim from 2.2.4 to 2.2.8.
- Zerokit from 0.9.0 to 1.0.0.

Also added CODEOWNERS file for CI and Nix configuration.

Depends on:
https://github.com/status-im/nimbus-build-system/pull/112

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2026-02-24 01:17:44 +01:00

50 lines
1.1 KiB
YAML

name: ci / nix
permissions:
contents: read
pull-requests: read
checks: write
on:
pull_request:
branches: [master]
jobs:
build:
strategy:
fail-fast: false
matrix:
system:
- aarch64-darwin
- x86_64-linux
nixpkg:
- libwaku
- libwaku-android-arm64
- wakucanary
- liblogosdelivery
exclude:
# Android SDK limitation
- system: aarch64-darwin
nixpkg: libwaku-android-arm64
include:
- system: aarch64-darwin
runs_on: [self-hosted, macOS, ARM64]
- system: x86_64-linux
runs_on: [self-hosted, Linux, X64]
name: '${{ matrix.system }} / ${{ matrix.nixpkg }}'
runs-on: ${{ matrix.runs_on }}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: 'Run Nix build for ${{ matrix.nixpkg }}'
shell: bash
run: nix build -L '.?submodules=1#${{ matrix.nixpkg }}'
- name: 'Show result contents'
shell: bash
run: find result/ -type f