Initial commit

This commit is contained in:
kirbara 2025-12-01 13:23:24 +07:00
commit cfcc57a8bd
Signed by: exp
GPG key ID: D7E63AD0019E75D9
353 changed files with 18756 additions and 0 deletions

View file

@ -0,0 +1,34 @@
# create aspect dependencies from hosts/users
{
lib,
den,
...
}:
let
inherit (den.lib) parametric;
makeAspect = from: {
${from.aspect} = {
${from.class} = { };
includes = [ den.default ];
__functor = parametric.atLeast;
};
};
hosts = map builtins.attrValues (builtins.attrValues den.hosts);
homes = map builtins.attrValues (builtins.attrValues den.homes);
aspectClass = from: { inherit (from) aspect class; };
deps = lib.pipe hosts [
(lib.flatten)
(map (h: builtins.attrValues h.users))
(users: users ++ hosts ++ homes)
(lib.flatten)
(map aspectClass)
(lib.unique)
(map makeAspect)
];
in
{
den.aspects = lib.mkMerge deps;
}