Files
nixos/home-manager.nix
2026-04-20 12:00:08 +02:00

42 lines
1.1 KiB
Nix

{ config, pkgs, lib, ... }:
let
profile = import ./profile.nix;
home-directory = "/home/${profile.username}";
ssh-filename = "${home-directory}/.ssh/id_ed25519";
in
{
imports = [
./desktop-environment/config.nix
./terminal-environment/config.nix
./system-environment/config.nix
];
users.users.${profile.username} = {
isNormalUser = true;
description = "Nina Chlóe Kassandra";
extraGroups = ["disks" "storage" "networkmanager" "wheel" "docker" "scanner" "lp" "uucp" "dialout"];
packages = with pkgs; [];
shell = pkgs.zsh;
hashedPassword = profile.hashed-password;
};
systemd.services.generate-ssh-key = {
description = "Generate SSH key if missing";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
Type = "oneshot";
User = profile.username;
};
script = ''
if [ ! -f ${ssh-filename} ]; then
mkdir -p ${home-directory}/.ssh
chmod 700 ${home-directory}/.ssh
${pkgs.openssh}/bin/ssh-keygen -t ed25519 -N "" -f ${ssh-filename}
fi
'';
};
}