archives
HEADb4b144ca74c1rewrite Nina README around verified workflows (3.4.14)6 days ago
nix profile add https://kepr.uk/nina/archive/HEAD.tar.gz1721e21f7a84give each koh.build platform its own output path so koh offer --builds can publish (3.4.14)1 week ago
nix profile add https://kepr.uk/nina/archive/1721e21f7a84.tar.gz75893c079c90migrate: rename kepr.build to koh.build1 week ago
nix profile add https://kepr.uk/nina/archive/75893c079c90.tar.gz1df7c5b3bc0adocs: Record multi-input pin smoke evidence3 months ago
nix profile add https://kepr.uk/nina/archive/1df7c5b3bc0a.tar.gz3c9ac84ad6d7fix: Resolve fable audit pin and option leftovers (v3.4.14)3 months ago
nix profile add https://kepr.uk/nina/archive/3c9ac84ad6d7.tar.gz36df571ddf9dfable audit fix campaign complete — all 26 findings resolved (NINA-001 through NINA-026), NINA-008 deferred to honest-failure stub and NINA-009 to best-effort pending real-host verification, see docs/fable-audit-2026-07-02-resolved.md and CONTINUITY.md for full resolution detail3 months ago
nix profile add https://kepr.uk/nina/archive/36df571ddf9d.tar.gz28a27c6d7ba4probe /dev/tty accessibility before reading the install prompt so non-interactive contexts (CI, provisioning, curl|sh with no controlling tty) exit 0 with install instructions instead of dying on a bare redirection error (NINA-025)3 months ago
nix profile add https://kepr.uk/nina/archive/28a27c6d7ba4.tar.gzd598fb1dd67bbump build.zig.zon .version to match VERSION and add zon/VERSION sync-check test (NINA-018)3 months ago
nix profile add https://kepr.uk/nina/archive/d598fb1dd67b.tar.gz2b98515f8daesync stale ~/.nina.conf error strings and man/README search-key + log-path docs to current XDG config path, real search keybindings, and real log path (NINA-017/019)3 months ago
nix profile add https://kepr.uk/nina/archive/2b98515f8dae.tar.gza4d2b79b37cbman pager help screen's i==0 row now emits exactly one line instead of two, so the help frame is exactly PAGE_ROWS tall and the redraw's cursorUp(PAGE_ROWS + FOOTER_ROWS) no longer drifts the frame up a row on every dismiss/redraw; dismissing help with any key now forces an immediate body+footer redraw instead of leaving stale help content until the next navigation key; extends the v3.4.5 ghosting-drift regression coverage to drawHelpBody and drawBody with newline-count tests against captured output (NINA-015)3 months ago
nix profile add https://kepr.uk/nina/archive/a4d2b79b37cb.tar.gz48628db291a4search/man TUI raw mode restores the terminal on SIGINT/SIGTERM/SIGHUP via a shared rawterm.zig module, instead of relying solely on defer (which never runs on a signal or a ReleaseSafe panic-abort); ISIG stays enabled so ^C now delivers SIGINT to break out of a wedged search instead of landing as a dead 0x03 byte, and the handler restores the saved termios before re-raising with the default disposition so the process still dies the way it would have (NINA-014)3 months ago
nix profile add https://kepr.uk/nina/archive/48628db291a4.tar.gzceda368a6deadelete getLicense: no caller anywhere in src/ or test/ (the Tab detail pane uses packageMeta), and it returned a slice into result.stdout no caller could ever free correctly (NINA-021)3 months ago
nix profile add https://kepr.uk/nina/archive/ceda368a6dea.tar.gzd55b75fe962bsearchOptions builds a working nix eval --impure --expr invocation (nixosSystem + optionAttrSetToDocList) instead of the previous nix eval nixpkgs#lib.optionAttrSetToDocList nixpkgs#nixosModules call that could never succeed (two positionals, a non-serializable function, an unevaluable output path); filterOptions now also accepts the literalExpression-wrapped default shape alongside plain strings; best-effort fix verified only via fixture-driven parsing tests (no nix on this host) — needs real-host/VM confirmation before fully resolved (NINA-009)3 months ago
nix profile add https://kepr.uk/nina/archive/d55b75fe962b.tar.gze5a03023f758bootEntry prints its date suffix as a separate p() call instead of allocPrint-ing via std.heap.page_allocator inline (never freed) — same visual output, no allocation (NINA-023)3 months ago
nix profile add https://kepr.uk/nina/archive/e5a03023f758.tar.gz135d27fa00b4hook output, an unparseable log line, and nix search descriptions now pass through a new output.sanitize() before reaching the terminal, stripping control bytes < 0x20 (except \n/\t) and CSI sequences so embedded ESC bytes can't inject escape sequences; generalizes exec.zig's stripAnsi (removed, both diff-closures call sites now use output.sanitize) (NINA-016)3 months ago
nix profile add https://kepr.uk/nina/archive/135d27fa00b4.tar.gz2bc90194d359output.confirm() now refuses on a closed/non-interactive stdin instead of assuming yes, printing a hint to pass --yes; adds a real --yes flag (main.zig parseArgs + output.setAutoYes) for legitimate automation; confirmDefaultNo is unchanged (NINA-005)3 months ago
nix profile add https://kepr.uk/nina/archive/2bc90194d359.tar.gza801f719897clogAction JSON-escapes ctx.machine.name before embedding it in a JSONL log entry, so a config machine name containing a quote or backslash no longer produces an invalid line that renderJsonLogLine can only dump raw (NINA-020)3 months ago
nix profile add https://kepr.uk/nina/archive/a801f719897c.tar.gze923ab8ccb1aflake/channel/profile/pkg dispatchers reject an unrecognized subcommand with subcommand help and a non-zero exit instead of silently falling off the if-chain and exiting 0; adds a profile_help table (none existed before) and a shared subcommandKnown helper (NINA-012)3 months ago
nix profile add https://kepr.uk/nina/archive/e923ab8ccb1a.tar.gz4f0092888eb7service allowlists start/stop/restart/enable/disable before forwarding a verb to sudo systemctl, rejecting unlisted verbs like mask/kill/revert with subcommand help and a non-zero exit instead of running them unconfirmed and undocumented (NINA-011)3 months ago
nix profile add https://kepr.uk/nina/archive/4f0092888eb7.tar.gz721ba656a3a3pin now fails loudly with 'not implemented yet' instead of silently no-op'ing through the editFlakeLock stub and reporting fake success; unpin (which genuinely runs nix flake update) replaces pin in help/man since pin needs real flake.lock input-source resolution out of scope for a mechanical fix (NINA-008)3 months ago
nix profile add https://kepr.uk/nina/archive/721ba656a3a3.tar.gza2c2b67bd83adiff guards against a u32 underflow panic by returning a friendly message when no generation is marked current or too few generations exist, instead of falling into current - 1 arithmetic (NINA-007)3 months ago
nix profile add https://kepr.uk/nina/archive/a2c2b67bd83a.tar.gz