Docs.
Parts provide a simple way of defining per-system configurations -
perSysten attribute. systems defines what
systems to generate attributes for, flake is for everythng
else. perSystem, being a function, has a couple
arguments:
pkgs - contains nixpkgs for current
system.inputs' - inputs, with system
pre-selected,self' - self, with system pre-selected.
May benefit from eval caching in the future.system - the system string, e.g.
x86_64-linux.A module is in general a flake, having a flakeModule
output, and commonly a template, demonstrating example usage of the
module. flakeModule is structurally similar to nixos
modules: it has both options and config
outputs, and a set of inputs, including inputs,
lib, config, etc.. options can be
set in flake attribute of the user, config
populates aforementioned attribute.
See hercules-ci.