Multipass can launch and run virtual machines and configure them with cloud-init like a public cloud
brew install multipass libvirt
brew services start libvirt
multipass set local.passphrase=<foo> # `multipass set local.passphrase` avoids stdout creds
multipass authenticate
multipass get local.driver
multipass set local.driver=qemu # hyperkit, qemu, virtualbox
How to authenticate clients with the Multipass service
How to set up the driver
local.driver