Regenerated
This commit is contained in:
+12
-16
@@ -329,37 +329,33 @@ in
|
||||
#+BEGIN_SRC nix :tangle generated/hosts/traveldroid/traveldroid.nix :noweb tangle :mkdirp yes :eval never-html
|
||||
{ lib, config, inputs, ... }:
|
||||
|
||||
# Standaard username
|
||||
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 (blijft attrset)
|
||||
enabledModules =
|
||||
lib.filterAttrs (name: _: moduleSwitches.${name} or false)
|
||||
importedModules.imports;
|
||||
|
||||
# Zet modules om naar lijst
|
||||
moduleList = builtins.attrValues enabledModules;
|
||||
|
||||
# Haal home-manager fragmenten op, converteer alles naar veilige attrsets
|
||||
getFragment = module:
|
||||
if builtins.hasAttr "homeManagerExtraUserFragment" module
|
||||
then module.homeManagerExtraUserFragment
|
||||
else {};
|
||||
# Functie om fragmenten te "forceren" tot attrset
|
||||
forceFragment = frag:
|
||||
let
|
||||
evaluated =
|
||||
if builtins.isFunction frag then frag {} else frag;
|
||||
in
|
||||
if builtins.isAttrs evaluated then evaluated else {};
|
||||
|
||||
safeFragment = frag:
|
||||
if builtins.isAttrs frag then frag
|
||||
else if builtins.isFunction frag then {}
|
||||
else {};
|
||||
# Haal en forceer alle home-manager fragments
|
||||
safeFragments =
|
||||
map (m: forceFragment (if builtins.hasAttr "homeManagerExtraUserFragment" m
|
||||
then m.homeManagerExtraUserFragment else {}))
|
||||
moduleList;
|
||||
|
||||
safeFragments = map (frag: safeFragment (getFragment frag)) moduleList;
|
||||
|
||||
# Merge alle veilige fragments
|
||||
homeManagerExtraUserFragments = lib.foldl' lib.mkMerge {} safeFragments;
|
||||
|
||||
in {
|
||||
|
||||
Reference in New Issue
Block a user