103 lines
2.1 KiB
Nix
103 lines
2.1 KiB
Nix
{ config, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
./disko.nix
|
|
./services
|
|
];
|
|
|
|
|
|
time.timeZone = "Etc/UTC";
|
|
|
|
networking = {
|
|
hostName = "raven";
|
|
useDHCP = false;
|
|
vlans = {
|
|
labprod = {
|
|
id = 1;
|
|
interface = "eno1";
|
|
};
|
|
voip = {
|
|
id = 5;
|
|
interface = "eno1";
|
|
};
|
|
pubevent = {
|
|
id = 6;
|
|
interface = "eno1";
|
|
};
|
|
};
|
|
interfaces = {
|
|
eno2.useDHCP = true;
|
|
labprod.ipv4.addresses = [{
|
|
address = "192.168.94.1";
|
|
prefixLength = 24;
|
|
}];
|
|
pubevent.ipv4.addresses = [{
|
|
address = "10.10.0.1";
|
|
prefixLength = 20;
|
|
}];
|
|
voip.ipv4.addresses = [{
|
|
address = "192.168.93.1";
|
|
prefixLength = 24;
|
|
}];
|
|
};
|
|
nat = {
|
|
enable = true;
|
|
externalInterface = "eno2";
|
|
internalInterfaces = [
|
|
"labprod"
|
|
"pubevent"
|
|
"voip"
|
|
];
|
|
};
|
|
firewall.allowedTCPPorts = [ 80 443 ];
|
|
};
|
|
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
console.keyMap = "de";
|
|
|
|
security = {
|
|
sudo.wheelNeedsPassword = false;
|
|
|
|
acme = {
|
|
acceptTerms = true;
|
|
defaults.email = "accounts+letsencrypt.org@fablab-nea.de";
|
|
};
|
|
};
|
|
|
|
users.users = {
|
|
simon = {
|
|
isNormalUser = true;
|
|
extraGroups = [ "wheel" "docker" ];
|
|
openssh.authorizedKeys.keys = config.fablab.pubkeys.users.simon;
|
|
};
|
|
jalr = {
|
|
isNormalUser = true;
|
|
extraGroups = [ "wheel" "docker" "audio" ];
|
|
openssh.authorizedKeys.keys = config.fablab.pubkeys.users.jalr;
|
|
};
|
|
};
|
|
|
|
services.openssh.enable = true;
|
|
|
|
virtualisation.docker.enable = true;
|
|
|
|
services.nginx.enable = true;
|
|
|
|
# FIXME
|
|
networking.hosts = {
|
|
"192.168.94.1" = [ "raven.lab.fablab-nea.de" "labsync.lab.fablab-nea.de" ];
|
|
};
|
|
|
|
fablab.luksUsbUnlock = {
|
|
enable = true;
|
|
devices."${config.disko.devices.disk.nvme.content.partitions.luks.content.name}" = {
|
|
keyPath = "${config.networking.hostName}.key";
|
|
usbDevice = "by-label/RAM_USB";
|
|
waitForDevice = 10;
|
|
};
|
|
};
|
|
|
|
system.stateVersion = "24.05";
|
|
}
|