GayPizzaSpecifications / diavirt

Do-It-All Virtualization Tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

diavirt

GitHub Workflow Latest Build Latest Release

diavirt implements all of the functionality of Virtualization.framework in a command-line tool.

Usage

Install with Homebrew

  1. Install Homebrew
  2. Install diavirt with Homebrew: brew install gaypizzaspecifications/made/diavirt

diavirt takes in a configuration file which describes how to build up the virtual machine configuration.

{
  "cpuCoreCount": 2,
  "memorySizeInBytes": 2147483648,
  "platform": {
    "genericPlatform": {}
  },
  "bootLoader": {
    "linuxBootLoader": {
      "kernelFilePath": "vmlinux",
      "initialRamdiskPath": "initrd",
      "commandLine": "console=hvc0 root=/dev/vda1"
    }
  },
  "serialPorts": [
    {
      "virtioConsoleDevice": {},
      "stdioSerialAttachment": {}
    }
  ],
  "storageDevices": [
    {
      "diskImageAttachment": {
        "imageFilePath": "disk.raw"
      },
      "virtioBlockDevice": {}
    }
  ],
  "entropyDevices": [
    {
      "virtioEntropyDevice": {}
    }
  ],
  "memoryBalloonDevices": [
    {
      "virtioTraditionalMemoryBalloonDevice": {}
    }
  ],
  "networkDevices": [
    {
      "natNetworkAttachment": {},
      "virtioNetworkDevice": {}
    }
  ],
  "directorySharingDevices": [
    {
      "virtioFileSystemDevice": {
        "tag": "mac-users"
      },
      "directoryShare": {
        "singleDirectoryShare": {
          "directory": {
            "path": "/Users"
          }
        }
      }
    }
  ]
}

To run diavirt with the specified configuration:

$ diavirt -c machine.json

About

Do-It-All Virtualization Tool

License:MIT License


Languages

Language:Swift 100.0%