depot/ops/nixos/lib/bvm.nix

71 lines
1.4 KiB
Nix

# SPDX-FileCopyrightText: 2020 Luke Granger-Brown <depot@lukegb.com>
#
# SPDX-License-Identifier: Apache-2.0
{ lib, ... }:
{
imports = [
../../../third_party/nixpkgs/nixos/modules/profiles/qemu-guest.nix
../lib/low-space.nix
];
config = {
boot.initrd.availableKernelModules = [
"uhci_hcd"
"ehci_pci"
"ahci"
"virtio_pci"
"sr_mod"
"virtio_blk"
];
boot.kernelParams = [
"console=tty1"
"console=ttyS0,115200" # <-- /dev/console
"mitigations=off"
];
powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
fileSystems = {
"/" = {
device = "/dev/vda1";
fsType = "ext4";
};
"/boot" = {
device = "/dev/vda2";
fsType = "vfat";
};
};
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
nix.maxJobs = lib.mkDefault 2;
my.rundeck.tags = [ "bvm" ];
# Networking!
networking = {
domain = "blade.as205479.net";
nameservers = ["8.8.8.8" "8.8.4.4"];
search = lib.mkBefore [
"blade.as205479.net"
];
useDHCP = false;
defaultGateway = lib.mkDefault {
address = "10.100.0.1";
interface = "enp1s0";
};
firewall.allowedUDPPorts = [
41641 # Tailscale
];
};
services.qemuGuest.enable = true;
};
}