Commit graph

84 commits

Author SHA1 Message Date
Your Name 4c629aaf53 feat(desktop): wire Tauri 2 builder, hotplug, and capabilities
Hotplug registration moves from on_page_load to setup (runs once, so the
AtomicBool guard is dropped). v1 allowlist replaced by a capability file
granting dialog:allow-open and shell:allow-open. CSP from 0472908 carried
forward to app.security.csp; bundle targets narrowed to deb + appimage.

Also derives Clone on device::AddDevice: Tauri 2's Emitter::emit requires
Serialize + Clone (v1's did not), and the addDevice event payload was
missing the derive. No wire-format or IPC contract change.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 19:38:31 -04:00
Your Name b54976fd28 feat(desktop): port all 13 IPC commands to Tauri 2
Window -> WebviewWindow, emit now requires the Emitter trait, and
hashbrown's drain_filter is replaced by an explicit collect-then-remove
on std HashMap. IPC contract unchanged.

Also derive Clone on ProgressUpdate (device.rs): Tauri 2's
Emitter::emit requires Serialize + Clone, unlike Tauri 1's
Window::emit which only required Serialize. Required for
progress_sender's window.emit("progress", ProgressUpdate { .. })
call to compile. No change to serialized shape or field names.
2026-07-19 19:00:35 -04:00
Your Name 816300fbcc feat(desktop): port device registry and error type to Tauri 2
Splits the former 478-line main.rs into focused modules. Drops hashbrown
in favour of std HashMap (the drain_filter API it was used for was
renamed with changed semantics) and drops vendored libusb1-sys in favour
of the system library, matching nlink-cli.

Also removes the Task 2 scaffold's lib.rs/tauri-plugin-opener indirection
(the brief's module layout is a plain binary with no lib target) and drops
the now-dangling "opener:default" permission from capabilities/default.json,
which otherwise fails the Tauri build script with an unresolved permission
error.
2026-07-19 09:44:22 -04:00
Your Name 4626858fa5 feat(desktop): replace Tauri 1 / Vue CLI tree with Tauri 2 + Vue 3 + Vite scaffold
Tauri 1.0.0-beta.8 links webkit2gtk-4.0, unavailable on Ubuntu 26.04.
Verified: builds and links libwebkit2gtk-4.1.so.0, libsoup-3.0.so.0,
libjavascriptcoregtk-4.1.so.0 with no webkit-4.0 or libssl.1.1 refs.

Workspace moved from yarn to npm; yarn.lock invalidated by this port.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 09:36:36 -04:00
Your Name 94c62e810b docs(plan): amend Plan A verification for unavailable oracle
n-link-cli ls / returns Busy then hangs (known CX II firmware issue,
owned by the user, out of scope here). Transfer-dependent gates are
downgraded to non-blocking; enumerate remains a full verification of the
IPC path since it reads USB descriptors only and does no libnspire
transfer.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 09:23:10 -04:00
Your Name 8db940edc8 Add Plan A: Tauri 2 backend port implementation plan
Eight tasks from system-dep install through verified deb/appimage
bundles, with a webkit2gtk-4.1 go/no-go gate at Task 2 and n-link-cli
used as the verification oracle against the connected CX II.

Splits the spec's two phases into two plans; Plan B (frontend) is
written after Plan A is verified so it can be grounded in the real
scaffold output rather than assumptions.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 09:08:53 -04:00
Your Name 754fbf9c70 Add design spec for Tauri 2 + Vue 3 desktop port
Ports desktop from Tauri 1.0.0-beta.8 (webkit2gtk-4.0, unavailable on
Ubuntu 26.04) to Tauri 2.x (webkit2gtk-4.1), alongside Vue 2 -> Vue 3 and
Vue CLI -> Vite. Wires in the locally patched libnspire-sys already proven
by nlink-cli.

Scoped to Linux (deb + appimage). The web/ package shares n-link-core and
is knowingly left broken, deferred to its own project.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 09:01:06 -04:00
lights0123 0472908ef4
Fix csp causing blank screen in release mode 2021-11-13 12:42:10 -05:00
lights0123 89a613d25a switch to tauri-build 2021-10-31 15:57:03 -04:00
lights0123 a8dddd1756 Small tweaks 2021-10-27 16:59:52 -04:00
JandereDev 3311e0d358 Check OS update file extension 2021-10-27 16:59:52 -04:00
JandereDev abd8797751 Added upload-os, copy, move subcommands 2021-10-27 16:59:52 -04:00
JandereDev cdd06cb3e6 Added download and ls, formatted cli.rs 2021-10-27 16:59:52 -04:00
JandereDev fd6d7d87b6 Added error handling to upload subcommand 2021-10-27 16:59:52 -04:00
JandereDev a08eb0b791 Added mkdir and rmdir subcommands 2021-10-27 16:59:52 -04:00
lights0123 5ce4d8a560
Workaround CI issue on Windows 2021-08-30 19:55:16 -04:00
lights0123 ade24ce050
Workaround CI issue 2021-08-30 17:57:59 -04:00
lights0123 eb961b8973
Port to tauri beta 2021-08-30 16:49:54 -04:00
lights0123 35cc07f0ed
Bump version 2021-04-06 17:39:41 -04:00
lights0123 75ef04b742
Show errors when udev rules are required on desktop 2021-04-06 17:38:45 -04:00
lights0123 4b90a1a8da
Error messages during passive operation 2021-04-06 17:26:08 -04:00
lights0123 ac1a26a797
Error messages 2021-04-06 17:01:54 -04:00
lights0123 5d5b98dd59
Ensure cache is valid: change the restore keys... 2021-04-05 18:07:40 -04:00
lights0123 b555130353
Ensure cache is valid: bump cache key 2021-04-05 17:59:56 -04:00
lights0123 fd07af00e7
Ensure cache is valid: ok, fix for new changes 2021-04-05 17:55:00 -04:00
lights0123 4c0b2277c6
Ensure cache is valid: wtf actions/cache#403 2021-04-05 17:49:51 -04:00
lights0123 a07d785ca1
Ensure cache is valid: ah, it's the target directory 2021-04-05 17:36:43 -04:00
lights0123 6823ee76f6
Ensure cache is valid... again 2021-04-05 17:33:32 -04:00
lights0123 f90d912568
Ensure cache is valid 2021-04-05 17:29:00 -04:00
lights0123 d2a30f97f8
Fix cli with an AppImage 2021-04-05 16:57:18 -04:00
lights0123 697a7365f3
Update deps 2021-04-05 15:21:43 -04:00
lights0123 7cbf54dabd
Add additional info to web version 2020-11-22 19:24:17 -05:00
lights0123 4a957aba88
fix version again 2020-11-22 19:11:14 -05:00
lights0123 878957c45d
...fix version 2020-11-22 19:01:41 -05:00
lights0123 3dd5b24c02
Fix GitHub env 2020-11-22 18:58:31 -05:00
lights0123 b88a9c6555
Fix uploaded file path 2020-11-22 18:49:26 -05:00
lights0123 a7e90368f2
Fix CX II compatibility with web 2020-11-22 18:02:06 -05:00
lights0123 9c39ce1806
Delete unused file 2020-11-18 15:35:17 -05:00
lights0123 d4d3b87405
Fix WebUSB detection 2020-10-28 22:19:36 -04:00
lights0123 d08aac0db1
Add warning with WebUSB-incompatible browser 2020-10-28 22:13:32 -04:00
lights0123 b400f43f6f
Add deployment config 2020-10-06 15:23:59 -04:00
lights0123 9868fa3634
Actually add web workspace 2020-10-06 11:01:36 -04:00
lights0123 10756ff9e8
Fix CI 2020-10-06 10:51:33 -04:00
lights0123 787946a6dd
Add web version 2020-10-06 10:48:41 -04:00
lights0123 1721580bf5
kinda working 2020-10-05 20:42:27 -04:00
lights0123 35df1c69f4
Refactor common code out 2020-10-02 16:17:55 -04:00
lights0123 684b3c3b17
Move to workspace 2020-10-01 21:22:35 -04:00
lights0123 73706965ba
Remove unused imports 2020-09-30 21:53:41 -04:00
lights0123 ad129825fc
Fix CX II compat 2020-09-30 17:48:18 -04:00
lights0123 4b95b02768
Fix macOS compat 2020-09-28 15:12:15 -04:00