Add tags for persistent settings variants

This commit is contained in:
NGnius (Graham) 2024-03-30 21:29:57 -04:00
parent 0373e8d47a
commit ccf0c04020
8 changed files with 16 additions and 4 deletions

2
backend/Cargo.lock generated
View file

@ -1170,7 +1170,7 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
[[package]] [[package]]
name = "powertools" name = "powertools"
version = "2.0.0-beta1" version = "2.0.0-beta2"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"chrono", "chrono",

View file

@ -1,6 +1,6 @@
[package] [package]
name = "powertools" name = "powertools"
version = "2.0.0-beta1" version = "2.0.0-beta2"
edition = "2021" edition = "2021"
authors = ["NGnius (Graham) <ngniusness@gmail.com>"] authors = ["NGnius (Graham) <ngniusness@gmail.com>"]
description = "Backend (superuser) functionality for PowerTools" description = "Backend (superuser) functionality for PowerTools"

View file

@ -265,6 +265,7 @@ fn web_config_to_settings_json(
root: None, root: None,
}, },
provider: Some(crate::persist::DriverJson::AutoDetect), provider: Some(crate::persist::DriverJson::AutoDetect),
tags: meta.tags,
} }
} }
@ -328,7 +329,7 @@ fn settings_to_web_config(
steam_app_id: app_id, steam_app_id: app_id,
steam_user_id: user_id, steam_user_id: user_id,
steam_username: username, steam_username: username,
tags: vec!["wip".to_owned()], tags: settings.tags,
id: "".to_owned(), id: "".to_owned(),
config: community_settings_core::v1::Config { config: community_settings_core::v1::Config {
cpus: settings cpus: settings

View file

@ -14,6 +14,7 @@ pub struct SettingsJson {
pub gpu: GpuJson, pub gpu: GpuJson,
pub battery: BatteryJson, pub battery: BatteryJson,
pub provider: Option<DriverJson>, pub provider: Option<DriverJson>,
pub tags: Vec<String>,
} }
impl Default for SettingsJson { impl Default for SettingsJson {
@ -27,6 +28,7 @@ impl Default for SettingsJson {
gpu: GpuJson::default(), gpu: GpuJson::default(),
battery: BatteryJson::default(), battery: BatteryJson::default(),
provider: None, provider: None,
tags: Vec::new(),
} }
} }
} }

View file

@ -69,6 +69,7 @@ pub fn auto_detect0(
variant_id, variant_id,
variant_name, variant_name,
driver: DriverJson::AutoDetect, driver: DriverJson::AutoDetect,
tags: settings_opt.map(|s| s.tags.clone()).unwrap_or_else(|| Vec::new()),
}); });
let cpu_info: String = usdpl_back::api::files::read_single("/proc/cpuinfo").unwrap_or_default(); let cpu_info: String = usdpl_back::api::files::read_single("/proc/cpuinfo").unwrap_or_default();

View file

@ -37,6 +37,7 @@ pub struct General {
pub variant_id: u64, pub variant_id: u64,
pub variant_name: String, pub variant_name: String,
pub driver: crate::persist::DriverJson, pub driver: crate::persist::DriverJson,
pub tags: Vec<String>,
} }
impl OnSet for General { impl OnSet for General {
@ -175,6 +176,10 @@ impl TGeneral for General {
fn provider(&self) -> crate::persist::DriverJson { fn provider(&self) -> crate::persist::DriverJson {
self.driver.clone() self.driver.clone()
} }
fn tags(&self) -> &[String] {
&self.tags
}
} }
#[derive(Debug)] #[derive(Debug)]
@ -439,6 +444,7 @@ impl Settings {
gpu: self.gpu.json(), gpu: self.gpu.json(),
battery: self.battery.json(), battery: self.battery.json(),
provider: Some(self.general.provider()), provider: Some(self.general.provider()),
tags: self.general.tags().to_owned(),
} }
} }
} }

View file

@ -139,6 +139,8 @@ pub trait TGeneral: OnSet + OnResume + OnPowerEvent + OnLoad + OnUnload + Debug
) -> Result<Vec<crate::api::VariantInfo>, SettingError>; ) -> Result<Vec<crate::api::VariantInfo>, SettingError>;
fn provider(&self) -> crate::persist::DriverJson; fn provider(&self) -> crate::persist::DriverJson;
fn tags(&self) -> &'_ [String];
} }
pub trait TBattery: OnSet + OnResume + OnPowerEvent + OnLoad + OnUnload + Debug + Send { pub trait TBattery: OnSet + OnResume + OnPowerEvent + OnLoad + OnUnload + Debug + Send {

View file

@ -1,6 +1,6 @@
{ {
"name": "PowerTools", "name": "PowerTools",
"version": "2.0.0-beta1", "version": "2.0.0-beta2",
"description": "Power tweaks for power users", "description": "Power tweaks for power users",
"scripts": { "scripts": {
"build": "shx rm -rf dist && rollup -c", "build": "shx rm -rf dist && rollup -c",