diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 448a1aa..f2ad46a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -42,6 +42,23 @@ jobs: with: name: Jitterbug path: Jitterbug.xcarchive.tgz + build-ios-lite: + name: Jitterbug Lite + runs-on: macos-10.15 + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: recursive + - name: Build + run: xcodebuild archive -archivePath JitterbugLite -scheme JitterbugLite -configuration Release CODE_SIGNING_ALLOWED=NO + - name: Compress + run: tar cf JitterbugLite.xcarchive.tgz JitterbugLite.xcarchive + - name: Upload + uses: actions/upload-artifact@v2 + with: + name: JitterbugLite + path: JitterbugLite.xcarchive.tgz build-macos-ui: name: Jitterbug (macOS) runs-on: macos-10.15 @@ -153,6 +170,39 @@ jobs: token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} repository: ${{ secrets.DISPATCH_ALTSTORE_REPO_NAME }} event-type: new-release + package-ipa-lite: + name: Package IPA Lite + runs-on: ubuntu-20.04 + needs: build-ios-lite + if: github.event_name == 'release' || github.event.inputs.test_release == 'true' + steps: + - name: Download Artifact + uses: actions/download-artifact@v2 + with: + name: JitterbugLite + - name: Package IPA + run: | + tar xf JitterbugLite.xcarchive.tgz + mv JitterbugLite.xcarchive/Products/Applications Payload + zip -r JitterbugLite.ipa Payload -x "._*" -x ".DS_Store" -x "__MACOSX" + - name: Upload Release Asset + if: github.event_name == 'release' + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: JitterbugLite.ipa + asset_name: JitterbugLite.ipa + asset_content_type: application/octet-stream + - name: Send Dispatch Event + if: github.event_name == 'release' + continue-on-error: true + uses: peter-evans/repository-dispatch@v1 + with: + token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} + repository: ${{ secrets.DISPATCH_ALTSTORE_REPO_NAME }} + event-type: new-release package-dmg: name: Package DMG runs-on: macos-10.15 diff --git a/Jitterbug.xcodeproj/project.pbxproj b/Jitterbug.xcodeproj/project.pbxproj index ea796b0..77e0572 100644 --- a/Jitterbug.xcodeproj/project.pbxproj +++ b/Jitterbug.xcodeproj/project.pbxproj @@ -204,6 +204,86 @@ CEA02A3F26686B6000CF57E1 /* AppItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEA02A3E26686B6000CF57E1 /* AppItemView.swift */; }; CEA02A4026686B6000CF57E1 /* AppItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEA02A3E26686B6000CF57E1 /* AppItemView.swift */; }; CEA02A4126686F7300CF57E1 /* JitterbugMacApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEA029DB2668592800CF57E1 /* JitterbugMacApp.swift */; }; + CEA65E7426C5E2CB00020562 /* JBHostDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B47A265D5C4F007728F4 /* JBHostDevice.swift */; }; + CEA65E7526C5E2CB00020562 /* afc.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985819265C6E1700F9AAD4 /* afc.c */; }; + CEA65E7626C5E2CB00020562 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE98574C265C635000F9AAD4 /* ContentView.swift */; }; + CEA65E7726C5E2CB00020562 /* ptrarray.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985787265C655900F9AAD4 /* ptrarray.c */; }; + CEA65E7826C5E2CB00020562 /* sbservices.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985830265C6E1700F9AAD4 /* sbservices.c */; }; + CEA65E7926C5E2CB00020562 /* PairingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B499265D7B6F007728F4 /* PairingsView.swift */; }; + CEA65E7A26C5E2CB00020562 /* notification_proxy.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98582A265C6E1700F9AAD4 /* notification_proxy.c */; }; + CEA65E7B26C5E2CB00020562 /* mobilebackup.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98583A265C6E1700F9AAD4 /* mobilebackup.c */; }; + CEA65E7C26C5E2CB00020562 /* ManualAddHostView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE93EC22266ABAA8002BB16C /* ManualAddHostView.swift */; }; + CEA65E7D26C5E2CB00020562 /* file_relay.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985841265C6E1800F9AAD4 /* file_relay.c */; }; + CEA65E7E26C5E2CB00020562 /* AddressUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = CE4DEC2B2671732F003BDC3F /* AddressUtils.m */; }; + CEA65E7F26C5E2CB00020562 /* collection.c in Sources */ = {isa = PBXBuildFile; fileRef = CE9857D2265C69D600F9AAD4 /* collection.c */; }; + CEA65E8026C5E2CB00020562 /* service.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98581A265C6E1700F9AAD4 /* service.c */; }; + CEA65E8126C5E2CB00020562 /* HostFinder.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4B7265DC014007728F4 /* HostFinder.swift */; }; + CEA65E8226C5E2CB00020562 /* Dictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985782265C655900F9AAD4 /* Dictionary.cpp */; }; + CEA65E8326C5E2CB00020562 /* Date.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985790265C655A00F9AAD4 /* Date.cpp */; }; + CEA65E8426C5E2CB00020562 /* BusyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4A9265D8870007728F4 /* BusyView.swift */; }; + CEA65E8526C5E2CB00020562 /* plist.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985772265C655900F9AAD4 /* plist.c */; }; + CEA65E8626C5E2CB00020562 /* installation_proxy.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98582D265C6E1700F9AAD4 /* installation_proxy.c */; }; + CEA65E8726C5E2CB00020562 /* DeviceDetailsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4C7265DDDB3007728F4 /* DeviceDetailsView.swift */; }; + CEA65E8826C5E2CB00020562 /* mobileactivation.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985820265C6E1700F9AAD4 /* mobileactivation.c */; }; + CEA65E8926C5E2CB00020562 /* SupportFilesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B49F265D7BCA007728F4 /* SupportFilesView.swift */; }; + CEA65E8A26C5E2CB00020562 /* node.c in Sources */ = {isa = PBXBuildFile; fileRef = CE9857B9265C671B00F9AAD4 /* node.c */; }; + CEA65E8B26C5E2CB00020562 /* property_list_service.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985835265C6E1700F9AAD4 /* property_list_service.c */; }; + CEA65E8C26C5E2CB00020562 /* syslog_relay.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985829265C6E1700F9AAD4 /* syslog_relay.c */; }; + CEA65E8D26C5E2CB00020562 /* thread.c in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B458265CBF49007728F4 /* thread.c */; }; + CEA65E8E26C5E2CB00020562 /* libusbmuxd-stub.c in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B460265CBFC2007728F4 /* libusbmuxd-stub.c */; }; + CEA65E8F26C5E2CB00020562 /* mobilebackup2.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98582F265C6E1700F9AAD4 /* mobilebackup2.c */; }; + CEA65E9026C5E2CB00020562 /* debugserver.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985813265C6E1700F9AAD4 /* debugserver.c */; }; + CEA65E9126C5E2CB00020562 /* HostFinderDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4BD265DC843007728F4 /* HostFinderDelegate.swift */; }; + CEA65E9226C5E2CB00020562 /* AppItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEA02A3E26686B6000CF57E1 /* AppItemView.swift */; }; + CEA65E9326C5E2CB00020562 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = CE9857EB265C6DF300F9AAD4 /* debug.c */; }; + CEA65E9426C5E2CB00020562 /* JBHostDevice.m in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B474265D59C0007728F4 /* JBHostDevice.m */; }; + CEA65E9526C5E2CB00020562 /* JitterbugApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE98574A265C635000F9AAD4 /* JitterbugApp.swift */; }; + CEA65E9626C5E2CB00020562 /* userpref.c in Sources */ = {isa = PBXBuildFile; fileRef = CE9857EA265C6DF300F9AAD4 /* userpref.c */; }; + CEA65E9726C5E2CB00020562 /* preboard.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98582E265C6E1700F9AAD4 /* preboard.c */; }; + CEA65E9826C5E2CB00020562 /* restore.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98583E265C6E1700F9AAD4 /* restore.c */; }; + CEA65E9926C5E2CB00020562 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4B1265D954F007728F4 /* Extensions.swift */; }; + CEA65E9A26C5E2CB00020562 /* JBApp.m in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B483265D6A51007728F4 /* JBApp.m */; }; + CEA65E9B26C5E2CB00020562 /* device_link_service.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985833265C6E1700F9AAD4 /* device_link_service.c */; }; + CEA65E9C26C5E2CB00020562 /* Uid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985771265C655900F9AAD4 /* Uid.cpp */; }; + CEA65E9D26C5E2CB00020562 /* bytearray.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985784265C655900F9AAD4 /* bytearray.c */; }; + CEA65E9E26C5E2CB00020562 /* utils.c in Sources */ = {isa = PBXBuildFile; fileRef = CE9857E9265C6DF300F9AAD4 /* utils.c */; }; + CEA65E9F26C5E2CB00020562 /* Boolean.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985780265C655900F9AAD4 /* Boolean.cpp */; }; + CEA65EA026C5E2CB00020562 /* heartbeat.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985832265C6E1700F9AAD4 /* heartbeat.c */; }; + CEA65EA126C5E2CB00020562 /* mobile_image_mounter.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98580F265C6E1700F9AAD4 /* mobile_image_mounter.c */; }; + CEA65EA226C5E2CB00020562 /* screenshotr.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985810265C6E1700F9AAD4 /* screenshotr.c */; }; + CEA65EA326C5E2CB00020562 /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98577A265C655900F9AAD4 /* base64.c */; }; + CEA65EA426C5E2CB00020562 /* webinspector.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98582C265C6E1700F9AAD4 /* webinspector.c */; }; + CEA65EA526C5E2CB00020562 /* Data.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE98578F265C655A00F9AAD4 /* Data.cpp */; }; + CEA65EA626C5E2CB00020562 /* Main.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4A5265D7DF3007728F4 /* Main.swift */; }; + CEA65EA726C5E2CB00020562 /* mobilesync.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985837265C6E1700F9AAD4 /* mobilesync.c */; }; + CEA65EA826C5E2CB00020562 /* bplist.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985781265C655900F9AAD4 /* bplist.c */; }; + CEA65EA926C5E2CB00020562 /* time64.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985775265C655900F9AAD4 /* time64.c */; }; + CEA65EAA26C5E2CB00020562 /* Integer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985785265C655900F9AAD4 /* Integer.cpp */; }; + CEA65EAB26C5E2CB00020562 /* DeviceListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B48B265D797E007728F4 /* DeviceListView.swift */; }; + CEA65EAC26C5E2CB00020562 /* misagent.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985821265C6E1700F9AAD4 /* misagent.c */; }; + CEA65EAD26C5E2CB00020562 /* Structure.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE98577F265C655900F9AAD4 /* Structure.cpp */; }; + CEA65EAE26C5E2CB00020562 /* lockdown.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985822265C6E1700F9AAD4 /* lockdown.c */; }; + CEA65EAF26C5E2CB00020562 /* CacheStorage.c in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B467265CC57D007728F4 /* CacheStorage.c */; }; + CEA65EB026C5E2CB00020562 /* socket.c in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B456265CBF49007728F4 /* socket.c */; }; + CEA65EB126C5E2CB00020562 /* companion_proxy.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985825265C6E1700F9AAD4 /* companion_proxy.c */; }; + CEA65EB226C5E2CB00020562 /* FileSelectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B4CF265DEAAF007728F4 /* FileSelectionView.swift */; }; + CEA65EB326C5E2CB00020562 /* house_arrest.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985836265C6E1700F9AAD4 /* house_arrest.c */; }; + CEA65EB426C5E2CB00020562 /* hashtable.c in Sources */ = {isa = PBXBuildFile; fileRef = CE98578C265C655A00F9AAD4 /* hashtable.c */; }; + CEA65EB526C5E2CB00020562 /* LauncherView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B493265D7AE2007728F4 /* LauncherView.swift */; }; + CEA65EB626C5E2CB00020562 /* node_list.c in Sources */ = {isa = PBXBuildFile; fileRef = CE9857BA265C671B00F9AAD4 /* node_list.c */; }; + CEA65EB726C5E2CB00020562 /* Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE98576F265C655900F9AAD4 /* Array.cpp */; }; + CEA65EB826C5E2CB00020562 /* Node.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985779265C655900F9AAD4 /* Node.cpp */; }; + CEA65EB926C5E2CB00020562 /* Key.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE98578E265C655A00F9AAD4 /* Key.cpp */; }; + CEA65EBA26C5E2CB00020562 /* String.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE985789265C655A00F9AAD4 /* String.cpp */; }; + CEA65EBB26C5E2CB00020562 /* xplist.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985791265C655A00F9AAD4 /* xplist.c */; }; + CEA65EBC26C5E2CB00020562 /* Real.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE98577B265C655900F9AAD4 /* Real.cpp */; }; + CEA65EBD26C5E2CB00020562 /* diagnostics_relay.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985816265C6E1700F9AAD4 /* diagnostics_relay.c */; }; + CEA65EBE26C5E2CB00020562 /* idevice.c in Sources */ = {isa = PBXBuildFile; fileRef = CE985811265C6E1700F9AAD4 /* idevice.c */; }; + CEA65EC026C5E2CB00020562 /* OpenSSL in Frameworks */ = {isa = PBXBuildFile; productRef = CEA65E7126C5E2CB00020562 /* OpenSSL */; }; + CEA65EC326C5E2CB00020562 /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = CE4DEC302671E5BF003BDC3F /* Settings.bundle */; }; + CEA65EC426C5E2CB00020562 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4B811C352688D54100046341 /* Localizable.strings */; }; + CEA65EC526C5E2CB00020562 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4B811C322688D54100046341 /* InfoPlist.strings */; }; + CEA65EC626C5E2CB00020562 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CE98574E265C635300F9AAD4 /* Assets.xcassets */; }; CEE8B43F265C998A007728F4 /* OpenSSL in Frameworks */ = {isa = PBXBuildFile; productRef = CEE8B43E265C998A007728F4 /* OpenSSL */; }; CEE8B45A265CBF49007728F4 /* socket.c in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B456265CBF49007728F4 /* socket.c */; }; CEE8B45B265CBF49007728F4 /* thread.c in Sources */ = {isa = PBXBuildFile; fileRef = CEE8B458265CBF49007728F4 /* thread.c */; }; @@ -439,6 +519,7 @@ CEA029E52668592900CF57E1 /* JitterbugMac.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = JitterbugMac.entitlements; sourceTree = ""; }; CEA02A3C2668693800CF57E1 /* DeviceDetailsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeviceDetailsView.swift; sourceTree = ""; }; CEA02A3E26686B6000CF57E1 /* AppItemView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppItemView.swift; sourceTree = ""; }; + CEA65ECC26C5E2CB00020562 /* Jitterbug.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Jitterbug.app; sourceTree = BUILT_PRODUCTS_DIR; }; CEE8B456265CBF49007728F4 /* socket.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = socket.c; sourceTree = ""; }; CEE8B457265CBF49007728F4 /* socket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = socket.h; sourceTree = ""; }; CEE8B458265CBF49007728F4 /* thread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = thread.c; sourceTree = ""; }; @@ -499,6 +580,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + CEA65EBF26C5E2CB00020562 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + CEA65EC026C5E2CB00020562 /* OpenSSL in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ @@ -534,6 +623,7 @@ CE985875265C8FD700F9AAD4 /* jitterbugpair */, CEA029D92668592800CF57E1 /* Jitterbug.app */, CE97FFC3267113FB007FE23E /* JitterbugTunnel.appex */, + CEA65ECC26C5E2CB00020562 /* Jitterbug.app */, ); name = Products; sourceTree = ""; @@ -975,6 +1065,26 @@ productReference = CEA029D92668592800CF57E1 /* Jitterbug.app */; productType = "com.apple.product-type.application"; }; + CEA65E6E26C5E2CB00020562 /* JitterbugLite */ = { + isa = PBXNativeTarget; + buildConfigurationList = CEA65EC926C5E2CB00020562 /* Build configuration list for PBXNativeTarget "JitterbugLite" */; + buildPhases = ( + CEA65E7326C5E2CB00020562 /* Sources */, + CEA65EBF26C5E2CB00020562 /* Frameworks */, + CEA65EC226C5E2CB00020562 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = JitterbugLite; + packageProductDependencies = ( + CEA65E7126C5E2CB00020562 /* OpenSSL */, + ); + productName = Jitterbug; + productReference = CEA65ECC26C5E2CB00020562 /* Jitterbug.app */; + productType = "com.apple.product-type.application"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ @@ -1018,6 +1128,7 @@ projectRoot = ""; targets = ( CE985746265C635000F9AAD4 /* Jitterbug */, + CEA65E6E26C5E2CB00020562 /* JitterbugLite */, CEA029D82668592800CF57E1 /* JitterbugMac */, CE985874265C8FD700F9AAD4 /* JitterbugPair */, CE97FFC2267113FB007FE23E /* JitterbugTunnel */, @@ -1055,6 +1166,17 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + CEA65EC226C5E2CB00020562 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + CEA65EC326C5E2CB00020562 /* Settings.bundle in Resources */, + CEA65EC426C5E2CB00020562 /* Localizable.strings in Resources */, + CEA65EC526C5E2CB00020562 /* InfoPlist.strings in Resources */, + CEA65EC626C5E2CB00020562 /* Assets.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -1289,6 +1411,88 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + CEA65E7326C5E2CB00020562 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + CEA65E7426C5E2CB00020562 /* JBHostDevice.swift in Sources */, + CEA65E7526C5E2CB00020562 /* afc.c in Sources */, + CEA65E7626C5E2CB00020562 /* ContentView.swift in Sources */, + CEA65E7726C5E2CB00020562 /* ptrarray.c in Sources */, + CEA65E7826C5E2CB00020562 /* sbservices.c in Sources */, + CEA65E7926C5E2CB00020562 /* PairingsView.swift in Sources */, + CEA65E7A26C5E2CB00020562 /* notification_proxy.c in Sources */, + CEA65E7B26C5E2CB00020562 /* mobilebackup.c in Sources */, + CEA65E7C26C5E2CB00020562 /* ManualAddHostView.swift in Sources */, + CEA65E7D26C5E2CB00020562 /* file_relay.c in Sources */, + CEA65E7E26C5E2CB00020562 /* AddressUtils.m in Sources */, + CEA65E7F26C5E2CB00020562 /* collection.c in Sources */, + CEA65E8026C5E2CB00020562 /* service.c in Sources */, + CEA65E8126C5E2CB00020562 /* HostFinder.swift in Sources */, + CEA65E8226C5E2CB00020562 /* Dictionary.cpp in Sources */, + CEA65E8326C5E2CB00020562 /* Date.cpp in Sources */, + CEA65E8426C5E2CB00020562 /* BusyView.swift in Sources */, + CEA65E8526C5E2CB00020562 /* plist.c in Sources */, + CEA65E8626C5E2CB00020562 /* installation_proxy.c in Sources */, + CEA65E8726C5E2CB00020562 /* DeviceDetailsView.swift in Sources */, + CEA65E8826C5E2CB00020562 /* mobileactivation.c in Sources */, + CEA65E8926C5E2CB00020562 /* SupportFilesView.swift in Sources */, + CEA65E8A26C5E2CB00020562 /* node.c in Sources */, + CEA65E8B26C5E2CB00020562 /* property_list_service.c in Sources */, + CEA65E8C26C5E2CB00020562 /* syslog_relay.c in Sources */, + CEA65E8D26C5E2CB00020562 /* thread.c in Sources */, + CEA65E8E26C5E2CB00020562 /* libusbmuxd-stub.c in Sources */, + CEA65E8F26C5E2CB00020562 /* mobilebackup2.c in Sources */, + CEA65E9026C5E2CB00020562 /* debugserver.c in Sources */, + CEA65E9126C5E2CB00020562 /* HostFinderDelegate.swift in Sources */, + CEA65E9226C5E2CB00020562 /* AppItemView.swift in Sources */, + CEA65E9326C5E2CB00020562 /* debug.c in Sources */, + CEA65E9426C5E2CB00020562 /* JBHostDevice.m in Sources */, + CEA65E9526C5E2CB00020562 /* JitterbugApp.swift in Sources */, + CEA65E9626C5E2CB00020562 /* userpref.c in Sources */, + CEA65E9726C5E2CB00020562 /* preboard.c in Sources */, + CEA65E9826C5E2CB00020562 /* restore.c in Sources */, + CEA65E9926C5E2CB00020562 /* Extensions.swift in Sources */, + CEA65E9A26C5E2CB00020562 /* JBApp.m in Sources */, + CEA65E9B26C5E2CB00020562 /* device_link_service.c in Sources */, + CEA65E9C26C5E2CB00020562 /* Uid.cpp in Sources */, + CEA65E9D26C5E2CB00020562 /* bytearray.c in Sources */, + CEA65E9E26C5E2CB00020562 /* utils.c in Sources */, + CEA65E9F26C5E2CB00020562 /* Boolean.cpp in Sources */, + CEA65EA026C5E2CB00020562 /* heartbeat.c in Sources */, + CEA65EA126C5E2CB00020562 /* mobile_image_mounter.c in Sources */, + CEA65EA226C5E2CB00020562 /* screenshotr.c in Sources */, + CEA65EA326C5E2CB00020562 /* base64.c in Sources */, + CEA65EA426C5E2CB00020562 /* webinspector.c in Sources */, + CEA65EA526C5E2CB00020562 /* Data.cpp in Sources */, + CEA65EA626C5E2CB00020562 /* Main.swift in Sources */, + CEA65EA726C5E2CB00020562 /* mobilesync.c in Sources */, + CEA65EA826C5E2CB00020562 /* bplist.c in Sources */, + CEA65EA926C5E2CB00020562 /* time64.c in Sources */, + CEA65EAA26C5E2CB00020562 /* Integer.cpp in Sources */, + CEA65EAB26C5E2CB00020562 /* DeviceListView.swift in Sources */, + CEA65EAC26C5E2CB00020562 /* misagent.c in Sources */, + CEA65EAD26C5E2CB00020562 /* Structure.cpp in Sources */, + CEA65EAE26C5E2CB00020562 /* lockdown.c in Sources */, + CEA65EAF26C5E2CB00020562 /* CacheStorage.c in Sources */, + CEA65EB026C5E2CB00020562 /* socket.c in Sources */, + CEA65EB126C5E2CB00020562 /* companion_proxy.c in Sources */, + CEA65EB226C5E2CB00020562 /* FileSelectionView.swift in Sources */, + CEA65EB326C5E2CB00020562 /* house_arrest.c in Sources */, + CEA65EB426C5E2CB00020562 /* hashtable.c in Sources */, + CEA65EB526C5E2CB00020562 /* LauncherView.swift in Sources */, + CEA65EB626C5E2CB00020562 /* node_list.c in Sources */, + CEA65EB726C5E2CB00020562 /* Array.cpp in Sources */, + CEA65EB826C5E2CB00020562 /* Node.cpp in Sources */, + CEA65EB926C5E2CB00020562 /* Key.cpp in Sources */, + CEA65EBA26C5E2CB00020562 /* String.cpp in Sources */, + CEA65EBB26C5E2CB00020562 /* xplist.c in Sources */, + CEA65EBC26C5E2CB00020562 /* Real.cpp in Sources */, + CEA65EBD26C5E2CB00020562 /* diagnostics_relay.c in Sources */, + CEA65EBE26C5E2CB00020562 /* idevice.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -1560,6 +1764,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "$(PRODUCT_BUNDLE_PREFIX:default=com.osy86).Jitterbug"; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "WITH_VPN $(inherited)"; SWIFT_OBJC_BRIDGING_HEADER = "Jitterbug/Jitterbug-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; @@ -1587,6 +1792,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "$(PRODUCT_BUNDLE_PREFIX:default=com.osy86).Jitterbug"; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "WITH_VPN $(inherited)"; SWIFT_OBJC_BRIDGING_HEADER = "Jitterbug/Jitterbug-Bridging-Header.h"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -1661,6 +1867,55 @@ }; name = Release; }; + CEA65ECA26C5E2CB00020562 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = "$(DEVELOPMENT_TEAM)"; + ENABLE_PREVIEWS = YES; + INFOPLIST_FILE = Jitterbug/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "$(PRODUCT_BUNDLE_PREFIX:default=com.osy86).JitterbugLite"; + PRODUCT_NAME = Jitterbug; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OBJC_BRIDGING_HEADER = "Jitterbug/Jitterbug-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + CEA65ECB26C5E2CB00020562 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = "$(DEVELOPMENT_TEAM)"; + ENABLE_PREVIEWS = YES; + INFOPLIST_FILE = Jitterbug/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "$(PRODUCT_BUNDLE_PREFIX:default=com.osy86).JitterbugLite"; + PRODUCT_NAME = Jitterbug; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OBJC_BRIDGING_HEADER = "Jitterbug/Jitterbug-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -1709,6 +1964,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + CEA65EC926C5E2CB00020562 /* Build configuration list for PBXNativeTarget "JitterbugLite" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + CEA65ECA26C5E2CB00020562 /* Debug */, + CEA65ECB26C5E2CB00020562 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ @@ -1720,6 +1984,14 @@ minimumVersion = 1.1.180; }; }; + CEA65E7226C5E2CB00020562 /* XCRemoteSwiftPackageReference "OpenSSL" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/krzyzanowskim/OpenSSL.git"; + requirement = { + kind = upToNextMinorVersion; + minimumVersion = 1.1.180; + }; + }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ @@ -1733,6 +2005,11 @@ package = CE985860265C703A00F9AAD4 /* XCRemoteSwiftPackageReference "OpenSSL" */; productName = OpenSSL; }; + CEA65E7126C5E2CB00020562 /* OpenSSL */ = { + isa = XCSwiftPackageProductDependency; + package = CEA65E7226C5E2CB00020562 /* XCRemoteSwiftPackageReference "OpenSSL" */; + productName = OpenSSL; + }; CEE8B43E265C998A007728F4 /* OpenSSL */ = { isa = XCSwiftPackageProductDependency; package = CE985860265C703A00F9AAD4 /* XCRemoteSwiftPackageReference "OpenSSL" */; diff --git a/Jitterbug/DeviceDetailsView.swift b/Jitterbug/DeviceDetailsView.swift index 48ed62f..b2cb1e6 100644 --- a/Jitterbug/DeviceDetailsView.swift +++ b/Jitterbug/DeviceDetailsView.swift @@ -115,7 +115,12 @@ struct DeviceDetailsView: View { }.disabled(!host.isConnected) } }.onAppear { - if main.localHost == host && main.hasLocalDeviceSupport && !main.isTunnelStarted { + #if WITH_VPN + let supportVPN = main.localHost == host && main.hasLocalDeviceSupport && !main.isTunnelStarted + #else + let supportVPN = false + #endif + if supportVPN { main.startTunnel() } else { // BUG: sometimes SwiftUI doesn't like this... diff --git a/Jitterbug/Main.swift b/Jitterbug/Main.swift index 2c4ff73..3ebfcb9 100644 --- a/Jitterbug/Main.swift +++ b/Jitterbug/Main.swift @@ -84,7 +84,7 @@ class Main: NSObject, ObservableObject { refreshPairings() refreshSupportImages() unarchiveSavedHosts() - #if !os(macOS) + #if WITH_VPN initTunnel() #endif }