NetDesk 1.5.0 — source release
This commit is contained in:
commit
40318aafdd
227 files changed
+80798
No files matched your search
@@ -0,0 +1,64 @@
|
||||
[package]
|
||||
name = "netdesk-viewer"
|
||||
version.workspace = true
|
||||
edition.workspace = true
|
||||
authors.workspace = true
|
||||
license.workspace = true
|
||||
description = "NetDesk native viewer window — GPU-filtered (bilinear) remote-screen rendering with a full TeamViewer/RustDesk-style toolbar, built on eframe + egui (winit + glow). Developed by Akronlogic."
|
||||
|
||||
[[bin]]
|
||||
name = "netdesk-viewer"
|
||||
path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
netdesk-core = { path = "../core" }
|
||||
tokio = { workspace = true }
|
||||
anyhow = { workspace = true }
|
||||
# control-protocol payloads (session.info / sys.res) arrive as JSON strings from
|
||||
# the core; parse them in the net thread into clean Rust before the UI sees them.
|
||||
serde_json = { workspace = true }
|
||||
# host-control module (host_ctl.rs) models the shared config.json with derive.
|
||||
serde = { workspace = true }
|
||||
# host-control module: blocking HTTPS (rustls) to the relay /api — account
|
||||
# sign-in / sign-up / sign-out, device list, and /health ping. Enable the
|
||||
# "json" feature for send_json / into_json (tls + gzip are on by default).
|
||||
ureq = { version = "2.10", features = ["json"] }
|
||||
# eframe bundles winit + the GPU backend (glow/OpenGL) + the event loop, and egui
|
||||
# gives us a real toolbar/menus over the remote image. egui TextureOptions::LINEAR
|
||||
# = bilinear GPU filtering = smooth + clear scaling of the decoded frame.
|
||||
eframe = { version = "0.29", default-features = false, features = ["glow", "default_fonts"] }
|
||||
egui = "0.29"
|
||||
# OS clipboard read/write for RustDesk-style clipboard sync (egui can set but not
|
||||
# read the clipboard; arboard does both). Already in the tree via eframe.
|
||||
arboard = "3"
|
||||
# decode the embedded NetDesk logo PNG into pixels (window icon + in-app logo
|
||||
# texture) and encode the live frame to PNG for "Save screenshot".
|
||||
image = { version = "0.25", default-features = false, features = ["png"] }
|
||||
# native OS file-picker for the File transfer panel's "Upload…" button (pick a
|
||||
# local file to send to the host). Sync FileDialog only, so no async runtime
|
||||
# feature is needed; the Linux-backend features are irrelevant on Windows.
|
||||
rfd = { version = "0.15", default-features = false }
|
||||
# pure-Rust QR encoder (Nayuki) for in-app TOTP 2FA enrollment — render the
|
||||
# host's otpauth:// secret as a QR the user scans with an authenticator app.
|
||||
qrcodegen = "1.8"
|
||||
# crisp, consistent icon set (web / copy / folder / lock / power / arrows / …) so
|
||||
# every button shows a real icon instead of a missing-glyph box. Pure-Rust
|
||||
# embedded font (Phosphor), no C build; matches egui 0.29.
|
||||
egui-phosphor = "0.7"
|
||||
# logging for the headless --host diagnostics
|
||||
env_logger = "0.11"
|
||||
# NOTE: remote audio playback ("Play remote computer sound") is implemented in
|
||||
# src/audio.rs (cpal + Opus) but not yet wired in — the libopus build on this
|
||||
# windows-gnu toolchain needs a reliable Opus source (audiopus_sys 0.1.8's build
|
||||
# script mangles extended-length paths). Re-enable cpal + an Opus decoder here
|
||||
# and `mod audio;` in main.rs once that is sorted.
|
||||
|
||||
# Unified app: the native Rust host engine (capture+encode+SendInput) runs
|
||||
# IN-PROCESS when the user clicks Start Service, so one NetDesk.exe both views
|
||||
# and hosts — no Python. Windows-only (DXGI/MediaFoundation/SendInput live here).
|
||||
[target.'cfg(windows)'.dependencies]
|
||||
netdesk-host = { path = "../host" }
|
||||
# Remote audio playback (src/audio.rs): Opus decode via the vendored libopus
|
||||
# + cpal (WASAPI) output.
|
||||
netdesk-opus = { path = "../opus" }
|
||||
cpal = "0.15"
|
||||
Reference in new issue
Block a user