If you are looking at this, you know who you are Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
44 lines
1.2 KiB
Nix
44 lines
1.2 KiB
Nix
{ config, pkgs, ... }:
|
|
{
|
|
virtualisation = {
|
|
libvirtd = {
|
|
enable = true;
|
|
qemu = {
|
|
swtpm.enable = true;
|
|
ovmf.packages = [ pkgs.OVMFFull.fd ];
|
|
};
|
|
};
|
|
|
|
spiceUSBRedirection.enable = true;
|
|
};
|
|
|
|
systemd.services = {
|
|
libvirtd.after = [ "NetworkManager.service" ];
|
|
|
|
libvirtd-network-default = {
|
|
description = "Start Default Virtual Network for Libvirt";
|
|
script = "${config.virtualisation.libvirtd.package}/bin/virsh net-start default";
|
|
preStop = "${config.virtualisation.libvirtd.package}/bin/virsh net-destroy default";
|
|
serviceConfig = {
|
|
Type = "oneshot";
|
|
RemainAfterExit = true;
|
|
};
|
|
wantedBy = [ "libvirtd.service" ];
|
|
after = [ "libvirtd.service" ];
|
|
};
|
|
};
|
|
|
|
environment = {
|
|
systemPackages = [ config.virtualisation.libvirtd.qemu.swtpm.package ];
|
|
etc = {
|
|
"ovmf/edk2-x86_64-secure-code.fd".source =
|
|
"${config.virtualisation.libvirtd.qemu.package}/share/qemu/edk2-x86_64-secure-code.fd";
|
|
"ovmf/edk2-i386-vars.fd".source =
|
|
"${config.virtualisation.libvirtd.qemu.package}/share/qemu/edk2-i386-vars.fd";
|
|
};
|
|
persistence."/persist/state"."/var/lib/libvirt" = { };
|
|
};
|
|
|
|
programs.virt-manager.enable = true;
|
|
}
|