-
guest serial console is now also enabled in macOS guests (in
/dev/cu.virtio
and/dev/tty.virtio
). Previous versions enabled it only for Linux guests. It can be explicitly disabled using--no-serial
option. -
experimental
--pty
option allows the creation of pseudo-tty device for the guest serial console. Without this option the serial console is mapped to the stdin/out streams of themacosvm
process. If the--pty
option is specified thenmacosvm
will create a newpty
(typically in/dev/ptys.<n>
) and map VM's serial port to it.Unfortuantely, Apple Virtialization Framework requires that the pty is connected before the VM is started. Therefore currently
macosvm
will print thepty
path and wait for user input so that the user can connect to the newly created pty before starting the VM. Proceeding without connected pty leads to an error. This behavior may change in the future, which is why it is considered experimental.
-
added
--ephemeral
flag: when specified, all (read-write) disks (including auxiliary) will be cloned (seeman clonefile
) prior to starting the VM (by appending-clone-<pid>
to their paths) and the clones are used instead of the original. Upon termination all clones are deleted. This is functionally similar to the--rm
flag in Docker. IMPORTANT: you will lose any changes to the mounted disks made by the VM. This is intended for runners that pick up work, do something and then post the results somewhere, but don't keep them locally.macosvm
attempts to clean up clones even on abnormal termination where possible. Individual disks can specifykeep
option which prevents them from being cloned in the ephemeral mode, e.g.:--disk results.img,keep
will causeresults.img
to be used directly and modified by the VM even if--ephemeral
is specified. -
added heuristic to detect ECID from the auxiliary storage if it is not supplied by the configuration file
-
make the configuration file optional. It is now possible to start VMs simply by specifying the desired CPU/RAM and disk images and
macosvm
will try to infer all necessary settings automatically. I.e., if you have existing disk imagesaux.img
anddisk.img
from previously restored/created VM, you can use the following to start it:macosvm -g --disk disk.img --aux aux.img -c 2 -r 4g
-
fixed a bug where the
"readOnly"
flag specified in the configuration file was not honored -
added
os
andbootInfo
entries in the configuration. Currently valid entries foros
are"macos"
(default) and"linux"
. The latter usesbootInfo
dictionary with entrieskernel
(path, mandatory) andparameters
(string, optional). Also a new storage type"initrd"
has been added to support the Linux boot process (untested).
- initial version