diff --git a/Cargo.lock b/Cargo.lock index fc3082b..53dd676 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -564,6 +564,18 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" +[[package]] +name = "lact-client" +version = "0.1.0" +dependencies = [ + "anyhow", + "lact-schema", + "nix", + "serde", + "serde_json", + "tracing", +] + [[package]] name = "lact-daemon" version = "0.2.0" @@ -589,7 +601,7 @@ version = "0.2.0" dependencies = [ "anyhow", "gtk", - "lact-schema", + "lact-client", "nix", "serde", "serde_json", diff --git a/Cargo.toml b/Cargo.toml index 960cc6b..3cf776e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,3 +1,3 @@ [workspace] resolver = "2" -members = ["lact-daemon", "lact-schema", "lact-gui"] +members = ["lact-*"] diff --git a/lact-client/Cargo.toml b/lact-client/Cargo.toml new file mode 100644 index 0000000..7108e3a --- /dev/null +++ b/lact-client/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "lact-client" +version = "0.1.0" +edition = "2021" + +[dependencies] +lact-schema = { path = "../lact-schema" } +anyhow = "1.0.68" +nix = { version = "0.26.1", default-features = false } +serde = "1.0.152" +tracing = "0.1.37" +serde_json = "1.0.91" diff --git a/lact-gui/src/client.rs b/lact-client/src/lib.rs similarity index 96% rename from lact-gui/src/client.rs rename to lact-client/src/lib.rs index 13e8f86..16cf72e 100644 --- a/lact-gui/src/client.rs +++ b/lact-client/src/lib.rs @@ -1,6 +1,8 @@ +pub use lact_schema as schema; + use anyhow::{anyhow, Context}; -use lact_schema::{DeviceInfo, DeviceListEntry, DeviceStats, FanCurveMap, Request, Response}; use nix::unistd::getuid; +use schema::{DeviceInfo, DeviceListEntry, DeviceStats, FanCurveMap, Request, Response}; use serde::Deserialize; use std::{ io::{BufRead, BufReader, Write}, diff --git a/lact-gui/Cargo.toml b/lact-gui/Cargo.toml index 59e2441..f65c971 100644 --- a/lact-gui/Cargo.toml +++ b/lact-gui/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Ilya Zlobintsev "] edition = "2021" [dependencies] -lact-schema = { path = "../lact-schema" } +lact-client = { path = "../lact-client" } gtk = "0.16" # pango = "0.16" tracing = "0.1" diff --git a/lact-gui/src/app/header.rs b/lact-gui/src/app/header.rs index 2b89005..c560c6f 100644 --- a/lact-gui/src/app/header.rs +++ b/lact-gui/src/app/header.rs @@ -1,6 +1,6 @@ use gtk::prelude::*; use gtk::*; -use lact_schema::DeviceListEntry; +use lact_client::schema::DeviceListEntry; use pango::EllipsizeMode; #[derive(Clone)] diff --git a/lact-gui/src/app/mod.rs b/lact-gui/src/app/mod.rs index 966374f..9bec8ca 100644 --- a/lact-gui/src/app/mod.rs +++ b/lact-gui/src/app/mod.rs @@ -7,14 +7,14 @@ use std::sync::{Arc, RwLock}; use std::thread; use std::time::Duration; -use crate::client::DaemonClient; use anyhow::Context; use apply_revealer::ApplyRevealer; use glib::clone; use gtk::prelude::*; use gtk::*; use header::Header; -use lact_schema::DeviceStats; +use lact_client::schema::DeviceStats; +use lact_client::DaemonClient; use root_stack::RootStack; use tracing::{debug, error, info, trace}; diff --git a/lact-gui/src/app/root_stack/info_page/mod.rs b/lact-gui/src/app/root_stack/info_page/mod.rs index 94da7ea..f078dda 100644 --- a/lact-gui/src/app/root_stack/info_page/mod.rs +++ b/lact-gui/src/app/root_stack/info_page/mod.rs @@ -2,7 +2,7 @@ mod vulkan_info; use gtk::prelude::*; use gtk::*; -use lact_schema::{DeviceInfo, DeviceStats}; +use lact_client::schema::{DeviceInfo, DeviceStats}; use vulkan_info::VulkanInfoFrame; #[derive(Clone)] diff --git a/lact-gui/src/app/root_stack/info_page/vulkan_info.rs b/lact-gui/src/app/root_stack/info_page/vulkan_info.rs index 063c858..c1388c3 100644 --- a/lact-gui/src/app/root_stack/info_page/vulkan_info.rs +++ b/lact-gui/src/app/root_stack/info_page/vulkan_info.rs @@ -1,7 +1,7 @@ use glib::clone; use gtk::prelude::*; use gtk::*; -use lact_schema::VulkanInfo; +use lact_client::schema::VulkanInfo; use tracing::trace; #[derive(Clone)] diff --git a/lact-gui/src/app/root_stack/oc_page/mod.rs b/lact-gui/src/app/root_stack/oc_page/mod.rs index 95e590c..8a85f7e 100644 --- a/lact-gui/src/app/root_stack/oc_page/mod.rs +++ b/lact-gui/src/app/root_stack/oc_page/mod.rs @@ -7,7 +7,7 @@ mod warning_frame; use glib::clone; use gtk::prelude::*; use gtk::*; -use lact_schema::{DeviceInfo, DeviceStats, PerformanceLevel, PowerStats}; +use lact_client::schema::{DeviceInfo, DeviceStats, PerformanceLevel, PowerStats}; use performance_level_frame::PowerProfileFrame; use power_cap_frame::PowerCapFrame; use stats_grid::StatsGrid; diff --git a/lact-gui/src/app/root_stack/oc_page/performance_level_frame.rs b/lact-gui/src/app/root_stack/oc_page/performance_level_frame.rs index 9d0eb64..0a6cc0a 100644 --- a/lact-gui/src/app/root_stack/oc_page/performance_level_frame.rs +++ b/lact-gui/src/app/root_stack/oc_page/performance_level_frame.rs @@ -1,6 +1,6 @@ use gtk::prelude::*; use gtk::*; -use lact_schema::PerformanceLevel; +use lact_client::schema::PerformanceLevel; #[derive(Clone)] pub struct PowerProfileFrame { diff --git a/lact-gui/src/app/root_stack/oc_page/stats_grid.rs b/lact-gui/src/app/root_stack/oc_page/stats_grid.rs index 9e25b7b..59145da 100644 --- a/lact-gui/src/app/root_stack/oc_page/stats_grid.rs +++ b/lact-gui/src/app/root_stack/oc_page/stats_grid.rs @@ -1,6 +1,6 @@ use gtk::prelude::*; use gtk::*; -use lact_schema::{ClockspeedStats, DeviceStats, PowerStats, VoltageStats, VramStats}; +use lact_client::schema::{ClockspeedStats, DeviceStats, PowerStats, VoltageStats, VramStats}; #[derive(Clone)] pub struct StatsGrid { diff --git a/lact-gui/src/app/root_stack/thermals_page/fan_curve_frame.rs b/lact-gui/src/app/root_stack/thermals_page/fan_curve_frame.rs index 12ddc80..d986add 100644 --- a/lact-gui/src/app/root_stack/thermals_page/fan_curve_frame.rs +++ b/lact-gui/src/app/root_stack/thermals_page/fan_curve_frame.rs @@ -1,6 +1,6 @@ use gtk::prelude::*; use gtk::*; -use lact_schema::FanCurveMap; +use lact_client::schema::FanCurveMap; use std::collections::BTreeMap; use tracing::debug; diff --git a/lact-gui/src/app/root_stack/thermals_page/mod.rs b/lact-gui/src/app/root_stack/thermals_page/mod.rs index 29024e7..cb854cb 100644 --- a/lact-gui/src/app/root_stack/thermals_page/mod.rs +++ b/lact-gui/src/app/root_stack/thermals_page/mod.rs @@ -3,7 +3,7 @@ use glib::clone; use gtk::prelude::*; use gtk::*; -use lact_schema::DeviceStats; +use lact_client::schema::DeviceStats; use std::collections::BTreeMap; use tracing::trace; diff --git a/lact-gui/src/main.rs b/lact-gui/src/main.rs index 37a77bf..de86a58 100644 --- a/lact-gui/src/main.rs +++ b/lact-gui/src/main.rs @@ -1,9 +1,8 @@ mod app; -mod client; use anyhow::{anyhow, Context}; use app::App; -use client::DaemonClient; +use lact_client::DaemonClient; use tracing::metadata::LevelFilter; use tracing_subscriber::EnvFilter;