-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.nix
70 lines (61 loc) · 1.72 KB
/
server.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
65
66
67
68
69
70
{ config, pkgs, ... }:
let
cfg = config.nielx;
in
{
imports =
[ ./hardware-configuration.nix
./niv.nix
../common.nix
./packages.nix
./www.nix
];
boot.loader.grub = {
enable = true;
};
networking = {
useDHCP = false;
interfaces.eth0.useDHCP = true;
usePredictableInterfaceNames = false;
};
services.journald.extraConfig = "SystemMaxUse=1GB";
environment.variables = {
EDITOR = "emacs";
};
users.users."${cfg.user}" = {
isNormalUser = true;
home = "${cfg.home}";
description = "${cfg.fullName}";
extraGroups = [ "wheel" "networkmanager" "znc" ];
};
home-manager.users."${cfg.user}" = { pkgs, ... }: {
programs.bash = {
initExtra = cfg.commonBash;
shellAliases = cfg.commonShellAliases;
};
};
# Enable things through the nielx wrapper. Sensitive information is kept
# separate.
nielx = {
shellPromptColor = "1;33m";
simple-emacs.enable = true;
sshserver.enable = true;
duplicity.enable = true;
longview.enable = true;
# matrix.enable = true;
feedmael.enable = true;
roundworm.enable = true;
irc.enable = true;
geomyidae = {
enable = true;
hostname = "metanohi.name";
};
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. It‘s perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "20.03"; # Did you read the comment?
}