Skip to content

Latest commit

 

History

History
27 lines (22 loc) · 911 Bytes

interactive-vm.md

File metadata and controls

27 lines (22 loc) · 911 Bytes

Running Interactive VMs with disko

disko now exports its own flavor of interactive VMs (similiar to config.system.build.vm). Simply import the disko module and build the vm runner with:

nix run -L '.#nixosConfigurations.mymachine.config.system.build.vmWithDisko'

You can configure the VM using the virtualisation.vmVariantWithDisko NixOS option:

{
  virtualisation.vmVariantWithDisko = {
    virtualisation.fileSystems."/persist".neededForBoot = true;
    # For running VM on macos: https://www.tweag.io/blog/2023-02-09-nixos-vm-on-macos/
    # virtualisation.host.pkgs = inputs.nixpkgs.legacyPackages.aarch64-darwin;
  };
}

Extra configuration that is set in disko.tests.extraConfig is also applied to the interactive VMs. The image size of the VMs will be determined by the disko.devices.disk.<name>.imageSize specifications. The memory size is set by disko.memSize.