2025-10-19 11:08:35 -03:00
|
|
|
use std::collections::HashMap;
|
|
|
|
|
|
|
|
|
|
#[derive(Debug, Clone)]
|
|
|
|
|
pub struct ComponentConfig {
|
|
|
|
|
pub name: String,
|
|
|
|
|
pub required: bool,
|
|
|
|
|
pub ports: Vec<u16>,
|
|
|
|
|
pub dependencies: Vec<String>,
|
|
|
|
|
pub linux_packages: Vec<String>,
|
|
|
|
|
pub macos_packages: Vec<String>,
|
|
|
|
|
pub windows_packages: Vec<String>,
|
|
|
|
|
pub download_url: Option<String>,
|
|
|
|
|
pub binary_name: Option<String>,
|
|
|
|
|
pub pre_install_cmds_linux: Vec<String>,
|
|
|
|
|
pub post_install_cmds_linux: Vec<String>,
|
|
|
|
|
pub pre_install_cmds_macos: Vec<String>,
|
|
|
|
|
pub post_install_cmds_macos: Vec<String>,
|
|
|
|
|
pub pre_install_cmds_windows: Vec<String>,
|
|
|
|
|
pub post_install_cmds_windows: Vec<String>,
|
|
|
|
|
pub env_vars: HashMap<String, String>,
|
2025-10-26 18:26:19 -03:00
|
|
|
pub data_download_list: Vec<String>,
|
2025-10-19 11:08:35 -03:00
|
|
|
pub exec_cmd: String,
|
|
|
|
|
}
|