Skip to content

docs: add Tart to Usage section#161

Open
tannevaled wants to merge 1 commit into
lima-vm:masterfrom
tannevaled:docs/add-tart-usage
Open

docs: add Tart to Usage section#161
tannevaled wants to merge 1 commit into
lima-vm:masterfrom
tannevaled:docs/add-tart-usage

Conversation

@tannevaled
Copy link
Copy Markdown

Summary

Adds a ### Tart subsection under ## Usage, alongside the existing QEMU and Lima sections, pointing readers to a drop-in softnet replacement that lets Tart VMs share a socket_vmnet daemon with Lima VMs.

Context

This implements (out-of-tree, as a sidecar binary) the SOCK_DGRAM↔SOCK_STREAM framing pipe that @balajiv113 proposed in #13 and @AkihiroSuda accepted as a reasonable workaround:

What if we write a Pipe mechanism to translate vz packets to qemu like packets ?? If we do this, we don't need any changes in socket_vmnet / gvisor. […] 1. Dial to a unix sock and get conn / 2. create sock pair for dgram / 3. read from dgram and write to unix sock with header / 4. read from unix sock and write to dgram without header
#13 (comment)

The standalone implementation lives at https://github.com/tannevaled/socket-vmnet-shim — ~200 lines of std-only Rust, two threads, ~300 KB binary stripped. It impersonates cirruslabs/softnet's CLI so `tart run --net-softnet ` picks it up unmodified via PATH override. Verified on macOS Tahoe 26.5 with 3 Tart Debian VMs and 3 Lima Debian VMs on the same socket_vmnet shared daemon — full mesh ping, 0% loss.

This PR is just the documentation entry that makes the path discoverable to socket_vmnet users; it intentionally doesn't pull the shim into this repo (the maintenance footprint stays elsewhere unless you'd prefer otherwise — happy to do that as a follow-up if it's of interest).

Test plan

  • Read the rendered README in the diff to confirm the new subsection sits naturally between Lima and Advanced usage
  • TOC anchor Tart resolves to the new heading
  • If/when doctoc is re-run, the auto-generated entry will match (I added it manually for now to stay accurate)

Copy link
Copy Markdown
Member

@AkihiroSuda AkihiroSuda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

@AkihiroSuda AkihiroSuda added this to the v1.2.3 milestone May 29, 2026
@AkihiroSuda
Copy link
Copy Markdown
Member

Tart can use socket_vmnet via a drop-in softnet replacement (the
SOCK_DGRAM↔SOCK_STREAM pipe approach discussed in lima-vm#13). With this
in place, Tart VMs share L2 with Lima VMs on the same socket_vmnet
daemon, unblocking VM↔VM communication on macOS Sequoia/Tahoe where
the bridge100 PRIVATE flag prevents it natively.

Implementation: https://github.com/tannevaled/socket-vmnet-shim
Signed-off-by: tannevaled <tannevaled@users.noreply.github.com>
@tannevaled tannevaled force-pushed the docs/add-tart-usage branch from 94331db to c34f372 Compare May 29, 2026 16:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants