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.