9b30f681c6
- React+antd+zustand,注册表驱动路由/菜单/权限 - Tauri 桌面壳、后端托管 SPA、跨标签页消息队列
24 lines
1.2 KiB
Rust
24 lines
1.2 KiB
Rust
//! Environment the desktop shell hands to the Python backend sidecar.
|
|
//!
|
|
//! The backend is spawned by [`backend::command`], which owns the generic
|
|
//! launch: the executable, the working directory, `PATH`, the bundled runtimes.
|
|
//! Some desktop features also need the backend to know a value only the shell
|
|
//! has at runtime -- a loopback port, a one-shot token, a resource path. This
|
|
//! module is where those features contribute that, so the launch code stays
|
|
//! ignorant of any one feature.
|
|
//!
|
|
//! The dependency points one way: a feature module exposes a plain
|
|
//! `Vec<(String, String)>`, and [`collect`] gathers them. The launch path
|
|
//! depends on this aggregator, never on a feature module directly, so adding
|
|
//! the next contributor is a line here rather than an edit to `command.rs`.
|
|
|
|
/// Gather every feature's backend environment into one set of variables.
|
|
///
|
|
/// Ordering follows the extend calls; a later contributor that repeats a key
|
|
/// would win, so keep the keys disjoint (they are today).
|
|
pub(crate) fn collect(app: &tauri::AppHandle) -> Vec<(String, String)> {
|
|
let mut environment = Vec::new();
|
|
environment.extend(crate::computer_use_runtime::backend_environment(app));
|
|
environment
|
|
}
|