dotfiles/nixos/boxes/bolty/default.nix

58 lines
1.3 KiB
Nix

{ config, pkgs, inputs, lib, ... }:
let
physicalInterface = "enp4s0";
bridgeInterface = "br0";
in {
imports = [
./bolty-boot.nix
./real-hardware.nix
../cli.nix
./matrix-server.nix
./print-server.nix
./restic-server.nix
./home-assistant.nix
];
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
networking = {
hostName = "bolty";
useDHCP = false;
defaultGateway = {
address = "10.0.0.1";
interface = "${bridgeInterface}";
};
nameservers = [ "91.239.100.100" "89.233.43.71" "1.1.1.1" ];
interfaces = {
"${physicalInterface}" = {
useDHCP = false;
wakeOnLan.enable = true;
};
"${bridgeInterface}" = {
ipv4.addresses = [{
"address" = "10.0.0.8";
"prefixLength" = 24;
}];
};
};
bridges = { "${bridgeInterface}".interfaces = [ "${physicalInterface}" ]; };
};
boot.kernelModules = [ "kvm_amd" ];
virtualisation = {
libvirtd = {
enable = true;
qemu.ovmf.enable = true;
};
};
environment.systemPackages = with pkgs; [
qemu
virt-manager
usbutils
virt-viewer
];
networking.firewall.allowedTCPPorts = [ 5900 ];
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
security.allowUserNamespaces = true;
time.timeZone = "Europe/London";
}