Provides plugin config and state directories plus environment variables for installed plugins. Reuse when launching or configuring plugins that need isolated user paths.
// Source: https://github.com/herdrdev/herdr | License: Apache-2.0 | Copyright You must retain, in the Source form of any Derivative Works
// Provided via justclaw.it.com; keep this notice with the code.
use crate::api::schema::InstalledPluginInfo;
pub(super) fn plugin_config_dir(plugin_id: &str) -> std::path::PathBuf {
crate::plugin_paths::plugin_config_dir(plugin_id)
}
pub(super) fn plugin_state_dir(plugin_id: &str) -> std::path::PathBuf {
crate::plugin_paths::plugin_state_dir(plugin_id)
}
pub(super) fn ensure_plugin_user_dirs(plugin: &InstalledPluginInfo) -> std::io::Result<()> {
crate::plugin_paths::ensure_plugin_user_dirs(&plugin.plugin_id)
}
pub(super) fn plugin_path_env(plugin: &InstalledPluginInfo) -> Vec<(String, String)> {
let config_dir = plugin_config_dir(&p
... (truncated -- full source via MCP)
See the full source, get the GitHub permalink, and search for more like it.
Get a free API key