From 712f1049fae74bfda5f360adcee7210cea92fe63 Mon Sep 17 00:00:00 2001 From: Lucas Fernandes Nogueira Date: Tue, 13 Aug 2024 09:00:41 -0300 Subject: [PATCH] fix(cli): `ios dev` and `ios build` support for `bun` (#10569) --- .changes/fix-ios-bun-support.md | 6 ++++++ tooling/cli/src/mobile/ios/xcode_script.rs | 7 +++++-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 .changes/fix-ios-bun-support.md diff --git a/.changes/fix-ios-bun-support.md b/.changes/fix-ios-bun-support.md new file mode 100644 index 000000000..811c98bf9 --- /dev/null +++ b/.changes/fix-ios-bun-support.md @@ -0,0 +1,6 @@ +--- +"tauri-cli": patch:bug +"@tauri-apps/cli": patch:bug +--- + +Fixes running `ios dev` and `ios build` using `bun`. diff --git a/tooling/cli/src/mobile/ios/xcode_script.rs b/tooling/cli/src/mobile/ios/xcode_script.rs index 6e1028c28..f342cd052 100644 --- a/tooling/cli/src/mobile/ios/xcode_script.rs +++ b/tooling/cli/src/mobile/ios/xcode_script.rs @@ -14,7 +14,7 @@ use clap::Parser; use std::{ collections::HashMap, - env::{current_dir, set_current_dir, var_os}, + env::{current_dir, set_current_dir, var, var_os}, ffi::OsStr, path::{Path, PathBuf}, process::Command, @@ -62,7 +62,10 @@ pub fn command(options: Options) -> Result<()> { } // `xcode-script` is ran from the `gen/apple` folder when not using NPM. - if var_os("npm_lifecycle_event").is_none() && var_os("PNPM_PACKAGE_NAME").is_none() { + // so we must change working directory to the src-tauri folder to resolve the tauri dir + if (var_os("npm_lifecycle_event").is_none() && var_os("PNPM_PACKAGE_NAME").is_none()) + || var("npm_config_user_agent").map_or(false, |agent| agent.starts_with("bun")) + { set_current_dir(current_dir()?.parent().unwrap().parent().unwrap()).unwrap(); }