-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfiguration.nix
64 lines (53 loc) · 1.44 KB
/
configuration.nix
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
59
60
61
62
63
64
# configuration in this file is shared by all hosts
{ pkgs, ... }: {
# Enable NetworkManager for wireless networking,
# You can configure networking with "nmtui" command.
networking.useDHCP = true;
networking.networkmanager.enable = false;
users.users = {
root = {
initialHashedPassword = "rootHash_placeholder";
openssh.authorizedKeys.keys = [ "sshKey_placeholder" ];
};
};
## enable GNOME desktop.
## You need to configure a normal, non-root user.
# services.xserver = {
# enable = true;
# desktopManager.gnome.enable = true;
# displayManager.gdm.enable = true;
# };
## enable ZFS auto snapshot on datasets
## You need to set the auto snapshot property to "true"
## on datasets for this to work, such as
# zfs set com.sun:auto-snapshot=true rpool/nixos/home
services.zfs = {
autoSnapshot = {
enable = false;
flags = "-k -p --utc";
monthly = 48;
};
};
programs.neovim = {
enable = true;
viAlias = true;
vimAlias = true;
};
services.openssh = {
enable = true;
settings = { PasswordAuthentication = false; };
};
boot.zfs.forceImportRoot = false;
nix.settings.experimental-features = [ "nix-command" "flakes" ];
programs.git.enable = true;
security = {
doas.enable = true;
sudo.enable = false;
};
environment.systemPackages = builtins.attrValues {
inherit (pkgs)
mg # emacs-like editor
jq # other programs
;
};
}