Files
nixos/Droidnix/generated/hosts/traveldroid/traveldroid.nix
T
2026-03-22 08:10:13 +00:00

43 lines
1.1 KiB
Nix

{ lib, config, pkgs, inputs, ... }:
let
username = config.defaultUser or "henrov";
modulesPath = ./generated/modules;
# Import all modules recursively
importedModules = inputs.import-tree modulesPath;
# Evaluate all modules
evaluatedModules =
map (m:
if builtins.isFunction m then m { inherit lib config pkgs; } else m
) importedModules.imports;
# Attach names
modulesWithNames =
map (m: {
name = if m ? _file then lib.removeSuffix ".nix" (builtins.baseNameOf m._file) else "unknown";
value = m;
}) evaluatedModules;
# Filter enabled modules from config file (optional)
moduleSwitches = import ../../../assets/system/conf/modules.conf;
enabledModules =
builtins.filter (m: moduleSwitches.${m.name} or false) modulesWithNames;
# Collect Home Manager user attrsets
hmUsersList = map (m: m.value._module.args.hmUsers or {}) enabledModules;
in {
networking.hostName = "traveldroid";
system.stateVersion = "26.05";
imports = [
./boot.nix
./hardware-configuration.nix
];
# Merge Home Manager user configurations
home-manager.users = lib.mkMerge hmUsersList;
}