{ inputs, lib, pkgs, ... }: { imports = [ inputs.disko.nixosModules.disko "${inputs.self}/users/richie" "${inputs.self}/common/global" "${inputs.self}/common/optional/tailscale.nix" ./disk-config.nix ./haproxy ]; nixpkgs.hostPlatform = "x86_64-linux"; boot = { # Avoid consuming the VM's limited memory for /tmp. tmp.useTmpfs = false; # The Vultr system disk and NIC are exposed as virtio devices. initrd.availableKernelModules = [ "virtio_pci" "virtio_blk" "virtio_scsi" "sd_mod" ]; }; networking = { hostName = "portal-1"; useDHCP = lib.mkDefault true; firewall = { enable = true; allowedTCPPorts = [ 278 ]; }; }; services.openssh.ports = [ 278 ]; environment.systemPackages = with pkgs; [ curl htop vim ]; # The VM uses its regular swap instead of compressed RAM swap. zramSwap.enable = false; time.timeZone = "Etc/UTC"; system.stateVersion = "24.05"; }