summary refs log tree commit diff
path: root/profiles/user.nix
blob: 46f8d50d44793560a0d1af5807418084551eb0f8 (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
53
54
55
56
57
58
{
  pkgs,
  lib,
  config,
  inputs,
  ...
}: {
  imports = [
    inputs.home-manager.nixosModules."home-manager"
  ];
  config = {
    users.users.tzlil = {
      isNormalUser = true;
      description = "Me";
      extraGroups = ["wheel"];
      packages = [pkgs.git];
      shell = pkgs.fish;
      hashedPassword = "$5$itsrHkJPRhLdik0x$RxCXp8KmiPVa1dMQhHMQsjLgvx27MmeQ9ZVybV8bzE8";
      openssh.authorizedKeys.keys = [
        "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMDyzrs9sbstv3KFK5FV8qYlSknnEy8Cn+qch4dJLmHA"
      ];
    };

    nix.settings.allowed-users = ["root" "tzlil"];
    nix.settings.trusted-users = ["root" "tzlil"];

    age.secrets.id_ed25519 = {
      file = ../secrets/id_ed25519.age;
      mode = "600";
      owner = "tzlil";
      group = "users";
    };

    home-manager = {
      useGlobalPkgs = true;
      useUserPackages = true;
      backupFileExtension = "backup";
    };

    home-manager.users.tzlil = {pkgs, ...}@hm: {
      home = {
        stateVersion = "22.05";
        username = "tzlil";
        homeDirectory = "/home/tzlil";
      };
      programs.ssh = {
        enable = true;
        # knownHosts = {
        #   pc = {
        #     extraHostNames = [ "100.99.246.128" ];
        #     publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINu5lRKb1Ao4uj1tAV10QHKIvXfC8ncQ65b+oJtxrd1e";
        #   };
        # };
        matchBlocks."*".identityFile = config.age.secrets."id_ed25519".path;
      };
    };
  };
}