blob: f7de3924e1a816c4f34c88e5db901d5280168fbc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
{ flake, userName, pkgs, customUtils, lib, ... }:
{
imports = with flake.nixosModules.userProfiles.${userName}; [
zsh tmux utils direnv
];
users.users.${userName} = {
description = "Gregor Kleen";
extraGroups = [ "wheel" "networkmanager" "lp" "dialout" "audio" "video" "xmpp" "mail" "ssh" "vboxusers" "libvirtd" "wireshark" "games" "webdav"];
createHome = true;
home = "/home/${userName}";
shell = "${pkgs.zsh}/bin/zsh";
isNormalUser = true;
openssh.authorizedKeys.keyFiles = let dir = ./authorized-keys; in lib.mapAttrsToList (n: _: dir + "/${n}") (builtins.readDir dir);
hashedPassword = "$6$rounds=500000$dOMgCU7DAk$yQFYGOURTEt12387LIYBnFKSWmtwXMUk1LJWnV0m7OFt.y2TnxQn2abdGA5dhwG9EmMB5wZGXf4J5F71c746C/";
};
home-manager.users.${userName} = {
home.keyboard = {
layout = "us";
variant = "dvp";
options = [ "ctl:nocaps" "compose:caps" ];
};
programs = {
git = {
enable = true;
userEmail = "gkleen@yggdrasil.li";
userName = "Gregor Kleen";
delta.enable = true;
extraConfig = {
pull.rebase = false;
submodule.recurse = true;
};
};
ssh = {
enable = true;
controlMaster = "auto";
controlPersist = "30m";
serverAliveInterval = 6;
serverAliveCountMax = 10;
hashKnownHosts = true;
extraConfig = ''
IdentitiesOnly true
'';
};
gpg.enable = true;
};
};
}
|