From b222fc124d4d17ce434670eab9052a549ea7973f Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Tue, 25 Jul 2023 17:35:15 +0200 Subject: [PATCH 1/3] Update README.md Add details around installation, usage and link to a few talks This fixes https://github.com/crc-org/vfkit/issues/38 --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/README.md b/README.md index 2e326296..04cc5c4a 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,37 @@ vfkit - Simple command line tool to start VMs through virtualization framework ==== +### Introduction + vfkit offers a command-line interface to start virtual machines using virtualization framework. It also provides a github.com/code-ready/vfkit/tree/main/pkg/client go package. This package provides a native go API to generate the vfkit command line. + +### Installation + +vfkit is available in the `crc` brew tap: + +``` +brew tap cfergeau/crc +brew install vfkit +``` + + +### Usage + +See https://github.com/crc-org/vfkit/blob/main/doc/usage.md + + +### Presentations + +`vfkit` has been presented at a few conferences: +- [Containers Plumbing 2023](https://crc.dev/blog/posts/2023-03-22-containers-plumbing/) +- [FOSDEM 2023](https://fosdem.org/2023/schedule/event/govfkit/) + + +### Background + The work in this repository makes use of https://github.com/Code-Hex/vz which provides go bindings for macOS virtualization framework. The lifetime of virtual machines created using the virtualization framework is tied to the filetime of the process where they were created. When using `Code-Hex/vz`, this means the virtual machine will be terminated at the end of the go process using these bindings. From 47fdadf066c01e7cb220c4a7306e3fdef51983e9 Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Tue, 23 May 2023 12:51:12 +0200 Subject: [PATCH 2/3] doc: Remove extra 'See' --- doc/usage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/usage.md b/doc/usage.md index e5750663..8a199e32 100644 --- a/doc/usage.md +++ b/doc/usage.md @@ -148,7 +148,7 @@ The `--device virtio-net` option adds a network interface to the virtual machine - `mac`: optional argument to specify the MAC address of the VM. If it's omitted, a random MAC address will be used. - `fd`: file descriptor to attach to the guest network interface. The file descriptor must be a connected datagram socket. See [VZFileHandleNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment?language=objc) for more details. - `nat`: guest network traffic will be NAT'ed through the host. This is the default. See [VZNATNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vznatnetworkdeviceattachment?language=objc) for more details. -- `unixSocketPath`: path to a unix socket to attach to the guest network interface. See See [VZFileHandleNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment?language=objc) for more details. +- `unixSocketPath`: path to a unix socket to attach to the guest network interface. See [VZFileHandleNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment?language=objc) for more details. `fd`, `nat`, `unixSocketPath` are mutually exclusive. From 0fe83ac48d22cc26b9803725f4a1c8a257528097 Mon Sep 17 00:00:00 2001 From: Christophe Fergeau Date: Tue, 25 Jul 2023 17:44:23 +0200 Subject: [PATCH 3/3] doc: Update outdated go package URL --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 04cc5c4a..778996d1 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ vfkit - Simple command line tool to start VMs through virtualization framework ### Introduction vfkit offers a command-line interface to start virtual machines using virtualization framework. -It also provides a github.com/code-ready/vfkit/tree/main/pkg/client go package. +It also provides a `github.com/crc-org/vfkit/pkg/config` go package. This package provides a native go API to generate the vfkit command line.