Merge branch 'macos-ci' into master
ci.nix: Filter out packages incompatible with Nixpkgs system
It's the same filtering we use in flake.nix. I'm not sure if filtering
on `meta.platforms` is needed, but that assert on the `linux` derivation
kills the whole job before it even starts.
Redefine package set on top of overlays
I wanted to reduce duplication, but ended up somewhat in the same place
(with manifest.nix). Yet I find it much more elegant.
ci.nix: Fix patched package list generation
The core of the fix is importing ./patches with the extended package
set. The rest is just trying to keep the same structure (no flattening)
while filtering out functions (`packagesFor` and the like).
ci: Add Nix expression with all possible package configurations
The new ci.nix, when passed to nix-build:
1. runs the lib tests;
2. builds new packages when imported directly from ./pkgs;
3. builds new packages from the overlay;
4. builds patched packages from the overlay.
These should uncover issues in the direct-overlay translation, which
we'll need before consolidating */default.nix and */overlay.nix.
I don't think we'll support loading the patched packages directly,