NixOS modules: Difference between revisions
VTimofeenko (talk | contribs) Changed the language about `imports` vs `import` to be more neutral and (hopefully) concise. |
VTimofeenko (talk | contribs) →Function: expand the description of the module arguments |
||
Line 55: | Line 55: | ||
=== Function === | === Function === | ||
A module | A module may be a function accepting an attribute set. | ||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
Line 65: | Line 65: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Following arguments are available in NixOS modules by default: | |||
<dl> | <dl> | ||
Line 84: | Line 84: | ||
<dd>The location of the <code>module</code> directory of NixOS.</dd> | <dd>The location of the <code>module</code> directory of NixOS.</dd> | ||
</dl> | </dl>The "<code>...</code>" part of the argument attribute set indicates that this module does not depend on the rest of the arguments. When the module is defined as a function, this pattern is typically required, otherwise the evaluation will fail citing unexpected arguments. | ||
==== Passing custom values to modules ==== | ==== Passing custom values to modules ==== |