-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build(apple): Migrate Tun2Socks to xcframework #1271
Conversation
I found out more about the supported macOS version. From the Go release notes:
Looking at the App Store metrics, we don't have any numbers for 1.14 or below. So I'll upgrade our macOS minimum supported version to 10.14 and downgrade Go here to 1.17. |
This is now ready for review. /cc @daniellacosse @jyyi1 |
README.md
Outdated
- Android SDK 30 (with build-tools) via commandline `sdkmanager "platforms;android-30" "build-tools;30.0.3"` | ||
- Place it at `~/Android/Sdk/cmdline-tools/latest` | ||
- Android SDK 30 (with build-tools) via commandline `~/Android/Sdk/cmdline-tools/latest/bin/sdkmanager "platforms;android-30" "build-tools;30.0.3"` | ||
- Set up the environment: `export ANDROID_SDK_ROOT=~/Android/Sdk` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can't assume this is where they've installed their SDK - mine certainly isn't there
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not really assuming that. It's just a recommendation. We have no recommendation otherwise and it was a pain to get it set up.
It's aligned with the recommendation I added to outline-go-tun2socks: https://github.com/Jigsaw-Code/outline-go-tun2socks#set-up
@@ -757,7 +757,7 @@ | |||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, | |||
"\"$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include\"", | |||
); | |||
MACOSX_DEPLOYMENT_TARGET = 10.11; | |||
MACOSX_DEPLOYMENT_TARGET = 10.14; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
does this affect our supported ios version? safari tends to be updated in lockstep with the os version, and ios safari with desktop safari
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It only affects macOS. iOS is 9.0.
I don't see any data for macOS <10.14 on the app Store, and it's old.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, just want to keep an eye on things deprecated in mac 14 or that aren't supported in ios 9
// Objective-C API for talking to Go package. | ||
// gobind -lang=objc | ||
// | ||
// File is generated by gobind. Do not edit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What stops us from generating these on build and removing them from git?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to pull the outline-go-tun2socks code into this repository and make sure the developer has Go properly set up.
Also, we need an incremental build, because the gomobile bind takes a while.
Co-authored-by: Benjamin M. Schwartz <bemasc@google.com>
I was able to validate the networking on my phone. Merging |
This PR migrates Tun2Socks with xcframework to support the iOS simulator and Apple Sillicon. It removes the arm64 restriction.
Addresses #1252
Simulator: