{ config, lib, pkgs, ... }: with lib; let cfg = config.nixfiles.modules.libvirtd; in { options.nixfiles.modules.libvirtd.enable = mkEnableOption "Wether to enable libvirtd."; config = mkIf cfg.enable { virtualisation.libvirtd = { enable = true; onBoot = "ignore"; onShutdown = "shutdown"; qemu = { package = pkgs.qemu_kvm; runAsRoot = false; ovmf = { enable = true; packages = [pkgs.OVMFFull.fd]; }; swtpm = { enable = false; package = pkgs.swtpm-tpm2; }; }; }; environment.systemPackages = with pkgs; [virt-manager qemu-utils]; my.extraGroups = ["libvirtd"]; }; }