diff --git a/Makefile b/Makefile index 62c34a998..da43f4960 100644 --- a/Makefile +++ b/Makefile @@ -50,6 +50,14 @@ install-android-rust-targets: @rustup target list --installed | grep -q "x86_64-linux-android" || rustup target add x86_64-linux-android @echo "Android Rust targets ready!" +# Install required Rust targets for iOS builds +install-ios-rust-targets: + @echo "Checking and installing iOS Rust targets..." + @rustup target list --installed | grep -q "aarch64-apple-ios" || rustup target add aarch64-apple-ios + @rustup target list --installed | grep -q "aarch64-apple-ios-sim" || rustup target add aarch64-apple-ios-sim + @rustup target list --installed | grep -q "x86_64-apple-ios" || rustup target add x86_64-apple-ios + @echo "iOS Rust targets ready!" + dev: install-and-build yarn download:bin yarn download:lib @@ -85,6 +93,23 @@ dev-android: install-and-build install-android-rust-targets @echo "Starting Android development server..." yarn dev:android +dev-ios: install-and-build install-ios-rust-targets + @echo "Setting up iOS development environment..." +ifeq ($(shell uname -s),Darwin) + @if [ ! -d "src-tauri/gen/ios" ]; then \ + echo "iOS app not initialized. Initializing..."; \ + yarn tauri ios init; \ + fi + @echo "Checking iOS development requirements..." + @xcrun --version > /dev/null 2>&1 || (echo "❌ Xcode command line tools not found. Install with: xcode-select --install" && exit 1) + @xcrun simctl list devices available | grep -q "iPhone\|iPad" || (echo "❌ No iOS simulators found. Install simulators through Xcode." && exit 1) + @echo "Starting iOS development server..." + yarn dev:ios +else + @echo "❌ iOS development is only supported on macOS" + @exit 1 +endif + # Linting lint: install-and-build yarn lint diff --git a/src-tauri/tauri.ios.conf.json b/src-tauri/tauri.ios.conf.json index 608514ac9..546cb4950 100644 --- a/src-tauri/tauri.ios.conf.json +++ b/src-tauri/tauri.ios.conf.json @@ -3,7 +3,7 @@ "devUrl": null, "frontendDist": "../web-app/dist" }, - "identifier": "jan.ai.app.ios", + "identifier": "jan.ai.app", "app": { "security": { "capabilities": ["mobile"]