nixos/system/core/users.nix
2025-08-21 23:08:07 +02:00

55 lines
1.4 KiB
Nix

{ config, ... }:
let
host = config.networking.hostName;
in
{
users.mutableUsers = false;
users.users = {
lilith = {
isNormalUser = true;
uid = 1000;
extraGroups = [
"wheel"
"networkmanager"
];
hashedPasswordFile = config.sops.secrets."user/password".path;
# openssh.authorizedKeys.keyFiles = [ config.sops.secrets."user/ssh/authorized" ];
};
nixremote = {
isNormalUser = true;
createHome = false;
group = "users";
extraGroups = [ ];
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN7RJ1q5TczmSDge2U2lXrZVtRzOM/D+Bodwrc6h3EjA"
];
};
};
sops.secrets = {
"user/password" = {
sopsFile = ../../hosts/${host}/secrets/default.yaml;
neededForUsers = true;
};
"user/ssh/private" = {
sopsFile = ../../hosts/${host}/secrets/default.yaml;
path = "/home/lilith/.ssh/id_ed25519";
owner = "lilith";
};
"user/ssh/public" = {
sopsFile = ../../hosts/${host}/secrets/default.yaml;
path = "/home/lilith/.ssh/id_ed25519.pub";
owner = "lilith";
};
"user/ssh/authorized" = {
sopsFile = ../../hosts/${host}/secrets/default.yaml;
};
"ssh/nixremote/private" = {
sopsFile = ../../secrets/default.yaml;
path = "/root/.ssh/nixremote";
owner = "root";
};
};
}