diff --git a/src/run/corepack.rs b/src/run/corepack.rs index c9878f4..a3c8d8c 100644 --- a/src/run/corepack.rs +++ b/src/run/corepack.rs @@ -61,7 +61,7 @@ fn corepack_enable(args: &[OsString]) { .map(|name| String::from(name.to_str().unwrap())) .collect::>(); - if packages.is_empty() { + if packages.is_empty() && !args.contains(&OsString::from("npm")) { packages.push(String::from("yarn")); packages.push(String::from("pnpm")); } @@ -84,7 +84,7 @@ fn corepack_disable(args: &[OsString]) { .map(|name| String::from(name.to_str().unwrap())) .collect::>(); - if packages.is_empty() { + if packages.is_empty() && !args.contains(&OsString::from("npm")) { packages.push(String::from("yarn")); packages.push(String::from("pnpm")); } diff --git a/src/run/npm.rs b/src/run/npm.rs index 8d4cf0e..301a028 100644 --- a/src/run/npm.rs +++ b/src/run/npm.rs @@ -12,7 +12,7 @@ use std::{ use super::{ExitStatus, OsStr, OsString}; use crate::{ command as CommandTool, - common::{link_package, unlink_package, ENV_PATH, NVMD_PATH, VERSION}, + common::{link_package, unlink_package, ENV_PATH, INSTALLTION_PATH, NVMD_PATH, VERSION}, }; lazy_static! { @@ -32,6 +32,18 @@ pub(super) fn command(exe: &OsStr, args: &[OsString]) -> Result