How Nilla modules and Aux Lib work
mainNilla uses Aux Lib for its module system. When customizing your configuration or writing new modules, note these key differences from Nixpkgs:
- Module Arguments: Always dynamic; do not use
.... - Inclusion/Exclusion: Use
includesto add modules andexcludesto remove them (instead ofimportsordisabledModules). - Fallback Types: Use the
freeformattribute to declare fallback types for dynamic values (instead offreeformType). - Option Creation: Use
lib.options.create(instead oflib.mkOption). - Types: Types are namespaced, e.g.,
lib.types.attrs.anyorlib.types.attrs.of. - Shorthand: Module shorthand is only available in submodules that explicitly opt-in.