From 606140a7be508728dafafed9ea7bba1915c5de9d Mon Sep 17 00:00:00 2001 From: mahee96 <47920326+mahee96@users.noreply.github.com> Date: Sun, 16 Nov 2025 04:41:26 +0530 Subject: [PATCH] entitlements: code_sign_entitlements declaration was missing in AltStore.debug/release modes causing AppGroups access failure (nil in getPreviousBackupURL) when long pressing app entry in MyApps list Default entitlements are to come from AltStoreFree.entitlements, for paid entitlements one can use CodeSigning.xcconfig to override it to point to AltStore.entitlements instead. --- AltStore.xcodeproj/project.pbxproj | 43 ++++++++++++++++++++++++++++++ Build.xcconfig | 3 +++ 2 files changed, 46 insertions(+) diff --git a/AltStore.xcodeproj/project.pbxproj b/AltStore.xcodeproj/project.pbxproj index 267fffea..ac68ab63 100644 --- a/AltStore.xcodeproj/project.pbxproj +++ b/AltStore.xcodeproj/project.pbxproj @@ -489,6 +489,20 @@ remoteGlobalIDString = A83FE3C22EC9217F005ACE9A; remoteInfo = EmotionalDamage; }; + A83FE40C2EC93DCD005ACE9A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = A83FE3A32EC91F35005ACE9A /* em_proxy.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = CA60C44C93D7916DE57E6EBD; + remoteInfo = "em_proxy-staticlib"; + }; + A83FE40E2EC93DCD005ACE9A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = A83FE3A32EC91F35005ACE9A /* em_proxy.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = CA60058A9FBE4D17AF51A7D5; + remoteInfo = "run-bin"; + }; A8A543282D04F0C100D72399 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = B343F886295F7F9B002B1159 /* libfragmentzip.xcodeproj */; @@ -1310,6 +1324,15 @@ path = datastructures; sourceTree = ""; }; + A83FE4082EC93DCD005ACE9A /* Products */ = { + isa = PBXGroup; + children = ( + A83FE40D2EC93DCD005ACE9A /* libem_proxy_static.a */, + A83FE40F2EC93DCD005ACE9A /* run */, + ); + name = Products; + sourceTree = ""; + }; A85ACB942D1F31C400AA3DE7 /* xcconfigs */ = { isa = PBXGroup; children = ( @@ -2764,6 +2787,10 @@ productRefGroup = BFD2476B2284B9A500981D42 /* Products */; projectDirPath = ""; projectReferences = ( + { + ProductGroup = A83FE4082EC93DCD005ACE9A /* Products */; + ProjectRef = A83FE3A32EC91F35005ACE9A /* em_proxy.xcodeproj */; + }, { ProductGroup = A8A543222D04F0C100D72399 /* Products */; ProjectRef = B343F886295F7F9B002B1159 /* libfragmentzip.xcodeproj */; @@ -2796,6 +2823,20 @@ remoteRef = A809F68D2D04D71200F0F0F3 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + A83FE40D2EC93DCD005ACE9A /* libem_proxy_static.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libem_proxy_static.a; + remoteRef = A83FE40C2EC93DCD005ACE9A /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + A83FE40F2EC93DCD005ACE9A /* run */ = { + isa = PBXReferenceProxy; + fileType = "compiled.mach-o.executable"; + path = run; + remoteRef = A83FE40E2EC93DCD005ACE9A /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; A8A543292D04F0C100D72399 /* libfragmentzip */ = { isa = PBXReferenceProxy; fileType = "compiled.mach-o.executable"; @@ -4080,6 +4121,7 @@ ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; ASSETCATALOG_COMPILER_OPTIMIZATION = space; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = "$(CODE_SIGN_ENTITLEMENTS)"; CODE_SIGN_IDENTITY = "iPhone Developer"; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(inherited)"; @@ -4127,6 +4169,7 @@ ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; ASSETCATALOG_COMPILER_OPTIMIZATION = space; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = "$(CODE_SIGN_ENTITLEMENTS)"; CODE_SIGN_IDENTITY = "iPhone Developer"; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(inherited)"; diff --git a/Build.xcconfig b/Build.xcconfig index bbe4f25d..e95d5950 100644 --- a/Build.xcconfig +++ b/Build.xcconfig @@ -8,6 +8,9 @@ CURRENT_PROJECT_VERSION = 0603 DEVELOPMENT_TEAM = S32Z3HMYVQ ORG_IDENTIFIER = com.SideStore +// Default is free for CI builds, override it using CodeSigning.xcconfig if required +CODE_SIGN_ENTITLEMENTS = ./AltStore/AltStoreFree.entitlements + // Codesigning settings defined optionally, see `CodeSigning.xcconfig.example` #include? "CodeSigning.xcconfig"