Repository navigation
Self-update, macOS installer and desktop responsiveness update. The Git tag is v0.4; the Cargo package version is 0.4.0.
Added
- Update Kokuban from itself. At launch a background check asks GitHub for the latest release; macOS shows
vX availableat the right of the status bar and Linux adds it to the window title. Nothing is downloaded until you ask:On macOS the app menu also has Check for Updates… and Install Update…. The update downloads the archive for the running target (or the disk image forkokuban --check-update # report whether a newer release exists kokuban --update # download, verify and install it
Kokuban.app), refuses it unless its.sha256matches, and replaces the executable or bundle in place; reopen Kokuban afterwards. Turn the check off with[update] check_on_startup = falseorKOKUBAN_NO_UPDATE_CHECK=1. No network library is linked: the systemcurl,tar,shasum/sha256sumandhdiutildo the work. - macOS disk images with
Kokuban.app(bundle IDio.github.guicybercode.kokuban) and a drag-to-Applications window, for Apple Silicon and Intel. - macOS:
kokuban --versionprints the version instead of opening a window.
Changed
- Build release binaries with fat LTO and one codegen unit. Linux x86_64 PTY throughput rose 5–35% by workload and warmed glyph lookups up to 72% faster, while x86_64 full-frame CPU repaints became about 1–2% slower; see the release profile report.
- macOS: the PTY reader blocks in
pollinstead of sleeping between scans. End-to-end throughput rose 20–393% by workload and idle wakeups fell from 93.8/s to 11.9/s on an Apple M4 (paired report). - Wait for PTY writability instead of sleeping 1 ms after each
EAGAIN: large pastes into a draining macOS program went from 0.71 to 23.07 MiB/s (write report). - macOS: frames are drawn only when content, titles or shutdown need them (still capped at 60 Hz) instead of on a fixed 60 Hz timer. Idle wakeups fell from 8.0/s to 0.17/s and idle CPU by about 80% (render scheduling report).
- Refreshed application icon without the irregular white border.
Fixed
- macOS: when a split pane's shell exits, the remaining pane grows back to the full window. Its grid and PTY size used to stay at the split size, leaving text in part of the window.
- macOS:
Kokuban.appopened from Finder, the Dock or Launchpad starts the shell in the home directory instead of/. - macOS: output decoded while a frame was being drawn is no longer left undrawn until more output arrives.
Validation scope and limits
- Release targets remain Linux x86_64, macOS Apple Silicon and macOS Intel, using Rust 1.94.1 and the locked dependency graph. Linux packages are built on Ubuntu 24.04; macOS on macOS 15 with a macOS 11 deployment target.
- macOS executables and
Kokuban.appare ad-hoc signed only, without Developer ID signing or notarization. The first launch of the downloaded app may need Open from the Finder context menu or approval in Privacy & Security. - The updater was exercised end to end on macOS Apple Silicon: a standalone executable against the published v0.3 archive, and
Kokuban.appagainst this release's disk image (bundle replaced, signature and version verified). Live Linux downloads are covered by unit tests and CI builds, not yet by a real upgrade. v0.3 and older have no updater: install v0.4 manually once; later releases can then be installed withkokuban --update. - Performance figures come from the linked paired reports on their recorded hosts and revisions; they are not new measurements of the v0.4 binaries.
See the v0.3…v0.4 comparison, installation instructions and updating.
Downloads and validation
| Computer | Download |
|---|---|
| macOS Apple Silicon | kokuban-v0.4-aarch64-apple-darwin.dmg (app) or .tar.gz (executable) |
| macOS Intel | kokuban-v0.4-x86_64-apple-darwin.dmg (app) or .tar.gz (executable) |
| Linux x86_64 | kokuban-v0.4-x86_64-unknown-linux-gnu.tar.gz |
Download the file for your computer and its matching .sha256, then check it with shasum -a 256 --check (macOS) or sha256sum --check (Linux). Neither Rust nor Python is required to run Kokuban.
Built from commit 020f03fa0073dff874c7a8aa12bade844094a9d8 with Rust 1.94.1. Native release jobs and CI validate this source. Linux release checks exercise X11 rendering, command launching, clipboard, Omarchy theme/font behavior and startup of the extracted binary. macOS checks cover native Rust tests, executable architecture, dynamic dependencies and, for each disk image, its checksum, Applications link, app architecture, bundle version and code signature.
Packages were built from the verified v0.4 tag. BUILD-INFO.json records build_kind: tag, tag_commit_verified: true, the binary SHA-256 and source identity. Each archive includes configuration, icon, documentation, project and third-party notices, and required third-party source; Kokuban.app carries the project license and third-party notices in its Resources.
License and acknowledgment
Original Kokuban code and documentation use BSD-4-Clause. Advertising materials mentioning features or use of this software must include:
This product includes software developed by the Kokuban contributors.
The v0.1 release retains its original MIT license. Third-party licenses remain unchanged, including the MIT notices for derived Unicode tables and CC-BY-4.0 for the code of conduct.