{ config, lib, pkgs, ... }: { config = { # Replace native `qemu` with `remote-viewer` system.build = { vmWithBootLoader = pkgs.writeShellApplication { name = "run-${config.system.name}-vm"; text = '' ${config.virtualisation.vmVariant.system.build.vm}/bin/run-${config.system.name}-vm ''; }; }; virtualisation = let config = { boot.loader.efi.efiSysMountPoint = lib.mkForce "/boot"; virtualisation = { qemu.options = [ "-display sdl" ]; sharedDirectories = { hostKeys = { source = "/etc/ssh"; target = "/etc/ssh"; }; }; }; }; in { vmVariant = config; vmVariantWithBootLoader = config; }; }; }