├── packages
└── com.netskao.noappthinning_1.4_iphoneos-arm64.deb
├── layout
└── DEBIAN
│ ├── postrm
│ ├── control
│ └── postinst
├── Makefile
├── README.md
├── NoAppThinning.plist
└── Tweak.xm
/packages/com.netskao.noappthinning_1.4_iphoneos-arm64.deb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Netskao/NoAppThinning/HEAD/packages/com.netskao.noappthinning_1.4_iphoneos-arm64.deb
--------------------------------------------------------------------------------
/layout/DEBIAN/postrm:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | echo "Reloading services..."
3 | launchctl kickstart -k system/com.apple.itunesstored
4 | killall -9 TestFlight
5 | echo "Reloaded services."
6 | exit 0
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | INSTALL_TARGET_PROCESSES = AppStore TestFlight
2 | ARCHS = arm64 arm64e
3 | TARGET = iphone:clang:latest:15.0
4 | include $(THEOS)/makefiles/common.mk
5 |
6 | TWEAK_NAME = NoAppThinning
7 | $(TWEAK_NAME)_FILES = Tweak.xm
8 |
9 | include $(THEOS_MAKE_PATH)/tweak.mk
10 |
--------------------------------------------------------------------------------
/layout/DEBIAN/control:
--------------------------------------------------------------------------------
1 | Package: com.netskao.noappthinning
2 | Conflicts: it.ned.noappthinning
3 | Name: NoAppThinning
4 | Version: 1.4
5 | Description: Disable AppStore app thinning - by level3tjg, Disable TestFlight app thinning - by Netskao
6 | Depends: firmware (>= 15.0), mobilesubstrate
7 | Architecture: iphoneos-arm
8 | Author: Netskao
9 | Maintainer: Netskao
10 | Section: Netskao-Tweaks
11 |
--------------------------------------------------------------------------------
/layout/DEBIAN/postinst:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | echo "Reloading services..."
3 | launchctl unload /System/Library/LaunchDaemons/com.apple.appstored.plist
4 | launchctl unload /System/Library/LaunchDaemons/com.apple.itunesstored.plist
5 | killall -9 TestFlight
6 | sleep 1
7 | launchctl load /System/Library/LaunchDaemons/com.apple.appstored.plist
8 | launchctl load /System/Library/LaunchDaemons/com.apple.itunesstored.plist
9 | echo "Reloaded services."
10 | exit 0
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # NoAppThinning
2 | Cydia tweak to disable App Store app thinning. This means that all architectures available for an app will be included when downloading it from the App Store. Warning: this will increase download size!
3 |
4 | No settings to configure and no respring needed. Only tested on iOS 15+.
5 |
6 | ## Installation
7 | You can install the `.deb` manually or get it at this Sileo repo: https://jailrepo.initnil.com
8 |
9 | ## Credits
10 | Credits: [level3tjg](https://twitter.com/level3tjg)
11 |
--------------------------------------------------------------------------------
/NoAppThinning.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Filter
6 |
7 | Bundles
8 |
9 | com.apple.AppStore
10 | com.apple.TestFlight
11 |
12 | Mode
13 | Any
14 | Executables
15 |
16 | itunesstored
17 | appstored
18 |
19 |
20 | SupportsRoot
21 | 1
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Tweak.xm:
--------------------------------------------------------------------------------
1 | /* Source: https://gist.github.com/level3tjg/813f7269a405b00203484382da18d3bf */
2 | /* Credits: level3tjg */
3 |
4 | #import
5 |
6 | static NSString *const kDeviceType = @"iPhone";
7 |
8 | %hook XDCDevice
9 | - (NSString *)productType {
10 | return kDeviceType;
11 | }
12 | %end
13 |
14 | %hook Device
15 | - (NSArray *)productVariants {
16 | return @[kDeviceType];
17 | }
18 | %end
19 |
20 | %hook SSDevice
21 | - (NSString *)productType {
22 | return kDeviceType;
23 | }
24 | - (NSString *)compatibleProductType {
25 | return kDeviceType;
26 | }
27 | %end
28 |
29 | %hook AMSDevice
30 | + (NSString *)productType {
31 | return kDeviceType;
32 | }
33 | + (NSString *)compatibleProductType {
34 | return kDeviceType;
35 | }
36 | + (NSString *)_lib_compatibleProductType {
37 | return kDeviceType;
38 | }
39 | %end
40 |
41 | // TestFlight Hooks
42 | static BOOL isRequestNewApp = NO;
43 |
44 | %hook TFCurrentDevice
45 | + (NSArray *)compatibleAppVariants {
46 | if (isRequestNewApp) return %orig;
47 | return @[kDeviceType];
48 | }
49 | %end
50 |
51 | // Flag to add a new application request
52 | %hook TFHallidayService
53 | - (void)requestAppForPublicLinkToken:(id)arg1 completion:(void (^)(id response, id error))completion {
54 | isRequestNewApp = YES;
55 | completion = ^(id response, id error) {
56 | if (!error) {
57 | isRequestNewApp = NO;
58 | }
59 | completion(response, error);
60 | };
61 | return %orig;
62 | }
63 |
64 | - (void)postAcceptPublicLinkWithToken:(id)arg1 completion:(void (^)(id response, id error))completion {
65 | isRequestNewApp = YES;
66 | completion = ^(id response, id error) {
67 | if (!error) {
68 | isRequestNewApp = NO;
69 | }
70 | completion(response, error);
71 | };
72 | return %orig;
73 | }
74 | %end
75 |
--------------------------------------------------------------------------------