Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 14 additions & 39 deletions markdown/wiki/faq/ios/JIT.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,56 +7,31 @@ On Apple's mobile platforms (iOS, iPadOS, and _tvOS*_ in our case), a security f

(*) - tvOS support coming soon!

## What does this mean for PojavLauncher?
## What does this mean for Amethyst?

### Jailbroken devices
Users with Jailbroken devices don't need to worry about JIT requirements, as PojavLauncher is specially built to detect jailbreaks and automatically enable JIT.
Users with Jailbroken devices don't need to worry about JIT requirements, as Amethyst is specially built to detect jailbreaks and automatically enable JIT.

### Unjailbroken devices
Users with Unjailbroken devices can see two different outcomes, based on what they used to sideload PojavLauncher.
### Jailed devices
Users with jailed (unjailbroken) devices can see two different outcomes, based on what they used to sideload Amethyst.

#### TrollStore
If you used TrollStore to sideload PojavLauncher, good news: PojavLauncher takes advantage of the extended entitlements granted by TrollStore and automatically enables JIT when launched. **(Turn on URL Schemes)**
If you used TrollStore to sideload Amethyst, good news: Amethyst takes advantage of the extended entitlements granted by TrollStore and automatically enables JIT when launched. **(Turn on URL Schemes)**

#### Normal sideload
If you sideload normally, you will need to enable JIT in some way. The most common method is to attach a debug server to the application while it's running - AltStore, SideStore, StikDebug, SideJITServer, and Jitterbug all use this method to enable JIT.

The only downside to this method is that you are often required to be connected to a Wi-Fi network in order to enable JIT.
The only downside to this method is that you are often required to be connected to a Wi-Fi network or computer in order to enable JIT.

## What are the methods to enable JIT?

