Repository navigation
vibe 0.1.185
Fixes for sbx 0.51 upgrade (#12)
Why: 0c17839 got vibe starting again on sbx 0.51. This takes the rest: features that only worked on the old Ubuntu image, a race in the generated on-start, and a few UI bugs found while testing.
Features on the Debian image
- MySQL: the old feature installed
mysql-server, which Debian doesn't have, so it never worked, andstart-mysqlused--daemonize, which MariaDB'smysqlddoesn't take. There are now two features:mysql-8.4: Oracle's own 8.4.13 from its generic tarball (x86_64 minimal, aarch64 full). Both builds have a pinned SHA-256 that I checked against Oracle's published MD5. It installs the libraries the tarball needs, and runs with--no-defaults. Starts take a lock and refuse a data folder they can't read, so they can't clear existing data. The version is in the feature name so later series can sit beside it.mariadb: Debian's server, the previous feature renamed honestly. Breaking: a profile that lists plainmysqlmust now pick one of these.
- Playwright installs Node and npm itself and no longer allows Ubuntu's apt hosts. Elasticsearch, PowerShell and the dotnet runtime step now check for the tools they use (
curl,gnupg, certificates,tar,gzip) and install any that are missing. - New base feature
prerequisites: one apt run, or none, forcurl, certificates,gpg,tar,gzip,xz,flockand Node. Node moves here from the clipboard feature, sincevibe-reviewneeds it too. tools/check-apt-packages.sh(run in a sandbox) lists the apt packages the library asks for that the image doesn't have. It would have caughtmysql-server.
on-start
- The boot-time run and vibe's session-start nudge can overlap. The generated script now takes a lock (
flock -o, so daemons it starts don't hold it), waits at most 90 seconds, then gives up cleanly. It runs unlocked ifflockis missing. - Its log now says how long each start script and the whole run took.
UI and restart
- Network tab: sbx 0.51 lists a built-in
default-deny-allrule that matches every host, so no allow ever showed as "Unblocked". It's now recognised by its shape (a non-editable local deny of**), with its reason text as a backup. - Review comments pane: a card's state pill is on its own line above the path. The comments button turns amber while any thread awaits your answer.
- Restart: a sandbox the page wakes after sbx idled it now runs its start-up again, so the clipboard address is rewritten for the new boot.
Testing
- Automated:
go test ./...,go vetfor Linux, Windows and macOS, and the formatting check all pass. Each fix has a test that fails without it, and the new tests were run repeatedly with no flakes. - In a real sandbox built from these commits: Elasticsearch, MySQL 8.4.13, Redis, RabbitMQ, PowerShell, Playwright's launch check and a dotnet build. Two real overlapping
on-startruns queued as intended. - Not verified:
- The macOS and Windows CI jobs.
- The new real-Firefox test in CI. It ran locally through a throwaway runner but skips in this sandbox.
- The aarch64 MySQL build, which is checksum-checked only.
- The restart fix against a real idle-stop, which has unit tests only.
- A TempDbMySql project against the 8.4
mysqld.
To install:
- Linux/macOS:
curl -fsSL https://raw.githubusercontent.com/fluffynuts/vibe/master/install.sh | sh - Windows:
irm https://raw.githubusercontent.com/fluffynuts/vibe/master/install.ps1 | iex - Manual: download the zip for your platform (below), unzip it anywhere, and run
vibe --installfrom the folder it makes.
To upgrade, run the same command again, or vibe --upgrade once vibe is installed.
| Platform | Zip |
|---|---|
| Linux (x86-64) | vibe-linux-amd64.zip |
| Linux (ARM) | vibe-linux-arm64.zip |
| macOS (Apple Silicon) | vibe-macos-arm64.zip |
| macOS (Intel) | vibe-macos-amd64.zip |
| Windows (x86-64) | vibe-windows-amd64.zip |
| Windows (ARM) | vibe-windows-arm64.zip |
SHA256SUMS holds each zip's checksum. The install scripts and vibe --upgrade check it.
macOS: the binary isn't signed, so if it's blocked after downloading in a browser, run
xattr -dr com.apple.quarantine <folder> once.
What's Changed
- Fixes for sbx 0.51 upgrade by @fluffynuts in #12
Full Changelog: v0.1.182...v0.1.185