Regenerated

This commit is contained in:
2026-03-20 15:37:07 +00:00
parent fb85c8488e
commit 4ab5ebbd01
30 changed files with 28 additions and 1473 deletions
+28 -10
View File
@@ -332,20 +332,18 @@ in
let
username = config.defaultUser or "henrov";
# Modules directory en switches
modulesPath = ./generated/parked;
importedModules = inputs.import-tree modulesPath;
moduleSwitches = import ./assets/system/modules.conf;
# Alleen ingeschakelde modules
enabledModules =
lib.filterAttrs (name: _: moduleSwitches.${name} or false)
importedModules.imports;
moduleList = builtins.attrValues enabledModules;
# Functie: haal homeManagerExtraUserFragment en forceer het tot veilige attrset
safeFragment = module:
# Functie om fragment veilig te evalueren en debug info te verzamelen
debugFragment = module:
let
frag =
if builtins.hasAttr "homeManagerExtraUserFragment" module
@@ -353,15 +351,32 @@ let
else {};
evaluated =
if builtins.isFunction frag then frag {} else frag;
isAttrs = builtins.isAttrs evaluated;
isList = builtins.isList evaluated;
isThunk = builtins.isFunction frag;
in
if builtins.isAttrs evaluated then evaluated
else {};
{
fragment = if isAttrs then evaluated else {};
debug = {
name = if builtins.hasAttr "name" module then module.name else "unknown";
isAttrs = isAttrs;
isList = isList;
isThunk = isThunk;
};
};
# Alle fragments per module
allFragments = map safeFragment moduleList;
# Alle fragments met debug info
fragmentsWithDebug = map debugFragment moduleList;
# Merge alles per gebruiker
mergedForUser = lib.foldl' lib.mkMerge {} allFragments;
# Lijst van problematische modules
problematicModules = builtins.filter
(x: !(x.debug.isAttrs))
fragmentsWithDebug;
# Merge alleen veilige fragments
safeFragments = map (x: x.fragment) fragmentsWithDebug;
mergedForUser = lib.foldl' lib.mkMerge {} safeFragments;
in
{
@@ -372,6 +387,9 @@ in
home-manager.users = {
"${username}" = mergedForUser;
};
# Extra debug output, alleen zichtbaar als je `nix eval` gebruikt
debug.problematicModules = problematicModules;
}
#+END_SRC