fix(macos): install passt for podman 5 rootless networking

podman 5 uses pasta as the default rootless network helper; podman 4
used slirp4netns. The spike was written against bookworm's podman 4.3.1,
so its package list never included passt — and the trixie bump (#451)
changed the default out from under it. Every nested container failed to
start with "could not find pasta", while image pulls and the service
itself worked, which disguised a missing dependency as a compat-API bug.

The bootstrap now checks for pasta up front so this fails with a clear
message instead of surfacing at the first `docker run`.

Note the sun_path fix in a12d2191 did NOT cause or cure this; that path
was over the 108-byte limit independently and would have bitten as soon
as attach was reached.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-21 19:20:27 -04:00
parent 90522d335a
commit 1f64e4b6be
3 changed files with 26 additions and 7 deletions
@@ -7,7 +7,10 @@ if [ "$uid" -eq 0 ]; then
exit 1
fi
for command in podman docker fuse-overlayfs slirp4netns; do
# pasta is podman 5's default rootless network helper. Checked here so a
# missing package fails the bootstrap with a clear message rather than
# letting every later `docker run` die with "could not find pasta".
for command in podman docker fuse-overlayfs pasta slirp4netns; do
command -v "$command" >/dev/null 2>&1 || {
echo "missing nested-container prerequisite: $command" >&2
exit 1