{ config, lib, pkgs, ... }: with lib; let cfg = config.sydnix.qemu; in { options.sydnix.qemu = { enable = mkEnableOption "Qemu"; }; config = mkIf cfg.enable (let # Necessary for UEFI boot with libvirt. qemu-uefi = pkgs.writeShellScriptBin "qemu-system-x86_64-uefi" '' qemu-system-x86_64 \ -bios ${pkgs.OVMF.fd}/FV/OVMF.fd \ "$@" ''; in { programs.virt-manager.enable = true; environment.systemPackages = [ pkgs.virtiofsd qemu-uefi ]; virtualisation.libvirtd.enable = true; }); }