modules: system: users: make it configurable
Notably, make use of my global 'username' option.
This commit is contained in:
parent
558f9b3919
commit
22a01eeadf
|
@ -1,17 +1,27 @@
|
|||
# User setup
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
my = config.my;
|
||||
secrets = config.my.secrets;
|
||||
cfg = config.my.system.users;
|
||||
groupExists = grp: builtins.hasAttr grp config.users.groups;
|
||||
groupsIfExist = builtins.filter groupExists;
|
||||
in
|
||||
{
|
||||
users.mutableUsers = false; # I want it to be declarative.
|
||||
options.my.system.users = with lib; {
|
||||
enable = my.mkDisableOption "user configuration";
|
||||
};
|
||||
|
||||
# Define user accounts and passwords.
|
||||
users.users.root.hashedPassword = my.secrets.users.root.hashedPassword;
|
||||
users.users.ambroisie = {
|
||||
hashedPassword = my.secrets.users.ambroisie.hashedPassword;
|
||||
config = lib.mkIf cfg.enable {
|
||||
users = {
|
||||
mutableUsers = false; # I want it to be declarative.
|
||||
|
||||
users = {
|
||||
root = {
|
||||
inherit (secrets.users.root) hashedPassword;
|
||||
};
|
||||
|
||||
${config.my.username} = {
|
||||
inherit (secrets.users.${config.my.username}) hashedPassword;
|
||||
description = "Bruno BELANYI";
|
||||
isNormalUser = true;
|
||||
shell = pkgs.zsh;
|
||||
|
@ -33,4 +43,7 @@ in
|
|||
in
|
||||
keys;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue