diff --git a/.gitmodules b/.gitmodules index 0705eb49..bd5aa664 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,55 +1,68 @@ #------------------------------- # When changing url/branch in this .gitmodules file, # Always ensure you run: -# 1. `git submodule sync --recursive` -# 2. `git submodule update --init --remote --recursive ` -# 3. IF for some reason, the update doesn't fetch from updated URL try the following: -# a. Either stage or unstage the .gitmodules file fully, ie (don't have it partially staged and partial changes as unstaged) -# b. Ensure git used is LATEST VERSION [wasted few hours due to this :( ] -# 4. To restore to the commit that is marked by the submodule commit tracker file, simply issue `update --recursive` without --remote -# `git submodule update --init --recursive ` +# 1. `git rm --cached ` # this removes the submodule entry from general git tracking +# 2. `rm -rf .git/modules/` # this removes the stale name entries in submodule tracker +# 3. `rm -rf ` # removes the submodule completely +# 4. `git submodule --deinit ` # make sure that the submodule is de-inited too (ignore errors at this point) +# 5. `git submodule add [-b ] ` # This adds the submodule back into general git tracking and also adds to the submodule tracker +# 6. Step 5 creates an entry in the .gitmodules when a submodule is added, +# So if you already had one entry, try to remove duplicates at this point +# 7. `git submodule sync --recursive` # this now sets/updates the submodule repo url tracker into git config +# 8. `git submodule update --init --recursive` # this now clones the updated repo set by .gitmodules +# But this will always fetch the latest commit sepecified by the custom(if set)/default branch +# 9. If you do want to have a specific commit in that submodule branch and not latest, you need to perform normal detached head checkout and check-in as follows: +# `pushd ` # switch to the submodule repo +# `git checkout ` # this creates a detached head state +# `popd` # get back to parent repo +# `git add ` # check-in the changes in parent for this submodule link (tracker) +# `git commit -m ` # commit it to parent repo +# `git push` # push to parent repo to preserve this entire change in the submodule repo/link file +# +# NOTES: +# 1. updating just this .gitmodules file is NOT ENOUGH when changing repo url and performing a simple `git submodule update --init --recursive`, need to do all the above listed steps for proper tracking +# 2. updating the branch in this .gitmodules for same repo is okay as long as `git submodule update --init --recursive` is also performed followed by it +# 3. Ensure there is no stale entries or duplicate entries in this .gitmodules file coz, `git submodule add ...` creates an entry here. #------------------------------- [submodule "Dependencies/Roxas"] - path = Dependencies/Roxas - url = https://github.com/rileytestut/Roxas.git + path = Dependencies/Roxas + url = https://github.com/rileytestut/Roxas.git [submodule "Dependencies/libimobiledevice"] - path = Dependencies/libimobiledevice - url = https://github.com/libimobiledevice/libimobiledevice + path = Dependencies/libimobiledevice + url = https://github.com/libimobiledevice/libimobiledevice [submodule "Dependencies/libusbmuxd"] - path = Dependencies/libusbmuxd - url = https://github.com/libimobiledevice/libusbmuxd.git + path = Dependencies/libusbmuxd + url = https://github.com/libimobiledevice/libusbmuxd.git [submodule "Dependencies/libplist"] - path = Dependencies/libplist - url = https://github.com/SideStore/libplist.git + path = Dependencies/libplist + url = https://github.com/SideStore/libplist.git [submodule "Dependencies/MarkdownAttributedString"] - path = Dependencies/MarkdownAttributedString - url = https://github.com/chockenberry/MarkdownAttributedString.git + path = Dependencies/MarkdownAttributedString + url = https://github.com/chockenberry/MarkdownAttributedString.git [submodule "Dependencies/libimobiledevice-glue"] - path = Dependencies/libimobiledevice-glue - url = https://github.com/libimobiledevice/libimobiledevice-glue -# [submodule "Dependencies/AltSign"] -# path = Dependencies/AltSign -# url = https://github.com/rileytestut/AltSign.git -# # url = https://github.com/SideStore/AltSign.git -# branch = marketplace -# # branch = master + path = Dependencies/libimobiledevice-glue + url = https://github.com/libimobiledevice/libimobiledevice-glue + #sidestore dependencies [submodule "SideStore/minimuxer"] - path = SideStore/minimuxer - url = https://github.com/SideStore/minimuxer - branch = master + path = SideStore/minimuxer + url = https://github.com/SideStore/minimuxer + branch = master [submodule "SideStore/em_proxy"] - path = SideStore/em_proxy - url = https://github.com/SideStore/em_proxy - branch = master + path = SideStore/em_proxy + url = https://github.com/SideStore/em_proxy + branch = master [submodule "SideStore/libfragmentzip"] - path = SideStore/libfragmentzip - url = https://github.com/SideStore/libfragmentzip - branch = master + path = SideStore/libfragmentzip + url = https://github.com/SideStore/libfragmentzip + branch = master [submodule "SideStore/apps-v2.json"] - path = SideStore/apps-v2.json - url = https://github.com/SideStore/apps-v2.json - branch = main - + path = SideStore/apps-v2.json + url = https://github.com/SideStore/apps-v2.json + branch = main +[submodule "SideStore/AltSign"] + path = SideStore/AltSign + url = https://github.com/SideStore/AltSign + branch = master \ No newline at end of file diff --git a/AltStore.xcodeproj/project.pbxproj b/AltStore.xcodeproj/project.pbxproj index c18b50fe..519683ed 100644 --- a/AltStore.xcodeproj/project.pbxproj +++ b/AltStore.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 54; + objectVersion = 60; objects = { /* Begin PBXBuildFile section */ @@ -54,15 +54,19 @@ A809F69F2D04D7B300F0F0F3 /* libem_proxy_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A809F6942D04D71200F0F0F3 /* libem_proxy_static.a */; }; A809F6A82D04DA1900F0F0F3 /* minimuxer.swift in Sources */ = {isa = PBXBuildFile; fileRef = A809F6A32D04DA1900F0F0F3 /* minimuxer.swift */; }; A809F6A92D04DA1900F0F0F3 /* SwiftBridgeCore.swift in Sources */ = {isa = PBXBuildFile; fileRef = A809F6A72D04DA1900F0F0F3 /* SwiftBridgeCore.swift */; }; - A81177012D0B3C6C00D6C122 /* AltSign-Static in Frameworks */ = {isa = PBXBuildFile; productRef = A81177002D0B3C6C00D6C122 /* AltSign-Static */; }; - A81177032D0B3C8200D6C122 /* OpenSSL in Frameworks */ = {isa = PBXBuildFile; productRef = A81177022D0B3C8200D6C122 /* OpenSSL */; }; - A81177052D0B3C9800D6C122 /* OpenSSL in Frameworks */ = {isa = PBXBuildFile; productRef = A81177042D0B3C9800D6C122 /* OpenSSL */; }; A82067842D03DC0600645C0D /* OperatingSystemVersion+Comparable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5708416292448DA00D42D34 /* OperatingSystemVersion+Comparable.swift */; }; A82067C42D03E0DE00645C0D /* SemanticVersion in Frameworks */ = {isa = PBXBuildFile; productRef = A82067C32D03E0DE00645C0D /* SemanticVersion */; }; + A859ED5C2D1EE827003DCC58 /* OpenSSL.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */; }; + A859ED5D2D1EE827003DCC58 /* OpenSSL.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; A8945AA62D059B6100D86CBE /* Roxas.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A8945AA52D059B6100D86CBE /* Roxas.framework */; }; A8A543302D04F14400D72399 /* libfragmentzip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A8A5432F2D04F0C100D72399 /* libfragmentzip.a */; }; A8BB34E52D04EC8E000A8B4D /* minimuxer-helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = A809F6A52D04DA1900F0F0F3 /* minimuxer-helpers.swift */; }; - A8D484D02D0CCA8A002C691D /* AltSign-Static in Frameworks */ = {isa = PBXBuildFile; productRef = A8D484CF2D0CCA8A002C691D /* AltSign-Static */; }; + A8C6D50C2D1EE87600DF01F1 /* AltSign-Static in Frameworks */ = {isa = PBXBuildFile; productRef = A8C6D50B2D1EE87600DF01F1 /* AltSign-Static */; }; + A8C6D5122D1EE8AF00DF01F1 /* AltSign-Static in Frameworks */ = {isa = PBXBuildFile; productRef = A8C6D5112D1EE8AF00DF01F1 /* AltSign-Static */; }; + A8C6D5132D1EE8D700DF01F1 /* OpenSSL.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */; }; + A8C6D5142D1EE8D700DF01F1 /* OpenSSL.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + A8C6D5172D1EE95B00DF01F1 /* OpenSSL.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */; }; + A8C6D5182D1EE95B00DF01F1 /* OpenSSL.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; A8D484D82D0CD306002C691D /* AltBackup.ipa in Resources */ = {isa = PBXBuildFile; fileRef = A8D484D72D0CD306002C691D /* AltBackup.ipa */; }; A8F838922D048E8F00ED425D /* libEmotionalDamage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19104DB22909C06C00C49C7B /* libEmotionalDamage.a */; }; A8F838932D048E8F00ED425D /* libminimuxer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 191E5FAB290A5D92001A3B7C /* libminimuxer.a */; }; @@ -502,12 +506,35 @@ /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ + A859ED5E2D1EE827003DCC58 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + A859ED5D2D1EE827003DCC58 /* OpenSSL.xcframework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + A8C6D5102D1EE8AC00DF01F1 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + A8C6D5142D1EE8D700DF01F1 /* OpenSSL.xcframework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; BF088D2B2501A087008082D9 /* Embed Frameworks */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = ""; dstSubfolderSpec = 10; files = ( + A8C6D5182D1EE95B00DF01F1 /* OpenSSL.xcframework in Embed Frameworks */, BF1614F2250822F100767AEA /* Roxas.framework in Embed Frameworks */, BF66EE862501AE50007EE018 /* AltStoreCore.framework in Embed Frameworks */, ); @@ -589,6 +616,7 @@ A809F6A72D04DA1900F0F0F3 /* SwiftBridgeCore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftBridgeCore.swift; sourceTree = ""; }; A8570F912D104EA100929D17 /* AltStore.release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AltStore.release.xcconfig; sourceTree = ""; }; A8570F922D104F2C00929D17 /* AltStoreCore.release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AltStoreCore.release.xcconfig; sourceTree = ""; }; + A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */ = {isa = PBXFileReference; expectedSignature = "AppleDeveloperProgram:67RAULRX93:Marcin Krzyzanowski"; lastKnownFileType = wrapper.xcframework; name = OpenSSL.xcframework; path = SideStore/AltSign/Dependencies/OpenSSL/Frameworks/OpenSSL.xcframework; sourceTree = ""; }; A8945AA52D059B6100D86CBE /* Roxas.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Roxas.framework; sourceTree = BUILT_PRODUCTS_DIR; }; A8D484D72D0CD306002C691D /* AltBackup.ipa */ = {isa = PBXFileReference; lastKnownFileType = file; path = AltBackup.ipa; sourceTree = ""; }; A8F66C3C2D04D433009689E6 /* em_proxy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = em_proxy.h; sourceTree = ""; }; @@ -990,7 +1018,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A81177032D0B3C8200D6C122 /* OpenSSL in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -998,8 +1025,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + A8C6D5132D1EE8D700DF01F1 /* OpenSSL.xcframework in Frameworks */, BF580498246A3D19008AE704 /* UIKit.framework in Frameworks */, - A8D484D02D0CCA8A002C691D /* AltSign-Static in Frameworks */, + A8C6D5122D1EE8AF00DF01F1 /* AltSign-Static in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1009,8 +1037,9 @@ files = ( A8945AA62D059B6100D86CBE /* Roxas.framework in Frameworks */, A82067C42D03E0DE00645C0D /* SemanticVersion in Frameworks */, - A81177012D0B3C6C00D6C122 /* AltSign-Static in Frameworks */, + A859ED5C2D1EE827003DCC58 /* OpenSSL.xcframework in Frameworks */, 551A15E55999499418AC1022 /* Pods_AltStoreCore.framework in Frameworks */, + A8C6D50C2D1EE87600DF01F1 /* AltSign-Static in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1026,10 +1055,10 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + A8C6D5172D1EE95B00DF01F1 /* OpenSSL.xcframework in Frameworks */, A8A543302D04F14400D72399 /* libfragmentzip.a in Frameworks */, A805C3CD2D0C316A00E76BDD /* Pods_SideStore.framework in Frameworks */, A8F838942D048ECE00ED425D /* libimobiledevice.a in Frameworks */, - A81177052D0B3C9800D6C122 /* OpenSSL in Frameworks */, A8F838922D048E8F00ED425D /* libEmotionalDamage.a in Frameworks */, A8F838932D048E8F00ED425D /* libminimuxer.a in Frameworks */, D533E8B72727841800A9B5DD /* libAppleArchive.tbd in Frameworks */, @@ -1730,6 +1759,7 @@ BFD247852284BB3300981D42 /* Frameworks */ = { isa = PBXGroup; children = ( + A859ED5B2D1EE80D003DCC58 /* OpenSSL.xcframework */, B343F86C295F759E002B1159 /* libresolv.tbd */, D533E8B62727841800A9B5DD /* libAppleArchive.tbd */, BF580497246A3D19008AE704 /* UIKit.framework */, @@ -2189,6 +2219,7 @@ BF580477246A28F7008AE704 /* Sources */, BF580478246A28F7008AE704 /* Frameworks */, BF580479246A28F7008AE704 /* Resources */, + A8C6D5102D1EE8AC00DF01F1 /* Embed Frameworks */, ); buildRules = ( ); @@ -2208,6 +2239,7 @@ BF66EE7A2501AE50007EE018 /* Sources */, BF66EE7B2501AE50007EE018 /* Frameworks */, BF66EE7C2501AE50007EE018 /* Resources */, + A859ED5E2D1EE827003DCC58 /* Embed Frameworks */, ); buildRules = ( ); @@ -2216,7 +2248,7 @@ name = AltStoreCore; packageProductDependencies = ( A82067C32D03E0DE00645C0D /* SemanticVersion */, - A81177002D0B3C6C00D6C122 /* AltSign-Static */, + A8C6D50B2D1EE87600DF01F1 /* AltSign-Static */, ); productName = AltStoreCore; productReference = BF66EE7E2501AE50007EE018 /* AltStoreCore.framework */; @@ -2324,8 +2356,6 @@ D58D5F2C26DFE68E00E55E38 /* XCRemoteSwiftPackageReference "LaunchAtLogin" */, D5FB7A2C2AA2859400EF863D /* XCRemoteSwiftPackageReference "swift-argument-parser" */, A82067C22D03E0DE00645C0D /* XCRemoteSwiftPackageReference "SemanticVersion" */, - A81176FC2D0B3BAB00D6C122 /* XCRemoteSwiftPackageReference "OpenSSL" */, - A81176FF2D0B3C6C00D6C122 /* XCRemoteSwiftPackageReference "AltSign" */, ); productRefGroup = BFD2476B2284B9A500981D42 /* Products */; projectDirPath = ""; @@ -3701,22 +3731,6 @@ /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ - A81176FC2D0B3BAB00D6C122 /* XCRemoteSwiftPackageReference "OpenSSL" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/krzyzanowskim/OpenSSL"; - requirement = { - kind = upToNextMajorVersion; - minimumVersion = 1.1.2000; - }; - }; - A81176FF2D0B3C6C00D6C122 /* XCRemoteSwiftPackageReference "AltSign" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/SideStore/AltSign"; - requirement = { - branch = master; - kind = branch; - }; - }; A82067C22D03E0DE00645C0D /* XCRemoteSwiftPackageReference "SemanticVersion" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/SwiftPackageIndex/SemanticVersion"; @@ -3744,29 +3758,17 @@ /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ - A81177002D0B3C6C00D6C122 /* AltSign-Static */ = { - isa = XCSwiftPackageProductDependency; - package = A81176FF2D0B3C6C00D6C122 /* XCRemoteSwiftPackageReference "AltSign" */; - productName = "AltSign-Static"; - }; - A81177022D0B3C8200D6C122 /* OpenSSL */ = { - isa = XCSwiftPackageProductDependency; - package = A81176FC2D0B3BAB00D6C122 /* XCRemoteSwiftPackageReference "OpenSSL" */; - productName = OpenSSL; - }; - A81177042D0B3C9800D6C122 /* OpenSSL */ = { - isa = XCSwiftPackageProductDependency; - package = A81176FC2D0B3BAB00D6C122 /* XCRemoteSwiftPackageReference "OpenSSL" */; - productName = OpenSSL; - }; A82067C32D03E0DE00645C0D /* SemanticVersion */ = { isa = XCSwiftPackageProductDependency; package = A82067C22D03E0DE00645C0D /* XCRemoteSwiftPackageReference "SemanticVersion" */; productName = SemanticVersion; }; - A8D484CF2D0CCA8A002C691D /* AltSign-Static */ = { + A8C6D50B2D1EE87600DF01F1 /* AltSign-Static */ = { + isa = XCSwiftPackageProductDependency; + productName = "AltSign-Static"; + }; + A8C6D5112D1EE8AF00DF01F1 /* AltSign-Static */ = { isa = XCSwiftPackageProductDependency; - package = A81176FF2D0B3C6C00D6C122 /* XCRemoteSwiftPackageReference "AltSign" */; productName = "AltSign-Static"; }; /* End XCSwiftPackageProductDependency section */ diff --git a/AltStore.xcworkspace/contents.xcworkspacedata b/AltStore.xcworkspace/contents.xcworkspacedata index 9940253b..d5c67065 100644 --- a/AltStore.xcworkspace/contents.xcworkspacedata +++ b/AltStore.xcworkspace/contents.xcworkspacedata @@ -4,6 +4,9 @@ + + diff --git a/SideStore/AltSign b/SideStore/AltSign new file mode 160000 index 00000000..8a4ea328 --- /dev/null +++ b/SideStore/AltSign @@ -0,0 +1 @@ +Subproject commit 8a4ea328923adcdb0312a62cde50b6ebdb16ad2c