Compare commits

...

12 Commits

Author SHA1 Message Date
mahee96
e744ed8b67 0.6.4 tag marker 2026-05-05 13:09:20 +05:30
mahee96
20714673b2 - Fix: corrected device IP in vpn configuration screen + corrected altsign package to use master-branch 2026-05-05 12:15:45 +05:30
mahee96
7f2be4cd58 Merge branch 'develop' 2026-05-05 12:02:25 +05:30
nythepegasus
f055f33bec chore: bump to 0.6.4 [noci]
Signed-off-by: nythepegasus <mobile@nythepegas.us>
2026-05-05 00:49:16 -04:00
Huge_Black
4deda9229c fix: fix crash in source detail view 2026-04-12 14:24:25 +08:00
Huge_Black
c1bcadbad5 fix: fix widget issue once again. PLEASE INCLUDE ViewApp.intentdefinition OTHERWISE WIDGET WILL NOT WORK 2026-04-12 14:24:11 +08:00
CelloSerenity
f8e199b3d4 feat: LC Source Update (#1253)
Signed-off-by: CelloSerenity <195480169+CelloSerenity@users.noreply.github.com>
2026-04-10 23:31:21 -04:00
nythepegasus
5efed9df08 feat: extend range of exploit check
this is a huge hack but for now and what this is used for elsewhere

Signed-off-by: nythepegasus <mobile@nythepegas.us>
2026-04-09 20:35:59 -04:00
mahee96
ae380e48dd change build to use .xcodeproj instead of workspace 2026-04-04 01:43:15 -07:00
mahee96
db5fb89d7c remove xcworkspace - obsolete now 2026-04-04 01:37:20 -07:00
Magesh K
2b71c36ace Merge pull request #944 from SideStore/develop
Merge develop into main for 0.6.1 release
2025-04-08 22:03:54 -07:00
Zero King
4aca1dfa43 fix: typo in hasUpdate comparison
Signed-off-by: Zero King <l2dy@icloud.com>
2025-03-08 22:43:20 +05:30
10 changed files with 33 additions and 46 deletions

View File

@@ -52,7 +52,7 @@ jobs:
- name: Setup Xcode - name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1.6.0 uses: maxim-lobanov/setup-xcode@v1.6.0
with: with:
xcode-version: "26.0" xcode-version: "26.4"
- name: Restore Cache (exact) - name: Restore Cache (exact)
id: xcode-cache-exact id: xcode-cache-exact

View File

@@ -640,6 +640,13 @@
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
/* Begin PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet section */ /* Begin PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet section */
174F75012F8B4F4900A53376 /* PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet */ = {
isa = PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet;
buildPhase = BFD247682284B9A500981D42 /* Resources */;
membershipExceptions = (
Intents/ViewApp.intentdefinition,
);
};
A8EEC8CC2F4B146B00F2436D /* PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet */ = { A8EEC8CC2F4B146B00F2436D /* PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet */ = {
isa = PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet; isa = PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet;
buildPhase = BFD247682284B9A500981D42 /* Resources */; buildPhase = BFD247682284B9A500981D42 /* Resources */;
@@ -651,7 +658,7 @@
/* Begin PBXFileSystemSynchronizedRootGroup section */ /* Begin PBXFileSystemSynchronizedRootGroup section */
A8BD20242F543FAD0045335F /* apps-v2.json */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = "apps-v2.json"; sourceTree = "<group>"; }; A8BD20242F543FAD0045335F /* apps-v2.json */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = "apps-v2.json"; sourceTree = "<group>"; };
A8EEC0502F4AF7FB00F2436D /* AltStoreCore */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC0BF2F4AF7FB00F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = AltStoreCore; sourceTree = "<group>"; }; A8EEC0502F4AF7FB00F2436D /* AltStoreCore */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (174F75012F8B4F4900A53376 /* PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet */, A8EEC0BF2F4AF7FB00F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = AltStoreCore; sourceTree = "<group>"; };
A8EEC3482F4B0D8600F2436D /* Shared */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC36A2F4B0D8700F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, A8EEC36C2F4B0D8700F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, A8EEC36B2F4B0D8700F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Shared; sourceTree = "<group>"; }; A8EEC3482F4B0D8600F2436D /* Shared */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC36A2F4B0D8700F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, A8EEC36C2F4B0D8700F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, A8EEC36B2F4B0D8700F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Shared; sourceTree = "<group>"; };
A8EEC3B92F4B0EFC00F2436D /* AltWidget */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC3CA2F4B0EFC00F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = AltWidget; sourceTree = "<group>"; }; A8EEC3B92F4B0EFC00F2436D /* AltWidget */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC3CA2F4B0EFC00F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = AltWidget; sourceTree = "<group>"; };
A8EEC3D92F4B0FC800F2436D /* AltBackup */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC3E22F4B0FC800F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = AltBackup; sourceTree = "<group>"; }; A8EEC3D92F4B0FC800F2436D /* AltBackup */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (A8EEC3E22F4B0FC800F2436D /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = AltBackup; sourceTree = "<group>"; };
@@ -2420,8 +2427,8 @@
isa = XCRemoteSwiftPackageReference; isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/SideStore/AltSign"; repositoryURL = "https://github.com/SideStore/AltSign";
requirement = { requirement = {
kind = upToNextMajorVersion; branch = master;
minimumVersion = 0.1.0; kind = branch;
}; };
}; };
A82067C22D03E0DE00645C0D /* XCRemoteSwiftPackageReference "SemanticVersion" */ = { A82067C22D03E0DE00645C0D /* XCRemoteSwiftPackageReference "SemanticVersion" */ = {

View File

@@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "group:AltStore.xcodeproj">
</FileRef>
<FileRef
location = "group:Dependencies/AltSign">
</FileRef>
<FileRef
location = "group:Dependencies/minimuxer">
</FileRef>
<FileRef
location = "group:Dependencies/Roxas/Roxas.xcodeproj">
</FileRef>
</Workspace>

View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded</key>
<false/>
</dict>
</plist>

View File

@@ -203,10 +203,14 @@ class HeaderContentViewController<Header: UIView, Content: ScrollableContentView
self.navigationBarButton = PillButton(type: .system) self.navigationBarButton = PillButton(type: .system)
self.navigationBarButton.setContentCompressionResistancePriority(UILayoutPriority(rawValue: 9000), for: .horizontal) // Prioritize over title length. self.navigationBarButton.setContentCompressionResistancePriority(UILayoutPriority(rawValue: 9000), for: .horizontal) // Prioritize over title length.
// Embed navigationBarButton in container view with Auto Layout to ensure it can automatically update its size. if #available(iOS 26.0, *) {
let buttonContainerView = UIView() self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: self.navigationBarButton)
buttonContainerView.addSubview(self.navigationBarButton, pinningEdgesWith: .zero) } else {
self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: buttonContainerView) // Embed navigationBarButton in container view with Auto Layout to ensure it can automatically update its size.
let buttonContainerView = UIView()
buttonContainerView.addSubview(self.navigationBarButton, pinningEdgesWith: .zero)
self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: buttonContainerView)
}
NSLayoutConstraint.activate([ NSLayoutConstraint.activate([
self.navigationBarIconView.widthAnchor.constraint(equalToConstant: 35), self.navigationBarIconView.widthAnchor.constraint(equalToConstant: 35),

View File

@@ -98,7 +98,7 @@ final class TunnelConfig: ObservableObject {
static let shared = TunnelConfig() static let shared = TunnelConfig()
private static let defaultOverrideIP: String = { private static let defaultOverrideIP: String = {
if #available(iOS 26.4, *) { return "192.168.1.50" } // if #available(iOS 26.4, *) { return "192.168.1.50" }
return "10.7.0.1" return "10.7.0.1"
}() }()

View File

@@ -85,12 +85,12 @@ extension ProcessInfo {
} }
public var sparseRestorePatched: Bool { public var sparseRestorePatched: Bool {
if operatingSystemVersion < OperatingSystemVersion(majorVersion: 18, minorVersion: 1, patchVersion: 0) { false } // only true if we are 18.7.2<=26 || >=26.0.2
else if operatingSystemVersion > OperatingSystemVersion(majorVersion: 18, minorVersion: 1, patchVersion: 1) { true } if (OperatingSystemVersion(majorVersion: 18, minorVersion: 7, patchVersion: 2) <= operatingSystemVersion && operatingSystemVersion.majorVersion == 18) || operatingSystemVersion >= OperatingSystemVersion(majorVersion: 26, minorVersion: 0, patchVersion: 2) { true }
else if operatingSystemVersion >= OperatingSystemVersion(majorVersion: 18, minorVersion: 1, patchVersion: 0), // we are 26.0<26.0.2
let currentBuild = BuildVersion(operatingSystemBuild), else if operatingSystemVersion < OperatingSystemVersion(majorVersion: 26, minorVersion: 0, patchVersion: 2) { false }
let targetBuild = BuildVersion("22B5054e") { // we are <18.7.2
currentBuild >= targetBuild else if operatingSystemVersion < OperatingSystemVersion(majorVersion: 18, minorVersion: 7, patchVersion: 2) { false }
} else { false } else { true }
} }
} }

View File

@@ -1,8 +1,8 @@
// Configuration settings file format documentation can be found at: // Configuration settings file format documentation can be found at:
// https://help.apple.com/xcode/#/dev745c5c974 // https://help.apple.com/xcode/#/dev745c5c974
MARKETING_VERSION = 0.6.3 MARKETING_VERSION = 0.6.4
CURRENT_PROJECT_VERSION = 0603 CURRENT_PROJECT_VERSION = 0604
// Vars to be overwritten by `CodeSigning.xcconfig` if exists // Vars to be overwritten by `CodeSigning.xcconfig` if exists
DEVELOPMENT_TEAM = S32Z3HMYVQ DEVELOPMENT_TEAM = S32Z3HMYVQ

View File

@@ -169,7 +169,7 @@ MARKETING_VERSION ?=
BUNDLE_ID_SUFFIX ?= BUNDLE_ID_SUFFIX ?=
# Common build settings for xcodebuild # Common build settings for xcodebuild
COMMON_BUILD_SETTINGS = \ COMMON_BUILD_SETTINGS = \
-workspace AltStore.xcworkspace \ -project AltStore.xcodeproj \
-scheme SideStore \ -scheme SideStore \
-sdk iphoneos \ -sdk iphoneos \
-configuration $(BUILD_CONFIG) \ -configuration $(BUILD_CONFIG) \
@@ -247,7 +247,7 @@ sim-boot-check:
clean-build: clean-build:
@echo "Cleaning build artifacts..." @echo "Cleaning build artifacts..."
@xcodebuild clean -workspace AltStore.xcworkspace -scheme SideStore @xcodebuild clean -project AltStore.xcodeproj -scheme SideStore
fakesign-apps: fakesign-apps:
rm -rf SideStore.xcarchive/Products/Applications/SideStore.app/Frameworks/AltStoreCore.framework/Frameworks/ rm -rf SideStore.xcarchive/Products/Applications/SideStore.app/Frameworks/AltStoreCore.framework/Frameworks/

View File

@@ -14,7 +14,7 @@
}, },
{ {
"identifier": "com.livecontainer.source", "identifier": "com.livecontainer.source",
"sourceURL": "https://raw.githubusercontent.com/LiveContainer/LiveContainer/refs/heads/main/apps.json" "sourceURL": "https://github.com/LiveContainer/LiveContainer/releases/download/1.0/apps.json"
}, },
{ {
"identifier": "com.aoshuang.manicemu", "identifier": "com.aoshuang.manicemu",
@@ -95,7 +95,7 @@
}, },
{ {
"identifier": "com.livecontainer.source", "identifier": "com.livecontainer.source",
"sourceURL": "https://raw.githubusercontent.com/LiveContainer/LiveContainer/refs/heads/main/apps.json" "sourceURL": "https://github.com/LiveContainer/LiveContainer/releases/download/1.0/apps.json"
}, },
{ {
"identifier": "com.aoshuang.manicemu", "identifier": "com.aoshuang.manicemu",