base/export/nixosUsers.nix

31 lines
700 B
Nix

self:
{ ... }@inputs:
{ user, ... }@imports:
let
user' =
name: snippets:
{
pkgs,
lib,
config,
...
}@args:
builtins.trace "user: ${name}" {
options.fbs42.user.${name} = lib.mkEnableOption name;
## no longer with nixos-24.11
#config.users.users.${name} = lib.mkIf config.fbs42.user.${name} {
# group = lib.mkDefault name;
#};
imports = map (
{ user, home-manager }:
{
config = lib.mkIf config.fbs42.user.${name} {
users.users.${name} = (user args);
home-manager.users.${name} = home-manager;
};
}
) snippets;
};
in
builtins.mapAttrs user' user