31 lines
638 B
Nix
31 lines
638 B
Nix
{ lib, config }:
|
|
let
|
|
systems = [
|
|
"x86_64-linux"
|
|
"aarch64-linux"
|
|
"aarch64-darwin"
|
|
];
|
|
transpose =
|
|
attrs: lib.attrs.generate systems (system: builtins.mapAttrs (_: pkg: pkg.result.${system}) attrs);
|
|
in
|
|
{
|
|
options.flake = lib.options.create {
|
|
type = lib.types.attrs.of lib.types.raw;
|
|
};
|
|
|
|
config.flake = {
|
|
inherit (config)
|
|
nixosModules
|
|
darwinModules
|
|
homeModules
|
|
nixosConfigurations
|
|
darwinConfigurations
|
|
homeConfigurations
|
|
;
|
|
|
|
devShells = transpose config.shells;
|
|
packages = transpose config.packages;
|
|
|
|
formatter = config.packages.formatter.result;
|
|
};
|
|
}
|