Commit Graph
9 Commits
Author SHA1 Message Date
samiandClaude Opus 5.5 32eadc4d03 Windows updates come from the Kestrove website; version 1.2.1
ci / build (ubuntu-22.04) (push) Canceled after 0s
ci / build (windows-2025) (push) Canceled after 0s
ci / deny (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:57:46 +04:00
samiandClaude Opus 5.5 d70dcc04b6 In-app updates on Windows
ci / build (ubuntu-22.04) (push) Canceled after 0s
ci / build (windows-2025) (push) Canceled after 0s
ci / deny (push) Canceled after 0s
The Microsoft Store doesn't update EXE installs, so the app updates itself
with Tauri's updater. It reads updater/latest.json from the Kestrove Gitea a
minute after startup and once a day. A new version shows as a banner and in
Settings > Updates, and installs only on "Update and restart". The vault locks
before the installer takes over.

The installer must be signed with the Kestrove updater key, with the signature
bound to its version (requireSignedVersion), so a compromised download server
can hold updates back but can't ship one or replay an old installer. Signing
is a release step, after Authenticode: gitea-release.sh signs, uploads the
.sig, and writes latest.json last. Plain builds need no key.

Checks reveal only the IP address and app version, and can be turned off in
Settings. endpoints is a list, so a mirror can be added. Linux packages update
through their package manager.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:19:24 +04:00
samiandClaude Opus 5.5 c2273e202e Release 1.2.0: colour themes, Windows Hello, official icon
ci / build (ubuntu-22.04) (push) Canceled after 0s
ci / build (windows-2025) (push) Canceled after 0s
ci / deny (push) Canceled after 0s
Windows and Linux app 1.2.0, from the beta work: colour themes synced across
devices, unlock with Windows Hello, the official Kestrove icon, and the Chrome
Web Store extension id.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 09:09:04 +04:00
samiandClaude Opus 5.5 f588da3f15 Release 1.1.0: passkeys, tags, sign in with Google/Apple…
ci / build (ubuntu-22.04) (push) Canceled after 0s
ci / build (windows-2025) (push) Canceled after 0s
ci / deny (push) Canceled after 0s
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 15:54:39 +07:00
samiandClaude Opus 5.5 9dd43b76e9 Windows installer: fix the Windows build and register the browser host
ci / build (ubuntu-22.04) (push) Canceled after 0s
ci / build (windows-2025) (push) Canceled after 0s
ci / deny (push) Canceled after 0s
- main.rs: the Windows clipboard branch dropped the copy's Result (only the non-Windows branch was
  checked), which failed to compile for Windows; both now report a failed copy.
- windows/hooks.nsh: the NSIS installer writes the native messaging manifests next to kestrove-nmh.exe
  and registers them under HKCU for Chrome, Chromium, Edge, Brave, Vivaldi and Firefox; uninstall
  removes them. Per-user install.
- scripts/windows.sh: cross-build with cargo-xwin, compile the installer with NSIS 3.11 in a Debian 13
  container (Homebrew's makensis 3.13 crashes on macOS).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 19:32:06 +09:00
samiandClaude Opus 5.5 dda979bebe Version 1.0.0; Linux release build and Gitea release script
ci / build (ubuntu-22.04) (push) Canceled after 0s
ci / build (windows-2025) (push) Canceled after 0s
ci / deny (push) Canceled after 0s
scripts/linux.Dockerfile builds the AppImage, .deb and Linux native host in Debian 12 (amd64);
scripts/gitea-release.sh creates the v<version> release and uploads them with SHA256SUMS.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 16:28:59 +09:00
samiandClaude Opus 5.5 19c4ce1899 Apply the Kestrove design system to the desktop UI
- src/ui: tokens.css (generated from the design system's tokens.json), kv.css components, fonts.css with
  the bundled Inter and JetBrains Mono woff2, kv.ts DOM builders (icons, tiles, item rows, secrets,
  codes, TOTP ring, pills, banners). The browser extension uses the same module.
- Layout: custom title bar in bg (macOS overlay title bar, traffic lights kept), left rail, list and detail.
- Item detail: field rows with 10-dot masking, coloured digits/symbols on reveal (re-masks after 30 s),
  copy turns into a check for 1.5 s, TOTP in code-lg with the ring.
- Add-a-device QR card, Use my phone QR with countdown and confirmation code, approve sheet.
- Status pills, banners and the integrity alert; Light / Dark / System in Settings (also sets the window theme).
- totp command returns the period for the ring.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 16:35:58 +09:00
samiandClaude Opus 5.5 923c466dea M3: working desktop app + browser pairing channel
- Builds and runs (tauri build --debug); placeholder icons; persistent VaultCore::open in the
  OS app-data dir; Secret Key remembered on the device; tray keeps the app serving the extension.
- Auto-lock: idle (system idle on Windows/macOS, in-app activity on Linux), screen lock, sleep.
- Local IPC for kestrove-nmh: 0700 dir + 0600 Unix socket with peer-uid checks; Windows named
  pipe (first instance, local only, user DACL, client SID check) behind cfg.
- Pairing channel: X25519 → HKDF → 6-word fingerprint confirmed in both UIs, per-connection
  session keys, AES-256-GCM with strict counters. Test vectors shared with kestrove-browser.
- Broker: query/fill/totp/save with origin re-checks; pairing and save prompts in the UI.
- kestrove-nmh relays ciphertext only; native-host installers for Linux/macOS/Windows.
- Tests: unit tests, tests/nmh_stdio.rs (real kestrove-nmh over stdio), examples/test-host.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-16 20:13:54 +09:00
samiandClaude Opus 5.5 d2cbd56ff7 Initial scaffold for kestrove-desktop
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-15 18:30:14 +09:00