Skip to content

v0.10.1

Latest

Choose a tag to compare

@benvinegar benvinegar released this 04 Nov 03:31
· 17 commits to master since this release

Fixes for Lima hosts reached over ssh, and for running the test suite in a terminal. Also adds an experimental OpenShell backend. No upgrade steps beyond the usual boxery upgrade-host.

Fixes

  • Lima on a remote Mac with Node from fnm or nvm. boxery new failed with only limactl start … failed, because the Lima backend ran bare node, which isn't on PATH in the non-interactive ssh session the controller uses. Backend scripts now always use the host's own Node, the one init recorded (#146, #158, fixes #143).
  • Lima on a remote Mac with Homebrew. Over non-interactive ssh, limactl from /opt/homebrew/bin wasn't found, and boxery new wrongly reported no base image; run: boxery-host build-base. On macOS, backend calls (and the ssh ProxyCommand) now add /opt/homebrew/bin:/usr/local/bin to the end of PATH. If a backend can't tell whether the base exists, it now says why, instead of reporting that the base is missing (#157).
  • The Lima ssh port with FORCE_COLOR set. The free-port helper printed the port with console.log, which wraps it in colour codes when FORCE_COLOR is set. The port was then rejected, and a confined Lima start failed with no free port. This also made npm test (and so npm publish) fail when run in a terminal, since the test runner sets FORCE_COLOR there (#156).

New: OpenShell backend (experimental)

boxery can now drive headless sandboxes on an OpenShell gateway, where OpenShell's policy limits what each sandbox can read and reach on the network (#152, #153):

boxery setup local --backend openshell
boxery --host restricted new demo --headless

It supports the shell, file, copy and background-job tools. Desktops, snapshots, forks, resize, pools and boxery grants aren't supported and are refused with an error. OpenShell manages credentials and network access itself. It has been tested on Linux only. See docs/openshell.md.

Upgrading

  • boxery upgrade-host, then update the controllers. The image layers haven't changed since 0.10.0, so desktop bases and existing VMs don't need a rebuild or a patch.