Modular, context-aware and aspect-oriented dendritic Nix configurations.
Discussions: https://oeiuwq.zulipchat.com/join/nqp26cd4kngon6mo3ncgnuap/
den.oeiuwq.com
configurations
den
dendritic
nix
aspect
oriented
1{ config, lib, ... }:
2let
3 inherit (config.den.lib.aspects.types) aspectsType;
4 denfulType = lib.types.attrsOf aspectsType;
5in
6{
7 config._module.args.den = config.den;
8 options.den.aspects = lib.mkOption {
9 description = "Den Aspects";
10 default = { }; # generated from den.{hosts, homes, users}
11 type = aspectsType;
12 };
13 options.den.ful = lib.mkOption {
14 default = { }; # namespaces (local or merged from inputs)
15 type = denfulType;
16 };
17 options.flake.denful = lib.mkOption {
18 default = { }; # flake output (assigned via den.namespace)
19 type = lib.types.attrsOf lib.types.raw;
20 };
21}