use log::debug;
use tokio::process::Command;
pub fn is_raw_mode() -> bool {
std::env::var("TAB_RAW_MODE")
.ok()
.map(|raw| raw.parse().unwrap_or(true))
.unwrap_or(true)
}
pub const FORWARD_ENV_VARS: &[&str] = &[
"TAB_RUNTIME_DIR", "TAB_RAW_MODE", "TAB_BIN", ];
pub fn forward_env(child: &mut Command) {
for var in crate::env::FORWARD_ENV_VARS.iter().copied() {
if let Ok(value) = std::env::var(var) {
debug!("forwarding env {} as {}", var, &value);
child.env(var, value);
}
}
}
pub fn forward_env_std(child: &mut std::process::Command) {
for var in crate::env::FORWARD_ENV_VARS.iter().copied() {
if let Ok(value) = std::env::var(var) {
debug!("forwarding env {} as {}", var, &value);
child.env(var, value);
}
}
}