The methods to enable JIT for each iOS version can be found [here](https://github.com/C4ndyF1sh/iOS-JIT-Enablers).
A list of methods and walkthrough to enable JIT for each iOS version can be found [here](https://github.com/C4ndyF1sh/iOS-JIT-Enablers). Additionally, a guide to enabling JIT for Amethyst on iOS 17.4+ follows.

Methods not listed underneath are not confirmed nor recommended by us for use with PojavLauncher.
## Enabling JIT for iOS 17.4+ (Jailed):

## So how do I enable JIT?

- [TrollStore Lite](https://havoc.app/package/trollstorelite) (!)

- [TrollStore](https://ios.cfw.guide/installing-trollstore) (@)

- [AltStore AltJIT](https://faq.altstore.io/how-to-use-altstore/altjit) (#)

- [Jitterbug](https://github.com/osy/Jitterbug/tree/main/Jitterbug) ($)

- [SideStore](https://docs.sidestore.io/docs/faq#can-i-activate-jit) ($), [nightly](https://github.com/SideStore/SideStore/releases/nightly) (^)

- [SideJITServer](https://github.com/nythepegasus/SideJITServer) (%)

- [StikDebug](https://github.com/StephenDev0/StikDebug) (^)

(!) - Limited to Jailbroken devices only. (JIT is granted by the Jailbreak itself)

(@) - Limited to devices with the CoreTrust bug. (iOS 14.0 - iOS 16.7 RC & iOS 17.0)

(#) - AltJIT for iOS 17.0.1+ betas only works on macOS. Requires pymobiledevice3.

($) - Does not work for iOS 17.0.1+, as enabling JIT will be done with pymobiledevice3.

(%) - Does not work for iOS 16.x or below, use the other methods listed above to enable JIT. This method is meant for iOS 17.0.1+

(^) - iOS 17.4+ Only

## Methods coming Soon:

- UTM SE (^)
1. Sideload Angel Aura Amethyst with the `get-task-allow` entitlement. A walkthrough to installing Amethyst with SideStore can be found [here](/getting-started/INSTALL.md).
2. Add the StikDebug Source to SideStore by [tapping here](https://intradeus.github.io/http-protocol-redirector?r=sidestore://source?url=https://stikdebug.xyz/index.json) on your iOS device. Install StikDebug from the source.
3. Set up StikDebug by following the [pairing file guide](https://github.com/StephenDev0/StikDebug-Guide/blob/main/pairing_file.md).
4. Navigate to StikDebug → Settings. If the bottom of the page shows "TXM" instead of "Non-TXM", toggle "Picture in Picture" and "Always Run Scripts" on.
5. On your iOS/iPadOS device, connect to a Wi-Fi network or enable Airplane Mode, then open StikDebug, select "Connect by App", and select Amethyst. If a picture in picture window appears, keep it open until prompted. You must repeat this step every time you open Amethyst after a decent amount of time.
6. Congrats, you have successfully enabled JIT for Amethyst. You can now reenable Cellular Data if you wish.
36 changes: 23 additions & 13 deletions markdown/wiki/getting_started/INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ Google Play is currently unavailable. Sorry! Try one of the methods above!
Instructions for installing Amethyst on Apple devices.

::: details Sideloading (TrollStore)
We recommend TrollStore for all users if possible. This method allows for automatic JIT enabling, more memory allocation, and non-revoking installs.
We recommend TrollStore for all users if possible. This method allows for automatic JIT enabling, more memory allocation, and non-revoking installs. If your device/iOS version doesn't support TrollStore, go to "Sideloading (Jailed)".

Note: **Enable URL Schemes in TrollStore settings: TrollStore -> Settings -> Scroll Down -> Enable URLScheme > Rebuild Icons Cache**

Expand Down Expand Up @@ -76,24 +76,34 @@ Note: **Enable URL Schemes in TrollStore settings: TrollStore -> Settings -> Scr

You can now enjoy Minecraft: Java Edition on your iDevice!
:::
::: warning
Everything below are outdated instructions. Please avoid using them.
:::
<!-- TODO: fix the rest of IOS i am not touching sidestore shit :sob: -->

::: details Sideloading (Jailed)
**Requires an active Apple ID, that has signed into the [Apple Developer Program](https://developer.apple.com/account).**
**Requires an active Apple Account that has signed into the [Apple Developer Program](https://developer.apple.com/account).**

Amethyst supports being sideloaded with AltStore and SideStore. Instructions to use SideStore are below--for other options, refer to their documentation.

1. Follow the official guide on installing SideStore itself (requies the one-time use of a computer):
- [SideStore Documentation](https://docs.sidestore.io/docs/installation/prerequisites).

2. Add the Amethyst AltSource to SideStore [here](https://intradeus.github.io/http-protocol-redirector?r=sidestore://source?url=https://alt.crystall1ne.dev). Alternatively, install the .ipa to SideStore [directly](https://intradeus.github.io/http-protocol-redirector/?r=sidestore://install?url=https://ci.angelauramc.dev/job/Amethyst-iOS/lastSuccessfulBuild/artifact/artifacts/org.angelauramc.amethyst-1.0-ios.ipa). Install Amethyst to SideStore to register the App ID. Expect to encounter bugs! Install it via SideStore using the "+" button on the "Apps" page.

PojavLauncher supports being sideloaded with AltStore and SideStore. Instructions to use SideStore are below--for other options, refer to their documentation.
3. GetMoreRam increases the memory limit imposed by iOS/iPadOS on sideloaded apps, and is required to run Amethyst. Complete the following steps to set it up:
- Install the GetMoreRam .ipa to SideStore [here](https://intradeus.github.io/http-protocol-redirector?r=sidestore://install?url=https://github.com/hugeBlack/GetMoreRam/releases/download/nightly/Entitlement.ipa).
- Install Entitlement.ipa via SideStore. Open GetMoreRam, navigate to Settings and select "Sign In". Use your Apple Account credentials to log in. (If the app crashes, just try again.)
- Navigate to "App IDs" and select "Refresh". Select the App ID including "amethyst", then select "Add Increased Memory Limit".
- If a bunch of text appears underneath with no mention of an error, you did it correctly. Now, you can delete GetMoreRam.

1. Follow the official guide on installing AltStore itself:
- Instructions for [Mac](https://docs.sidestore.io/docs/getting-started/mac) and [Windows](https://docs.sidestore.io/docs/getting-started/windows)

2. Install the latest release using this [Install with SideStore](sidestore://install?url=https://github.com/PojavLauncherTeam/PojavLauncher_iOS/releases/latest/download/net.kdt.pojavlauncher.ipa) button.
- For a specific release, you can find its button on the [Releases](https://github.com/PojavLauncherTeam/PojavLauncher_iOS/releases) page
5. Reinstall the latest Amethyst build from [here](https://intradeus.github.io/http-protocol-redirector/?r=sidestore://install?url=https://ci.angelauramc.dev/job/Amethyst-iOS/lastSuccessfulBuild/artifact/artifacts/org.angelauramc.amethyst-1.0-ios.ipa) as if you are updating the app (you don't need to delete it first) so the memory entitlement takes effect. (Note: If your Amethyst expires you will need to repeat the last two steps).

Installing PojavLauncher is not the end for Jailed iOS devices. In order to play Minecraft itself, you will need to [enable JIT](../faq/ios/JIT.md).
Installing Amethyst is not the end for Jailed iOS devices. In order to play Minecraft itself, you will need to [enable JIT](../faq/ios/JIT.md).
:::

::: warning
All boxes below include outdated instructions. Please avoid using them.
:::
<!-- TODO: fix the rest of iOS -->


::: details Sideloading (Jailbroken)
**Currently, AppSync Unified is not supported.** There is an [issue](https://github.com/akemin-dayo/AppSync/issues/108) regarding the data directory when installed with AppSync.

Expand Down