This commit is contained in:
Danilo Reyes
2026-01-16 11:47:15 -06:00
parent 9629493d02
commit 2893487ffc
19 changed files with 313 additions and 270 deletions

View File

@@ -214,22 +214,29 @@ in
};
getSshKeys = keyNames: keyNames |> map (name: inputs.self.lib.sshKeys.${name});
# Helper functions for multi-user toggle support
normalizeUsers = users:
if builtins.isString users then [ users ] else users;
mkUserPackages = lib: users: packages:
lib.mkMerge (map (user: {
${user}.packages = packages;
}) (inputs.self.lib.normalizeUsers users));
mkUserAttrs = lib: users: attrs:
lib.mkMerge (map (user: {
${user} = attrs;
}) (inputs.self.lib.normalizeUsers users));
mkHomeManagerUsers = lib: users: fn:
lib.mkMerge (map (user: {
${user} = fn user;
}) (inputs.self.lib.normalizeUsers users));
getFirstUser = users:
if builtins.isString users then users else (builtins.head users);
normalizeUsers = users: if builtins.isString users then [ users ] else users;
mkUserPackages =
lib: users: packages:
lib.mkMerge (
map (user: {
${user}.packages = packages;
}) (inputs.self.lib.normalizeUsers users)
);
mkUserAttrs =
lib: users: attrs:
lib.mkMerge (
map (user: {
${user} = attrs;
}) (inputs.self.lib.normalizeUsers users)
);
mkHomeManagerUsers =
lib: users: fn:
lib.mkMerge (
map (user: {
${user} = fn user;
}) (inputs.self.lib.normalizeUsers users)
);
getFirstUser = users: if builtins.isString users then users else (builtins.head users);
};
};
}