Complete 5259 single-binary sweep for packaging/docs: remove codewhale-tui from .cnb.yml, nix, npm bin, installer, bundles, locales, and docs/INSTALL matrix; add .winget + packaging/ manifests (single-binary 27-asset inventory, FreeBSD source-build note) and update release-artifacts comments from 34 to 27 assets. 27-asset inventory verified via assemble-release-assets --verify. Co-Authored-By: internal-model
3.3 KiB
winget packaging for CodeWhale
This directory holds the source winget manifest for Hmbown.CodeWhale (resolves #1561).
The single-binary release (v0.9.5+) ships codewhale + codew per target — no codewhale-tui asset.
Files
Hmbown.CodeWhale.yaml— singleton manifest forwinget install Hmbown.CodeWhale. The installers all point at the signed (or checksum-verified) GitHub Release assets for the same version (CodeWhaleSetup.exefor x64 NSIS, plus portable ZIP fallbacks for x64/arm64).generate-winget-manifest.sh— bumpsPackageVersion,ReleaseDate, and the fourInstallerSha256placeholders from a localrelease-assets/checkout..winget/Hmbown.CodeWhale.yaml(repo root) is a verbatim mirror for tooling that expects.winget/. Keep both in sync;packaging/winget/Hmbown.CodeWhale.yamlis canonical.
Version flow
- Tag
vX.Y.ZpublishesCodeWhaleSetup.exe,codewhale-windows-x64.zip,codewhale-windows-x64-portable.zip,codewhale-windows-arm64.zip,codewhale-windows-arm64-portable.zip, andcodewhale-artifacts-sha256.txt. - From the release tag checkout, run:
It rewrites both
./packaging/winget/generate-winget-manifest.sh X.Y.Z /path/to/release-assetspackaging/winget/Hmbown.CodeWhale.yamland.winget/Hmbown.CodeWhale.yamlwith the fresh version and the four SHA-256 values extracted fromcodewhale-artifacts-sha256.txt. - Validate locally with
winget validate(requires winget + the manifest schema):winget validate --manifest packaging/winget/Hmbown.CodeWhale.yaml # or the Microsoft validator in winget-pkgs CI: # https://github.com/microsoft/winget-pkgs#validation - Submit to microsoft/winget-pkgs via
wingetcreateor a manual PR that addsmanifests/h/Hmbown/CodeWhale/X.Y.Z/:The generated PR must pass the winget-pkgs validation workflow before merge.wingetcreate update Hmbown.CodeWhale --version X.Y.Z --urls \ https://github.com/Hmbown/CodeWhale/releases/download/vX.Y.Z/CodeWhaleSetup.exe \ https://github.com/Hmbown/CodeWhale/releases/download/vX.Y.Z/codewhale-windows-x64.zip \ https://github.com/Hmbown/CodeWhale/releases/download/vX.Y.Z/codewhale-windows-x64-portable.zip \ https://github.com/Hmbown/CodeWhale/releases/download/vX.Y.Z/codewhale-windows-arm64.zip \ https://github.com/Hmbown/CodeWhale/releases/download/vX.Y.Z/codewhale-windows-arm64-portable.zip
Single-binary note
Until v0.9.4 the release matrix was 7 targets × 3 binaries (codewhale, codew, codewhale-tui).
v0.9.5 is 7×1 — each target publishes only codewhale + codew (Windows also ships codewhale.bat
via the npm wrapper). The winget ZIP NestedInstallerFiles therefore lists only those two
executables; codewhale-tui.exe is intentionally absent.
FreeBSD
FreeBSD has no prebuilt GitHub Release asset (see docs/INSTALL.md § FreeBSD). Install via Cargo:
pkg install -y rust pkgconf # or ports-mgmt/pkg
cargo install codewhale-cli --locked # provides `codewhale` and `codew`
The npm wrapper on FreeBSD exits with Unsupported platform: freebsd and points to the Cargo path.
A native pkg install codewhale port is tracked as a follow-up to #1097 — contributions welcome
under packaging/freebsd/.