2022-05-14 20:33:56 +02:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
|
|
|
{
|
|
|
|
imports = [
|
|
|
|
./hardware-configuration.nix
|
2022-05-15 02:46:14 +02:00
|
|
|
./microvm-staging.nix
|
2022-06-12 17:26:32 +02:00
|
|
|
];
|
|
|
|
|
2022-08-05 18:19:12 +02:00
|
|
|
c3d2 = {
|
|
|
|
deployment.microvmBaseZfsDataset = "server10/vm";
|
|
|
|
hq.statistics.enable = true;
|
|
|
|
};
|
2022-06-12 17:26:32 +02:00
|
|
|
|
|
|
|
boot= {
|
2022-05-14 20:33:56 +02:00
|
|
|
loader.grub = {
|
|
|
|
enable = true;
|
|
|
|
version = 2;
|
|
|
|
device = "/dev/sda";
|
2022-06-12 17:26:32 +02:00
|
|
|
};
|
|
|
|
|
2022-07-20 20:57:17 +02:00
|
|
|
kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
|
2022-05-14 20:33:56 +02:00
|
|
|
kernelParams = [
|
|
|
|
"preempt=none"
|
|
|
|
# No server/router runs any untrusted user code
|
|
|
|
"mitigations=off"
|
|
|
|
];
|
2022-05-15 02:46:34 +02:00
|
|
|
tmpOnTmpfs = true;
|
|
|
|
tmpOnTmpfsSize = "80%";
|
2022-06-12 17:26:32 +02:00
|
|
|
};
|
2022-05-14 20:33:56 +02:00
|
|
|
|
|
|
|
networking = {
|
2022-08-05 18:19:12 +02:00
|
|
|
firewall = {
|
|
|
|
enable = true;
|
|
|
|
allowedTCPPorts = [ 22 ];
|
|
|
|
};
|
2022-05-14 20:33:56 +02:00
|
|
|
hostName = "server10";
|
|
|
|
# TODO: change that to something more random
|
|
|
|
hostId = "10101010";
|
2022-06-12 17:26:32 +02:00
|
|
|
};
|
2022-05-14 20:33:56 +02:00
|
|
|
|
2022-08-05 18:19:12 +02:00
|
|
|
services = {
|
|
|
|
openssh.enable = true;
|
|
|
|
smartd.enable = true;
|
|
|
|
zfs.autoScrub.enable = true;
|
2022-05-14 20:33:56 +02:00
|
|
|
};
|
2022-05-17 01:14:05 +02:00
|
|
|
|
2022-08-17 20:57:26 +02:00
|
|
|
# static list of microvms from other sources
|
|
|
|
microvm.autostart = [
|
|
|
|
"data-hoarder"
|
|
|
|
"staging-data-hoarder"
|
|
|
|
];
|
|
|
|
|
2022-05-14 20:33:56 +02:00
|
|
|
system.stateVersion = "21.11"; # Did you read the comment?
|
|
|
|
}
|