ZenNotes 2.51.1: the desktop command runs Go CLI v0.2.0
Released on September 16, 2026 as v2.51.1, at c4b710da. The release branch v2.51.1 was fast-forwarded into main through PR #799. A follow-up to 2.51.0 released the same day.
✨ Features
- The bundled
zncommand is the Go CLI. 2.51.0 shipped the machinery with an empty pin. This version pins ZenNotes/tui v0.2.0: the packaged app stages the checksum-verified binary at build time, the installedznruns it, andzn tuiopens the terminal app from the same installation. Existing desktop-managed shortcuts pick it up when the app opens; commands keep their names.ZENNOTES_CLI_ENGINE=legacykeeps the previous Node engine during the transition. Windows keeps the Node CLI for now.
🧰 For contributors
- Pin: 9448fab7 (
apps/desktop/terminal-release.json, protocol 1, commit909e66c3, four targets by URL and SHA-256). Version bump: bc2b2621. Homebrew mirror for 2.51.0: 53c7e107. In-app manual update (server home, creation metadata, pacman polkit prompt, Ctrl+V block edits): c4b710da.
Verification
- Terminal tooling tests with the pin; the artifact importer staged all four targets from the published archives (digests match, integration probe protocol 1 / 0.2.0); the compatibility probe against the published darwin-arm64 binary matched 20 of 20 commands in both vault layouts.
- On the
v2.51.1branch: typecheck;test:runapp-core 2371 and desktop 849; terminal tooling 12;npm run build7 of 7;npm run packstaged the Go CLI inside the app (Contents/Resources/terminal/znv0.2.0, Developer ID signed, integration probe protocol 1); the packaged app over CDP with both stores isolated passed the desktop smoke with zero renderer and main-process errors.
Distribution channels
- Release workflow: 35153978717; Linux arm64 and x64 first, then Windows, then macOS with Developer ID signing and notarization.
- AUR:
6953800in the separatezennotes-binclone (zennotes-bin 2.51.1-1), mirrored on desktopmainas8818ecfe. Downloaded tarball SHA-256cfe1d537ccea09dac4cc5d486b1cf7886b4e87b03d9c53d0735864f20c572f65matched GitHub's asset digest. - Nix:
nix-update.ymlrun 35155168731 opened bot PR #800, lifted exactly ontomainasd0f24068and closed;nix-build.yml35155331928 passed onmainfirst try. - nixpkgs: PR #561418 restacked onto current master as
zennotes-desktop: 2.45.0 -> 2.51.1(fork commit97a6b71c, body innixpkgs-pr-body.md). - Homebrew:
c82dde6in the tap (zennotes 2.51.1), mirrored on desktopmainasd414f7d1. The cask pins both DMG digests from the GitHub API (arm64 ``, x643e7a29458b0e5461bea48dbc3718449549616c209821d592f6b4b1881dd71af3). - Website: the 2.51 docs update (server home, Compose flow, creation metadata, pacman prompt, Vim block edits) merged as website PR #27 (
42bfd93); the 2.51.1 releases entry followed asf28b379; both live. - Docker and the server: unchanged by this release (znserver 2.51.0 already embeds the 2.51.0 web build, which this version does not alter).
npm run verify:channels -- 2.51.1passed: Homebrew tap, AUR, Nix, and all seven website download redirects serve 2.51.1.
Release validation
- Release PR #799's CI passed on macOS, Ubuntu, Ubuntu arm64 and Windows plus CodeQL, the Arch package check and the production dependency audit before the fast-forward. The release workflow passed every platform job (25 assets).
nix-build.yml35155331928 rebuilt the desktop Nix package from the lifted hashes onmain. - Known timing gap, unchanged by this release: the release page exists before the macOS job finishes, so a Mac update check inside that window reports a missing
latest-mac.ymluntil the DMGs land. A draft-until-complete release flow is the planned fix for the next cycle.