Commit Graph

152 Commits

Author SHA1 Message Date
Aveline c105699bf8 chore: update jetkvm_native binary (4e2ce48) (#442) 2025-09-26 08:21:17 +00:00
Aveline 2046c7c76d chore: create images folder when starting the application (#437) 2025-09-26 08:21:17 +00:00
Aveline 38a28ee534 feat(usb_mass_storage): mount as disk (#333)
* feat(usb_mass_storage): mount as disk

* chore: try to set initial virtual media state from sysfs

* chore(usb-mass-storage): fix inquiry_string
2025-09-26 08:21:17 +00:00
Marc Brooks 4bcd53997d Update npm packages for the UI (#432)
Upgraded most packages to current as of 2025-05-09 for almost everything.
Remove the erroneous extra dependency to old xterm package since the correct @xterm/xterm package was already included (suspect a bad merge) and it was causing issues with react 19.1.
Switched to using the hooks exposed in the usehooks-ts package (this package was already referenced, suspect a bad merge) removing our private copies of useInterval, useIsMounted, useResizeObserver which are identical.
Added import of JSX from react now needed because NPX is not in global scope in react 19.x.
Explicitly cast the ref of included elements due to change in react 19.x
2025-09-26 08:21:17 +00:00
Daniel Lorch dc086834a3 Fix: Alt Gr not recognized (#399)
* Fix: Alt-Gr not recognized

* Proper fix for Alt-Gr not being recognized

* Add comment on codes and modifiers

* Add comment on paste box

* Remove comment

* Improve description

* Wording...

* Formatting...

* Improve description again
2025-09-26 08:21:17 +00:00
Qishuai Liu 03ee14dd79 ntp: fix panic on NTP query error and add IPv6 server for IPv6-only support (#424)
* fix(ntp): prevent panic on NTP query error and add IPv6 server in defaultNTPServers

* fix(ntp): make sure queryMultipleNTP finish if all servers failed
2025-09-26 08:21:17 +00:00
John 34450e9366 fix: absolute mouse scroll (#434)
Co-authored-by: wup-one <wup@deepspace.game>
2025-09-26 08:21:17 +00:00
Peder Toftegaard Olsen 297c9306da feat: UI for changing display orientation
* Added UI for changing display orientation.

* Fixed lint issue.
2025-09-26 08:21:17 +00:00
Siyuan Miao 81a3510810 chore: bump version to 0.4.0 2025-09-26 08:21:17 +00:00
Aveline 96fc1a20ad network enhanecment / refactor (#361)
* chore(network): improve connectivity check

* refactor(network): rewrite network and timesync component

* feat(display): show cloud connection status

* chore: change logging verbosity

* chore(websecure): update log message

* fix(ota): validate root certificate when downloading update

* feat(ui): add network settings tab

* fix(display): cloud connecting animation

* fix: golintci issues

* feat: add network settings tab

* feat(timesync): query servers in parallel

* refactor(network): move to internal/network package

* feat(timesync): add metrics

* refactor(log): move log to internal/logging package

* refactor(mdms): move mdns to internal/mdns package

* feat(developer): add pprof endpoint

* feat(logging): add a simple logging streaming endpoint

* fix(mdns): do not start mdns until network is up

* feat(network): allow users to update network settings from ui

* fix(network): handle errors when net.IPAddr is nil

* fix(mdns): scopedLogger SIGSEGV

* fix(dhcp): watch directory instead of file to catch fsnotify.Create event

* refactor(nbd): move platform-specific code to different files

* refactor(native): move platform-specific code to different files

* chore: fix linter issues

* chore(dev_deploy): allow to override PION_LOG_TRACE
2025-09-26 08:21:17 +00:00
Aveline d2ed3439fb feat: implement pointer-lock and keyboard-lock (#352)
* feat: implement pointer-lock and keyboard-lock

* feat: Add Pointer lock functionality and SSL support in dev mode

- Introduced @vitejs/plugin-basic-ssl for enabling SSL in development.
- Added a new script `dev:ssl` to run the development server with SSL.
- Implemented pointer lock feature in the WebRTCVideo component, enhancing user interaction.
- Added a PointerLockBar component to guide users on enabling mouse control.
- Cleaned up the VideoOverlay and WebRTCVideo components for better readability and functionality.

---------

Co-authored-by: Adam Shiervani <adam.shiervani@gmail.com>
2025-09-26 08:21:17 +00:00
Simão Gomes Viana a1e65ae6d1 VideoOverlay: add missing word to adapter line (#355)
THe sentence was incomplete without "ensure".
2025-09-26 08:21:17 +00:00
Ben Kochie 99015c80fe refactor: update golintci-lint and linter issues
* Update golangci-lint

Update golangci-lint to v2.

Signed-off-by: SuperQ <superq@gmail.com>

* Fixup various linter issues.

Signed-off-by: SuperQ <superq@gmail.com>

---------

Signed-off-by: SuperQ <superq@gmail.com>
2025-09-26 08:21:17 +00:00
Siyuan Miao 22ceb698c5 chore(ntp): add logging for time sync errors 2025-09-26 08:21:17 +00:00
Siyuan Miao b8ec8b46a1 fix(log): segmentation violation when err is nil 2025-09-26 08:21:17 +00:00
Siyuan Miao 80dc1a5257 chore(cloud): use request id from the cloud 2025-09-26 08:21:17 +00:00
Siyuan Miao acd0b94871 chore(log): ntp logger 2025-09-26 08:21:17 +00:00
Siyuan Miao aafc9318ab chore(log): add nbdLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao 22a757cac7 chore: fix linting issue 2025-09-26 08:21:17 +00:00
Siyuan Miao 26064f44f0 chore: update logging 2025-09-26 08:21:17 +00:00
Siyuan Miao 265ea5ab8b chore(log): add wolLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao f61b16421c fix(ota): verifyFile missing arguments 2025-09-26 08:21:17 +00:00
Siyuan Miao 1b34e3f35d chore(log): add webRtcLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao a0bc18ea90 chore(log): add terminalLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao e2b6883342 chore(log): add serialLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao 15d95a8147 chore(log): add otaLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao 0302faa030 chore(log): add watchdogLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao 74a11ef7e9 chore(log): add jsonRpcLogger 2025-09-26 08:21:17 +00:00
Siyuan Miao 6e5493503e feat(tls): #330 2025-09-26 08:21:17 +00:00
Siyuan Miao 6c6ce4e5cb refactor: use structured logging 2025-09-26 08:21:17 +00:00
Andrew Davis 63176c8b53 Add keyboard macros (#305)
* add jsonrpc keyboard macro get/set

* add ui keyboard macros settings and macro bar

* use notifications component and handle jsonrpc errors

* cleanup settings menu

* return error rather than truncate steps in validation

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat(ui): add className prop to Checkbox component to allow custom styling

* use existing components and CTA

* extract display key mappings

* create generic combobox component

* remove macro description

* cleanup styles and macro list

* create sortable list component

* split up macro routes

* remove sortable list and simplify

* cleanup macrobar

* use and add info to fieldlabel

* add useCallback optimizations

* add confirm dialog component

* cleanup delete buttons

* revert info on field label

* cleanup combobox focus

* cleanup icons

* set default label for delay

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-26 08:21:17 +00:00
Adam Shiervani 5708653617 chore(dev_deploy): update logging for websocket in deployment script (#348) 2025-09-26 08:21:17 +00:00
Aveline 4aa37e2aa7 chore(websocket): logging and metrics improvement (#347)
* chore(websocket): only show warning if websocket is closed abnormally

* chore(websocket): add counter for ping requests received
2025-09-26 08:21:17 +00:00
Aveline daf28ac225 feat(websocket): handle ping messages sent from react and add logging (#346) 2025-09-26 08:21:17 +00:00
Adam Shiervani f1ba567ca3 fix(ui): adjust layout and z-index for improved UI consistency in KvmIdRoute (#345) 2025-09-26 08:21:17 +00:00
Adam Shiervani c14149f547 fix(ui): update WebRTCVideo component to properly animate on peer connection state (#343) 2025-09-26 08:21:17 +00:00
Ben Kochie 1ee3ae5aa6 fix: Shell linting (#328)
Cleanup various shell linting issues
* Use `/usr/bin/env` consistently for better platform compatibility.
* SC2317 (info): Command appears to be unreachable.
* SC2002 (style): Useless cat.

Signed-off-by: SuperQ <superq@gmail.com>
2025-09-26 08:21:17 +00:00
Adam Shiervani de857ec32d fix(ui): increase z-index for Modal component to improve layering (#341) 2025-09-26 08:21:17 +00:00
Adam Shiervani 0c3ea6e423 fix(dev_device): update JETKVM_PROXY_URL to use WebSocket protocol (#342) 2025-09-26 08:21:17 +00:00
Adam Shiervani 2c99d356b6 Don't block new PC if connection is stable. No need to (#340) 2025-09-26 08:21:16 +00:00
Adam Shiervani 14909b22de refactor: remove unnecessary whitespace in setupRouter function 2025-09-26 08:21:16 +00:00
Adam Shiervani c3a44cd953 re-add old signaling for when upgrading 2025-09-26 08:21:16 +00:00
Siyuan Miao fcb1fc3555 fix(ota): certificate signed by unknown authority 2025-09-26 08:21:16 +00:00
Adam Shiervani d4a2557d10 Feat/Trickle ice (#336)
* feat(cloud): Use Websocket signaling in cloud mode

* refactor: Enhance WebRTC signaling and connection handling

* refactor: Improve WebRTC connection management and logging in KvmIdRoute

* refactor: Update PeerConnectionDisconnectedOverlay to use Card component for better UI structure

* refactor: Standardize metric naming and improve websocket logging

* refactor: Rename WebRTC signaling functions and update deployment script for debug version

* fix: Handle error when writing new ICE candidate to WebRTC signaling channel

* refactor: Rename signaling handler function for clarity

* refactor: Remove old http local http endpoint

* refactor: Improve metric help text and standardize comparison operator in KvmIdRoute

* chore(websocket): use MetricVec instead of Metric to store metrics

* fix conflicts

* fix: use wss when the page is served over https

* feat: Add app version header and update WebRTC signaling endpoint

* fix: Handle error when writing device metadata to WebRTC signaling channel

---------

Co-authored-by: Siyuan Miao <i@xswan.net>
2025-09-26 08:21:16 +00:00
Aveline 06a595a610 chore(ota): allow a longer timeout when downloading packages (#332) 2025-09-26 08:21:16 +00:00
Siyuan Miao 075437410f feat(cloud): disconnect from cloud immediately when cloud URL changes or user requests to deregister 2025-09-26 08:21:16 +00:00
Adam Shiervani 095f5c542d refactor: Update WebRTC connection handling and overlays (#320)
* refactor: Update WebRTC connection handling and overlays

* fix: Update comments for WebRTC connection handling in KvmIdRoute

* chore: Clean up import statements in devices.$id.tsx
2025-09-26 08:21:16 +00:00
Siyuan Miao 2d1b327159 feat(cloud): add metrics for cloud connections 2025-09-26 08:21:16 +00:00
Siyuan Miao 24bc04123d chore: skip websocket client if net isn't up or time sync hasn't complete 2025-09-26 08:21:16 +00:00
Cameron Fleming e0ea91d977 chore: Update README Discord Link
Corrects Discord link in the help section.
2025-09-26 08:21:16 +00:00