{ inputs, ... }: { microvm.autostart = [ "cpanel" ]; microvm.vms = { cpanel = { # The package set to use for the microvm. This also determines the microvm's architecture. # Defaults to the host system's package set if not given. # pkgs = import pkgs { system = "x86_64-linux"; }; # (Optional) A set of special arguments to be passed to the MicroVM's NixOS modules. specialArgs = { inherit inputs; }; # The configuration for the MicroVM. # Multiple definitions will be merged as expected. config = { networking.hostName = "cpanel"; imports = [ inputs.home-manager.nixosModules.home-manager inputs.disko.nixosModules.disko inputs.nixos-facter-modules.nixosModules.facter ../../core ]; # It is highly recommended to share the host's nix-store # with the VMs to prevent building huge images. microvm.shares = [{ source = "/nix/store"; mountPoint = "/nix/.ro-store"; tag = "ro-store"; proto = "virtiofs"; }]; microvm.interfaces = [{ type = "tap"; id = "cpanel"; mac = "02:00:00:00:00:01"; }]; # Any other configuration for your MicroVM # [...] }; }; }; }