mirror of
https://github.com/immich-app/immich
synced 2026-08-29 13:15:45 +00:00
chore(mobile): patch Flutter to allow building against iOS simulator (#30821)
* chore(mobile): patch Flutter to allow building against iOS simulator * Fixed mise script path
This commit is contained in:
parent
f9f7311418
commit
f88fb628ff
2 changed files with 28 additions and 1 deletions
24
mobile/ios/scripts/xcode_flutter_patch.sh
Executable file
24
mobile/ios/scripts/xcode_flutter_patch.sh
Executable file
|
|
@ -0,0 +1,24 @@
|
|||
#!/usr/bin/env bash
|
||||
# Makes Flutter not incorrectly append `-sdk` arguments to simulator builds
|
||||
# This breaks macros that must build for the host's platform
|
||||
#
|
||||
# Flutter was informed of this (https://github.com/flutter/flutter/issues/146122) but has not fixed it in 2 years
|
||||
|
||||
set -eu
|
||||
sdk="${MISE_TOOL_INSTALL_PATH:-$(mise where aqua:flutter/flutter)}/flutter"
|
||||
mac_dart="$sdk/packages/flutter_tools/lib/src/ios/mac.dart"
|
||||
|
||||
pattern="buildCommands.addAll(<String>['-sdk', XcodeSdk.IPhoneSimulator.platformName]);"
|
||||
|
||||
# Filter out the sdk arg pattern
|
||||
if awk -v pat="$pattern" 'index($0, pat) { found=1; next } { print } END { exit !found }' "$mac_dart" > "$mac_dart.tmp"; then
|
||||
# If it was filtered out, apply it
|
||||
mv "$mac_dart.tmp" "$mac_dart"
|
||||
|
||||
# Force flutter itself to rebuild
|
||||
rm -f "$sdk/bin/cache/flutter_tools.snapshot" "$sdk/bin/cache/flutter_tools.stamp"
|
||||
|
||||
echo "flutter postinstall: removed simulator -sdk flag from xcodebuild invocation"
|
||||
else
|
||||
rm -f "$mac_dart.tmp"
|
||||
fi
|
||||
|
|
@ -1,7 +1,10 @@
|
|||
[tools]
|
||||
"aqua:flutter/flutter" = "3.44.9"
|
||||
java = "21.0.2"
|
||||
|
||||
[tools."aqua:flutter/flutter"]
|
||||
version = "3.44.9"
|
||||
postinstall = "bash {{config_root}}/ios/scripts/xcode_flutter_patch.sh"
|
||||
|
||||
[tools."github:CQLabs/homebrew-dcm"]
|
||||
version = "1.37.0"
|
||||
bin = "dcm"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue