mirror of https://github.com/opa334/TrollStore.git
Compare commits
4 Commits
79250bc7fb
...
5b467392e5
Author | SHA1 | Date |
---|---|---|
opa334 | 5b467392e5 | |
opa334 | 1264e022c4 | |
opa334 | f98b2a2094 | |
opa334 | 0d5b72b19d |
|
@ -10,7 +10,7 @@ Supported versions: 14.0 - 16.6.1, 16.7 RC (20H18), 17.0
|
|||
|
||||
For installing TrollStore, refer to the guides at [ios.cfw.guide](https://ios.cfw.guide/installing-trollstore)
|
||||
|
||||
16.7.x (excluding 16.7 RC) and 17.0.1+ will NEVER be supported (unless Apple fucks CoreTrust up a third time...).
|
||||
16.7.x (excluding 16.7 RC) and 17.0.1+ will NEVER be supported (unless a third CoreTrust bug is discovered, which is unlikely).
|
||||
|
||||
## Updating TrollStore
|
||||
|
||||
|
@ -109,6 +109,10 @@ Afterwards you can use the [spawnRoot function in TSUtil.m](./Shared/TSUtil.m#L7
|
|||
- Spawning a launch daemon (Would need `CS_PLATFORMIZED`)
|
||||
- Injecting a tweak into a system process (Would need `TF_PLATFORM`, a userland PAC bypass and a PMAP trust level bypass)
|
||||
|
||||
### Compilation
|
||||
|
||||
To compile TrollStore, ensure [theos](https://theos.dev/docs/installation) is installed. Additionaly ensure [brew](https://brew.sh/) is installed and install [libarchive](https://formulae.brew.sh/formula/libarchive) from brew.
|
||||
|
||||
## Credits and Further Reading
|
||||
|
||||
[@alfiecg_dev](https://twitter.com/alfiecg_dev/) - Found the CoreTrust bug that allows TrollStore to work through patchdiffing and worked on automating the bypass.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Package: com.opa334.trollstoreroothelper
|
||||
Name: trollstoreroothelper
|
||||
Version: 2.0.11
|
||||
Version: 2.0.12
|
||||
Architecture: iphoneos-arm
|
||||
Description: An awesome tool of some sort!!
|
||||
Maintainer: opa334
|
||||
|
|
|
@ -37,8 +37,8 @@ extern NSString *LSInstallTypeKey;
|
|||
|
||||
@protocol LSApplicationWorkspaceObserverProtocol <NSObject>
|
||||
@optional
|
||||
-(void)applicationsDidInstall:(id)arg1;
|
||||
-(void)applicationsDidUninstall:(id)arg1;
|
||||
- (void)applicationsDidInstall:(NSArray <LSApplicationProxy *>*)apps;
|
||||
- (void)applicationsDidUninstall:(NSArray <LSApplicationProxy *>*)apps;
|
||||
@end
|
||||
|
||||
@interface LSEnumerator : NSEnumerator
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
<string>iPhoneOS</string>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.0.11</string>
|
||||
<string>2.0.12</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UIDeviceFamily</key>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Package: com.opa334.trollstorehelper
|
||||
Name: TrollStore Helper
|
||||
Version: 2.0.11
|
||||
Version: 2.0.12
|
||||
Architecture: iphoneos-arm
|
||||
Description: Helper utility to install and manage TrollStore!
|
||||
Maintainer: opa334
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
<string>iPhoneOS</string>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.0.11</string>
|
||||
<string>2.0.12</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UIDeviceFamily</key>
|
||||
|
|
|
@ -104,7 +104,8 @@ UIImage* imageWithSize(UIImage* image, CGSize size)
|
|||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reloadTable) name:@"ApplicationsChanged" object:nil];
|
||||
}
|
||||
|
||||
- (void)viewDidLoad {
|
||||
- (void)viewDidLoad
|
||||
{
|
||||
[super viewDidLoad];
|
||||
|
||||
self.tableView.allowsMultipleSelectionDuringEditing = NO;
|
||||
|
@ -340,11 +341,13 @@ UIImage* imageWithSize(UIImage* image, CGSize size)
|
|||
|
||||
#pragma mark - Table view data source
|
||||
|
||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
|
||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
|
||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
|
||||
{
|
||||
return _cachedAppInfos.count;
|
||||
}
|
||||
|
||||
|
@ -353,7 +356,8 @@ UIImage* imageWithSize(UIImage* image, CGSize size)
|
|||
[self reloadTable];
|
||||
}
|
||||
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
|
||||
{
|
||||
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ApplicationCell"];
|
||||
if(!cell) {
|
||||
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"ApplicationCell"];
|
||||
|
@ -412,7 +416,8 @@ UIImage* imageWithSize(UIImage* image, CGSize size)
|
|||
return cell;
|
||||
}
|
||||
|
||||
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
|
||||
{
|
||||
return 80.0f;
|
||||
}
|
||||
|
||||
|
@ -497,13 +502,25 @@ UIImage* imageWithSize(UIImage* image, CGSize size)
|
|||
[TSPresentationDelegate presentViewController:appSelectAlert animated:YES completion:nil];
|
||||
}
|
||||
|
||||
- (void)applicationsDidInstall:(id)arg1
|
||||
- (void)purgeCachedIconsForApps:(NSArray <LSApplicationProxy *>*)apps
|
||||
{
|
||||
for (LSApplicationProxy *appProxy in apps) {
|
||||
NSString *appId = appProxy.bundleIdentifier;
|
||||
if (_cachedIcons[appId]) {
|
||||
[_cachedIcons removeObjectForKey:appId];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (void)applicationsDidInstall:(NSArray <LSApplicationProxy *>*)apps
|
||||
{
|
||||
[self purgeCachedIconsForApps:apps];
|
||||
[self reloadTable];
|
||||
}
|
||||
|
||||
- (void)applicationsDidUninstall:(id)arg1
|
||||
- (void)applicationsDidUninstall:(NSArray <LSApplicationProxy *>*)apps
|
||||
{
|
||||
[self purgeCachedIconsForApps:apps];
|
||||
[self reloadTable];
|
||||
}
|
||||
|
||||
|
|
|
@ -323,7 +323,7 @@ extern NSUserDefaults* trollStoreUserDefaults(void);
|
|||
[_specifiers addObject:installAlertConfigurationSpecifier];
|
||||
|
||||
PSSpecifier* otherGroupSpecifier = [PSSpecifier emptyGroupSpecifier];
|
||||
[otherGroupSpecifier setProperty:[NSString stringWithFormat:@"TrollStore %@\n\n© 2022-2024 Lars Fröder (opa334)\n\nTrollStore is NOT for piracy!\n\nCredits:\nGoogle TAG, @alfiecg_dev: CoreTrust bug\n@lunotech11, @SerenaKit, @tylinux, @TheRealClarity: Various contributions\n@ProcursusTeam: uicache, ldid\n@cstar_ow: uicache\n@saurik: ldid", [self getTrollStoreVersion]] forKey:@"footerText"];
|
||||
[otherGroupSpecifier setProperty:[NSString stringWithFormat:@"TrollStore %@\n\n© 2022-2024 Lars Fröder (opa334)\n\nTrollStore is NOT for piracy!\n\nCredits:\nGoogle TAG, @alfiecg_dev: CoreTrust bug\n@lunotech11, @SerenaKit, @tylinux, @TheRealClarity, @dhinakg, @khanhduytran0: Various contributions\n@ProcursusTeam: uicache, ldid\n@cstar_ow: uicache\n@saurik: ldid", [self getTrollStoreVersion]] forKey:@"footerText"];
|
||||
[_specifiers addObject:otherGroupSpecifier];
|
||||
|
||||
PSSpecifier* advancedLinkSpecifier = [PSSpecifier preferenceSpecifierNamed:@"Advanced"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Package: com.opa334.trollstore
|
||||
Name: TrollStore
|
||||
Version: 2.0.11
|
||||
Version: 2.0.12
|
||||
Architecture: iphoneos-arm
|
||||
Description: An awesome application!
|
||||
Maintainer: opa334
|
||||
|
|
Loading…
Reference in New Issue