diff --git a/client/Cargo.toml b/client/Cargo.toml index e33d8cc..f39f73c 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -1,9 +1,9 @@ [[bin]] -name = "navka-client" +name = "lesavka-client" path = "src/main.rs" [package] -name = "navka_client" +name = "lesavka_client" version = "0.3.0" edition = "2024" @@ -12,7 +12,7 @@ tokio = { version = "1.45", features = ["full", "fs", "rt-mult tonic = { version = "0.13", features = ["transport"] } tokio-stream = { version = "0.1", features = ["sync"] } anyhow = "1.0" -navka_common = { path = "../common" } +lesavka_common = { path = "../common" } tracing = { version = "0.1", features = ["std"] } tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"] } tracing-appender = "0.2" @@ -29,5 +29,5 @@ raw-window-handle = "0.6" prost-build = "0.13" [lib] -name = "navka_client" +name = "lesavka_client" path = "src/lib.rs" diff --git a/client/src/app.rs b/client/src/app.rs index 506399f..34ac675 100644 --- a/client/src/app.rs +++ b/client/src/app.rs @@ -9,12 +9,12 @@ use tokio_stream::{wrappers::BroadcastStream, StreamExt}; use tonic::Request; use tracing::{debug, error, info, warn}; -use navka_common::navka::{relay_client::RelayClient, KeyboardReport, MouseReport, MonitorRequest, VideoPacket}; +use lesavka_common::lesavka::{relay_client::RelayClient, KeyboardReport, MouseReport, MonitorRequest, VideoPacket}; -use navka_client::input::inputs::InputAggregator; -use navka_client::output::video::MonitorWindow; +use lesavka_client::input::inputs::InputAggregator; +use lesavka_client::output::video::MonitorWindow; -pub struct NavkaClientApp { +pub struct LesavkaClientApp { aggregator: Option, server_addr: String, dev_mode: bool, @@ -22,7 +22,7 @@ pub struct NavkaClientApp { mou_tx: broadcast::Sender, } -impl NavkaClientApp { +impl LesavkaClientApp { pub fn new() -> Result { let dev_mode = std::env::var("NAVKA_DEV_MODE").is_ok(); let server_addr = std::env::args() diff --git a/client/src/input/inputs.rs b/client/src/input/inputs.rs index 1b5b251..960917d 100644 --- a/client/src/input/inputs.rs +++ b/client/src/input/inputs.rs @@ -5,7 +5,7 @@ use evdev::{Device, EventType, KeyCode, RelativeAxisCode}; use tokio::{sync::broadcast::Sender, time::{interval, Duration}}; use tracing::{debug, info}; -use navka_common::navka::{KeyboardReport, MouseReport}; +use lesavka_common::lesavka::{KeyboardReport, MouseReport}; use super::{keyboard::KeyboardAggregator, mouse::MouseAggregator, camera::CameraCapture, microphone::MicrophoneCapture}; diff --git a/client/src/input/keyboard.rs b/client/src/input/keyboard.rs index efcc658..264fba7 100644 --- a/client/src/input/keyboard.rs +++ b/client/src/input/keyboard.rs @@ -5,7 +5,7 @@ use evdev::{Device, EventType, InputEvent, KeyCode}; use tokio::sync::broadcast::Sender; use tracing::{debug, error, info, warn}; -use navka_common::navka::KeyboardReport; +use lesavka_common::lesavka::KeyboardReport; use super::keymap::{is_modifier, keycode_to_usage}; diff --git a/client/src/input/mouse.rs b/client/src/input/mouse.rs index 85166c4..6d67861 100644 --- a/client/src/input/mouse.rs +++ b/client/src/input/mouse.rs @@ -4,7 +4,7 @@ use evdev::{Device, EventType, InputEvent, KeyCode, RelativeAxisCode}; use tokio::sync::broadcast::{self, Sender}; use tracing::{debug, error, warn}; -use navka_common::navka::MouseReport; +use lesavka_common::lesavka::MouseReport; pub struct MouseAggregator { dev: Device, diff --git a/client/src/lib.rs b/client/src/lib.rs index b87b645..542036b 100644 --- a/client/src/lib.rs +++ b/client/src/lib.rs @@ -6,4 +6,4 @@ pub mod app; pub mod input; pub mod output; -pub use app::NavkaClientApp; +pub use app::LesavkaClientApp; diff --git a/client/src/main.rs b/client/src/main.rs index 24c13f1..7d53a80 100644 --- a/client/src/main.rs +++ b/client/src/main.rs @@ -8,15 +8,15 @@ use tracing_appender::non_blocking; use tracing_appender::non_blocking::WorkerGuard; use tracing_subscriber::{filter::EnvFilter, fmt, prelude::*}; -use navka_client::NavkaClientApp; +use lesavka_client::LesavkaClientApp; #[tokio::main] async fn main() -> Result<()> { /*------------- common filter & stderr layer ------------------------*/ let env_filter = EnvFilter::try_from_default_env().unwrap_or_else(|_| { EnvFilter::new( - "navka_client=trace,\ - navka_server=trace,\ + "lesavka_client=trace,\ + lesavka_server=trace,\ tonic=debug,\ h2=debug,\ tower=debug", @@ -33,7 +33,7 @@ async fn main() -> Result<()> { /*------------- subscriber setup -----------------------------------*/ if dev_mode { - let log_path = Path::new("/tmp").join("navka-client.log"); + let log_path = Path::new("/tmp").join("lesavka-client.log"); // file → non‑blocking writer (+ guard) let file = OpenOptions::new() @@ -56,7 +56,7 @@ async fn main() -> Result<()> { .with(file_layer) .init(); - tracing::info!("navka-client running in DEV mode → {}", log_path.display()); + tracing::info!("lesavka-client running in DEV mode → {}", log_path.display()); } else { tracing_subscriber::registry() .with(env_filter) @@ -65,6 +65,6 @@ async fn main() -> Result<()> { } /*------------- run the actual application -------------------------*/ - let mut app = NavkaClientApp::new()?; + let mut app = LesavkaClientApp::new()?; app.run().await } diff --git a/client/src/output/video.rs b/client/src/output/video.rs index 13b0398..6f306c7 100644 --- a/client/src/output/video.rs +++ b/client/src/output/video.rs @@ -3,7 +3,7 @@ use gstreamer as gst; use gstreamer_app as gst_app; use gst::prelude::*; -use navka_common::navka::VideoPacket; +use lesavka_common::lesavka::VideoPacket; use winit::{ event_loop::EventLoop, window::{Window, WindowBuilder}, diff --git a/common/Cargo.toml b/common/Cargo.toml index 3347adb..7a0077b 100644 --- a/common/Cargo.toml +++ b/common/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "navka-common" +name = "lesavka-common" version = "0.2.0" edition = "2024" build = "build.rs" @@ -12,5 +12,5 @@ prost = "0.13" tonic-build = { version = "0.13", features = ["prost"] } [lib] -name = "navka_common" +name = "lesavka_common" path = "src/lib.rs" diff --git a/common/build.rs b/common/build.rs index aa9d918..467ee6c 100644 --- a/common/build.rs +++ b/common/build.rs @@ -4,6 +4,6 @@ fn main() { tonic_build::configure() .build_server(true) .build_client(true) - .compile_protos(&["proto/navka.proto"], &["proto"]) + .compile_protos(&["proto/lesavka.proto"], &["proto"]) .expect("prost build failed"); } diff --git a/common/proto/navka.proto b/common/proto/navka.proto index 0f30f88..1a72e2c 100644 --- a/common/proto/navka.proto +++ b/common/proto/navka.proto @@ -1,5 +1,5 @@ syntax = "proto3"; -package navka; +package lesavka; // smaller, fixed-size payloads -> less allocation and simpler decoding message KeyboardReport { bytes data = 1; } // exactly 8 bytes diff --git a/common/src/lib.rs b/common/src/lib.rs index 75f2691..5451750 100644 --- a/common/src/lib.rs +++ b/common/src/lib.rs @@ -1,6 +1,6 @@ -// Re-export the code generated by build.rs (navka.rs, relay.rs, etc.) +// Re-export the code generated by build.rs (lesavka.rs, relay.rs, etc.) // common/src/lib.rs -pub mod navka { - include!(concat!(env!("OUT_DIR"), "/navka.rs")); +pub mod lesavka { + include!(concat!(env!("OUT_DIR"), "/lesavka.rs")); } diff --git a/scripts/install-client.sh b/scripts/install-client.sh index 547eb49..3df9053 100755 --- a/scripts/install-client.sh +++ b/scripts/install-client.sh @@ -28,7 +28,7 @@ sudo install -Dm755 "$SRC/client/target/release/lesavka-client" /usr/local/bin/l # 6. systemd service for system scope: /etc/systemd/system/lesavka-client.service sudo tee /etc/systemd/system/lesavka-client.service >/dev/null <<'EOF' [Unit] -Description=Navka Client +Description=Lesavka Client After=network-online.target Wants=network-online.target diff --git a/scripts/navka-core.sh b/scripts/navka-core.sh index 5fa6503..2c36535 100644 --- a/scripts/navka-core.sh +++ b/scripts/navka-core.sh @@ -34,8 +34,8 @@ echo 0x0200 >"$G/bcdUSB" mkdir -p "$G/strings/0x409" echo "$(cat /proc/sys/kernel/random/uuid)" >"$G/strings/0x409/serialnumber" -echo "Navka" >"$G/strings/0x409/manufacturer" -echo "Navka Composite" >"$G/strings/0x409/product" +echo "Lesavka" >"$G/strings/0x409/manufacturer" +echo "Lesavka Composite" >"$G/strings/0x409/product" # ----------------------- HID keyboard (usb0) ----------------------- mkdir -p "$G/functions/hid.usb0" diff --git a/server/Cargo.toml b/server/Cargo.toml index 41e434d..bfbe4d5 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -1,9 +1,9 @@ [[bin]] -name = "navka-server" +name = "lesavka-server" path = "src/main.rs" [package] -name = "navka_server" +name = "lesavka_server" version = "0.2.0" edition = "2024" @@ -12,7 +12,7 @@ tokio = { version = "1.45", features = ["full", "fs"] } tokio-stream = "0.1" tonic = { version = "0.13", features = ["transport"] } anyhow = "1.0" -navka_common = { path = "../common" } +lesavka_common = { path = "../common" } tracing = { version = "0.1", features = ["std"] } tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] } libc = "0.2" diff --git a/server/src/main.rs b/server/src/main.rs index 9b11bcb..ebc0f87 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -1,4 +1,4 @@ -//! navka-server — receive HidReport and write to /dev/hidg0 +//! lesavka-server — receive HidReport and write to /dev/hidg0 // sever/src/main.rs #![forbid(unsafe_code)] @@ -12,9 +12,9 @@ use tracing::{error, info, trace, warn}; use tracing_subscriber::{fmt, EnvFilter}; use udev::{Enumerator, MonitorBuilder}; -use navka_server::{video, usb_reset}; +use lesavka_server::{video, usb_reset}; -use navka_common::navka::{ +use lesavka_common::lesavka::{ relay_server::{Relay, RelayServer}, KeyboardReport, MouseReport, MonitorRequest, VideoPacket, @@ -149,7 +149,7 @@ async fn main() -> anyhow::Result<()> { /* logging */ fmt().with_env_filter( EnvFilter::try_from_default_env() - .unwrap_or_else(|_| EnvFilter::new("navka_server=info")), + .unwrap_or_else(|_| EnvFilter::new("lesavka_server=info")), ) .init(); @@ -172,7 +172,7 @@ async fn main() -> anyhow::Result<()> { ms: Arc::new(Mutex::new(ms)), }; - println!("🌐 navka-server listening on 0.0.0.0:50051"); + println!("🌐 lesavka-server listening on 0.0.0.0:50051"); Server::builder() .add_service(RelayServer::new(handler)) .serve(([0, 0, 0, 0], 50051).into()) diff --git a/server/src/video.rs b/server/src/video.rs index d690e1a..5dfbfa6 100644 --- a/server/src/video.rs +++ b/server/src/video.rs @@ -4,7 +4,7 @@ use anyhow::Context; use gstreamer as gst; use gstreamer_app as gst_app; use gst::prelude::*; -use navka_common::navka::VideoPacket; +use lesavka_common::lesavka::VideoPacket; use tokio_stream::wrappers::ReceiverStream; use tonic::Status; diff --git a/server/tests/hid.rs b/server/tests/hid.rs index a9361fe..3b2f1bd 100644 --- a/server/tests/hid.rs +++ b/server/tests/hid.rs @@ -1,7 +1,7 @@ #[tokio::test] async fn hid_roundtrip() { - use navka_common::navka::*; - use navka_server::RelaySvc; // export the struct in lib.rs + use lesavka_common::lesavka::*; + use lesavka_server::RelaySvc; // export the struct in lib.rs let svc = RelaySvc::default(); let (mut cli, srv) = tonic::transport::Channel::balance_channel(1); tokio::spawn(tonic::transport::server::Server::builder()