65 lines
1.2 KiB
Nix
65 lines
1.2 KiB
Nix
# VM Hardware Configuration Template
|
|
# This file will be generated during VM installation with `nixos-generate-config`
|
|
# But here's a template for common VM setups
|
|
|
|
{
|
|
lib,
|
|
modulesPath,
|
|
...
|
|
}:
|
|
|
|
{
|
|
imports = [
|
|
(modulesPath + "/profiles/qemu-guest.nix")
|
|
];
|
|
|
|
# Boot configuration for VMs
|
|
boot = {
|
|
initrd = {
|
|
availableKernelModules = [
|
|
"ahci"
|
|
"xhci_pci"
|
|
"virtio_pci"
|
|
"virtio_scsi"
|
|
"sr_mod"
|
|
"virtio_blk"
|
|
"vmw_pvscsi"
|
|
];
|
|
kernelModules = [ ];
|
|
};
|
|
kernelModules = [ ];
|
|
extraModulePackages = [ ];
|
|
};
|
|
|
|
networking = {
|
|
useDHCP = lib.mkDefault true;
|
|
};
|
|
|
|
hardware = {
|
|
graphics = {
|
|
enable = true;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
spice-vdagentd.enable = lib.mkDefault true;
|
|
qemuGuest.enable = lib.mkDefault true;
|
|
};
|
|
|
|
virtualisation = {
|
|
vmware.guest.enable = lib.mkDefault false;
|
|
virtualbox.guest.enable = lib.mkDefault false;
|
|
hypervGuest.enable = lib.mkDefault false;
|
|
vmVariant.virtualisation = {
|
|
memorySize = 8192;
|
|
cores = 4;
|
|
};
|
|
};
|
|
|
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
|
|
powerManagement = {
|
|
enable = lib.mkDefault false;
|
|
};
|
|
}
|