Hawser 0.3.1
Pre-releaseThis release predates the rename. The project was called Hawser until
after v0.3.1; it is now Skrog, under thewslkitorg. The assets below
keep the names they were published with and still verify. The install
command has been corrected to the current URL — GitHub redirects repository
URLs after an org rename but not GitHub Pages URLs, so the original link no
longer resolves. See #1.
Releases are verifiable from this one onward. Every artifact now carries SLSA build provenance, and SHA256SUMS is signed with cosign keyless — two independent checks that v0.3.0 could not offer, because both landed two days after it was tagged.
# 1. Did GitHub Actions build this, from this repository, at a known commit?
gh attestation verify hawser_0.3.1_windows_amd64.zip --owner hawserhq
# 2. Is the checksum list itself authentic?
cosign verify-blob --bundle SHA256SUMS.cosign.bundle `
--certificate-identity-regexp '^https://github.com/hawserhq/hawser/' `
--certificate-oidc-issuer https://token.actions.githubusercontent.com SHA256SUMS
# 3. Does your download match the signed list?
sha256sum -c SHA256SUMS --ignore-missingBinaries are still not Authenticode-signed, so SmartScreen will warn. That is tracked in #77.
Install
irm https://wslkit.github.io/skrog/install.ps1 | iexNew in this release: it downloads the newest release, verifies it against SHA256SUMS, unpacks it and adds it to your PATH. It deliberately stops there — hawser install provisions the engine, and that is not something a piped command should do unasked.
New
hawser policy— local admission control for the docker API. Refuse--privileged, capabilities, host namespaces, bind sources or registries this machine has ruled out, before the engine sees them. A guardrail against mistakes, not a boundary against a hostile local user, and it says so. (#120)hawser upgrade— one answer to "am I current?" across the app, the engine and the bundled docker CLI, and it applies the two it owns. It also surfaces an ordering dependency nothing else showed: the engineshawser engine upgradecan reach are pinned in the binary you are running, so a newer engine can need a newer hawser first. (#191)hawser restart --supervisor— the supervisor process could not be restarted at all before; the only way was to kill a PID by hand. (#202)- A documentation site at https://hawserhq.github.io/hawser/, generated from
docs/, with a command reference generated from the binary's own--helpso it cannot drift. (#197, #209) - Experimental AMD GPU support through the same hookless CDI spec as NVIDIA. Untested on real hardware — if you have a Radeon, #185 wants to hear from you.
Fixed
hawser config set audit ondid nothing. The supervisor read the setting once at startup, and the help text told you to runhawser restart— which bounces the engine, not the supervisor holding the setting. The command exited 0, printed no error, and produced no audit log. Settings are now re-read live wherever they are consumed. (#202)- Corporate-network settings were captured at supervisor launch, so
hawser config set network.proxy …followed byhawser restartre-applied whatever was set at logon. (#202) hawser uninstalldeleted the sharedhawserdocker context, breaking any other install on the machine — including the developer's own, after running the acceptance suite. It now hands the context back. (#217)- The recorded rootfs URL depended on a GitHub redirect that can lapse or be taken over. It is normalised to the project's current home. (#212)
hawser audit tail -n 5was rejected, though that is the form the command's own usage line advertises.- The tray flashed a console window on every status poll, and spawned a process every four seconds to recompute state the supervisor already publishes. (#195, #192)
- The engine rootfs shipped no licence text for the software inside it. It now ships all five components' licences. (#205)
Upgrading from 0.3.0
hawser upgrade does not exist in 0.3.0, so this one is a manual step — run the installer above, or download the zip and unpack it over your existing install. Stop the engine first (hawser stop, and quit the tray) so the binaries are not locked. From 0.3.1 onward, hawser upgrade reports and applies.
Your engine, images, containers and volumes are untouched by an app upgrade.