Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
53f5c31
Add iloader (#163)
CelloSerenity Nov 10, 2025
1abcf39
Update instruction for placing pairing file
CelloSerenity Nov 11, 2025
b8f81d5
Translate new installation and prerequisites to German and delete
TNT-333 Nov 11, 2025
d712c5a
Add iloader IT translation (#164)
basketshoe Nov 11, 2025
f846514
Update install.mdx
CelloSerenity Nov 12, 2025
17f7ba2
Updated some Chinese simp translation with the newest doc, add contri…
Starbroke Nov 12, 2025
b4ec4c9
Merge branch 'users/celloserenity/iloader' of https://github.com/Side…
Starbroke Nov 12, 2025
e3f90f9
Fix punctuation in installation instructions
CelloSerenity Nov 12, 2025
0f9a1f4
remove old translation
se2crid Nov 12, 2025
aa4e6b0
swedish translation
se2crid Nov 12, 2025
c735aef
Refine todo list and add translation tasks
CelloSerenity Nov 12, 2025
bf332a3
remove altserver
CelloSerenity Nov 13, 2025
2fe5ee5
Fix paragraph
CelloSerenity Nov 13, 2025
6dacfae
Fix contributing link
CelloSerenity Nov 13, 2025
7d15a80
Translate pairing-file to German and update faq
TNT-333 Nov 13, 2025
46517c0
Update contributing page and jit page translation.
Nov 13, 2025
dee8d21
Merge branch 'users/celloserenity/iloader' of https://github.com/Side…
Nov 13, 2025
f142cfa
Update install.mdx
CelloSerenity Nov 12, 2025
34fdaf0
Update contributing page and jit page translation.
Nov 13, 2025
3643afd
Fix punctuation in installation instructions
CelloSerenity Nov 12, 2025
bc10977
remove old translation
se2crid Nov 12, 2025
9573cde
swedish translation
se2crid Nov 12, 2025
5eb84e4
Refine todo list and add translation tasks
CelloSerenity Nov 12, 2025
4bfaad5
remove altserver
CelloSerenity Nov 13, 2025
86ccf4b
Fix paragraph
CelloSerenity Nov 13, 2025
f9e958f
Fix contributing link
CelloSerenity Nov 13, 2025
099137e
Translate pairing-file to German and update faq
TNT-333 Nov 13, 2025
23acabb
Update Chinese simp formatting part.
Starbroke Nov 14, 2025
5abb72b
Merge branch 'users/celloserenity/iloader' of https://github.com/Side…
Starbroke Nov 14, 2025
2455eee
Updated troubleshooting pages.
Starbroke Nov 14, 2025
85eb892
Update troubleshooting.mdx
CelloSerenity Nov 14, 2025
064f2e6
Create alternative.mdx for outdated setup instructions
CelloSerenity Nov 14, 2025
e95ae01
Reorder items in Advanced category
CelloSerenity Nov 14, 2025
1b53e30
Enhance installation and pairing instructions for SideStore
CelloSerenity Nov 14, 2025
fa1f8e4
delete this for alternative
CelloSerenity Nov 14, 2025
fcaf239
Update alternative.mdx
CelloSerenity Nov 14, 2025
cd9a9ed
Update alternative.mdx
CelloSerenity Nov 14, 2025
4c89d2c
Update IT translation (#167)
basketshoe Nov 15, 2025
91bde5f
Update faq in french (the other guy didnt arrive yet)
incyada Nov 16, 2025
540e36b
Created install.mdx in french
incyada Nov 16, 2025
3b5f6b3
started translating install.mdx
incyada Nov 16, 2025
a4fcf44
mostly completed install.mdx
incyada Nov 16, 2025
cbd1901
fully translated and finished (may contain minor grammar errors)
incyada Nov 16, 2025
ac1736d
ACTUALLY fully translated (may contain minor grammar errors)
incyada Nov 16, 2025
00878a4
for real, ACTUALLY finished and fully translated (may contain minor g…
incyada Nov 16, 2025
a76d83a
Completed the initial simplified Chinese translation work.
Starbroke Nov 16, 2025
0b27221
Merge branch 'users/celloserenity/iloader' of https://github.com/Side…
Starbroke Nov 16, 2025
bf22b9d
Start NL
CelloSerenity Nov 16, 2025
7cf9c6e
Updated for iloader
incyada Nov 17, 2025
7956e8f
the cleansing of 25 (deleted uneeded french docs)
incyada Nov 17, 2025
729f851
Delete i18n/fr/docusaurus-plugin-content-docs/current/installation/ma…
incyada Nov 17, 2025
55db4a2
Delete i18n/fr/docusaurus-plugin-content-docs/current/installation/pa…
incyada Nov 17, 2025
261f655
Delete i18n/fr/docusaurus-plugin-content-docs/current/installation/po…
incyada Nov 17, 2025
6adbff5
cleansed all unnedded files for iloader
incyada Nov 17, 2025
ebd5613
Fix IT discord links and alternative.mdx YAML (#170)
basketshoe Nov 17, 2025
99d5401
Update common-issues.mdx
CelloSerenity Nov 17, 2025
df2629d
Update common-issues.mdx
CelloSerenity Nov 17, 2025
ed02b67
iloader terminology change
CelloSerenity Nov 17, 2025
c643f31
Update faq.mdx
CelloSerenity Nov 17, 2025
b70a7a8
Update troubleshooting.mdx
CelloSerenity Nov 17, 2025
6b0e608
Update faq.mdx
CelloSerenity Nov 17, 2025
771967c
Update troubleshooting.mdx
CelloSerenity Nov 17, 2025
e36e5cc
Merge branch 'SideStore:main' into iloader
CelloSerenity Nov 17, 2025
a881562
Update pairing file guide for clarity
CelloSerenity Nov 17, 2025
ad9082d
Update intro.mdx
CelloSerenity Nov 17, 2025
0e17720
Update faq.mdx
CelloSerenity Nov 17, 2025
638b422
Cleanup, iloader terminology, fix links (#173)
CelloSerenity Nov 17, 2025
98097c3
i18n(ko): update doc layout to match new English originals
seomin0610 Nov 19, 2025
41c94a9
update(translation): Korean
seomin0610 Nov 19, 2025
c1cf01b
Cleanup
CelloSerenity Nov 20, 2025
e5adb7a
update(translation): Korean
seomin0610 Nov 21, 2025
9b97656
update(translation): Korean
seomin0610 Nov 21, 2025
e9b5078
Update tutorial link and fix markdown formatting
CelloSerenity Nov 22, 2025
8f7e4f9
Update troubleshooting.mdx
CelloSerenity Nov 22, 2025
db505f1
Update link to troubleshooting guide
CelloSerenity Nov 22, 2025
48057bb
Update link to alternative guide
seomin0610 Nov 22, 2025
387e8b7
Update link to alternative guide(ko)
seomin0610 Nov 22, 2025
31e6ce0
Update link to troubleshooting guide
seomin0610 Nov 22, 2025
fd7e158
Update link to pairing-file guide
seomin0610 Nov 22, 2025
9e39726
Fix incorrect link to Troubleshooting page
seomin0610 Nov 22, 2025
1b50cc7
Fix multiple incorrect links in es translation
seomin0610 Nov 22, 2025
234b3b2
Merge branch 'iloader' into users/celloserenity/iloader
CelloSerenity Nov 24, 2025
46ee5cd
Users/celloserenity/iloader (#175)
CelloSerenity Nov 24, 2025
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
22 changes: 14 additions & 8 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
# Todo List for SideStore-Docs

[ ] Fix error codes and troubleshooting
- [ ] Error Codes and Troubleshooting cleanup

[X] Add details in faq about 3 app limit

[X] macOS Pairing File Instructions

[X] Linux Pairing File Instructions

[ ] SideJITServer Docs (start)
iloader translation:
- [X] EN
- [ ] ES
- [ ] FR (partial)
- [ ] DE (partial)
- [X] IT
- [ ] NL (partial)
- [X] ZH
- [ ] JA
- [ ] RU
- [X] KO
- [X] SV
- [ ] VI
184 changes: 184 additions & 0 deletions docs/advanced/alternative.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
---
title: Alternative/Outdated instructions
description: "A place for alternative/outdated SideStore setup instructions. Note: many of these walkthroughs may be incompatible with latest iOS or SideStore versions."
---

## Installation
### AltServer
#### macOS
Follow the instructions (steps 1-3) [here](https://faq.altstore.io/altstore-classic/how-to-install-altstore-macos) to setup AltServer
#### Windows
Follow the instructions (steps 1-3) [here](https://faq.altstore.io/altstore-classic/how-to-install-altstore-windows) to setup AltServer
#### Linux (Altcon)
Before you start, make sure to have installed usbmuxd.

1. Ensure you have usbmuxd installed and updated by running `sudo apt install -y usbmuxd` in the Linux terminal.
2. Install either Docker or Podman on your machine.
2. Plug in your secondary iDevice. If you recieve a prompt, select "trust" and enter your passcode.

3. Now, run Altcon with Docker or Podman using the following command (may require `sudo`):

Docker setup:
```bash
docker run --rm -it -v ${PWD}/:/mnt/ -v /var/run/usbmuxd:/var/run/usbmuxd -v /var/lib/lockdown:/tmp/lockdown ghcr.io/sidestore/altcon
```
Podman setup:
```bash
podman run --rm -it -v ${PWD}/:/mnt/ -v /var/run/usbmuxd:/var/run/usbmuxd -v /var/lib/lockdown:/tmp/lockdown ghcr.io/sidestore/altcon
```
5. Altcon will pair with your device. When you receive another prompt, select "trust" and enter your passcode again.

#### Setting up SideStore for multiple devices on the same account using AltServer
Steps:
1. Setup AltServer on macOS/Windows using instructions above
2. Install AltStore to one device using AltServer (We need AltStore once since it seems AltServer won't put machine identifier in apps other than AltStore)
3. Sign in Apple ID in AltStore
4. Export Certificate
5. Delete AltStore

Then for each device:
1. Install SideStore using AltServer with the same Apple ID (Hold [Option/Mac, Shift/Windows] when clicking AltServer -> Install IPA -> Select SideStore.ipa)
2. Import certificate
3. Sign in Apple ID in SideStore (We need to sign in after importing the certificate otherwise it won't let you sign in without revoking AltStore's certificate)
4. Sideload

When the old certificate expires:
1. SideStore will prompt to reinstall itself on one device
2. After reinstalling, export the certificate

Then for each other device:
1. Import new certificate
2. Sideload SideStore ipa from SideStore


## Pairing
### idevice_pair
#### Installation Instructions

##### macOS

1. Download [idevice pair for macOS](https://github.com/jkcoxson/idevice_pair/releases/latest/download/idevice_pair--macos-universal.dmg).
2. Open the Disk Image and drag `idevice pair` to `Applications`.

##### Windows

1. Ensure iTunes ([64-bit](https://apple.com/itunes/download/win64) or [32-bit](https://apple.com/itunes/download/win32)) is installed from from Apple's website (it should already be installed from the process of setting up AltServer).
2. Download [idevice pair for Windows](https://github.com/jkcoxson/idevice_pair/releases/latest/download/idevice_pair--windows-x86_64.exe) and move it somewhere you will remember it.

##### Linux

1. Ensure usbmuxd is installed on your machine by running `sudo apt install -y usbmuxd` in the Linux terminal.
2. Download the version of idevice_pair for Linux ([x86_64](https://github.com/jkcoxson/idevice_pair/releases/latest/download/idevice_pair--linux-x86_64.AppImage) or [AArch64](https://github.com/jkcoxson/idevice_pair/releases/latest/download/idevice_pair--linux-aarch64.AppImage)) which corresponds to your PC's architecture. Move it somewhere you will remember it, and make it executable.

#### Pairing Instructions

1. Connect your secondary device to your computer via cable. If a prompt appears, select `trust` and type in your passcode.
2. Unlock your device, then open `idevice pair` and select your device in the drop-down menu.
3. Ensure your device is unlocked and opened to the home screen, then select `load`. If a prompt appears on your device, tap `trust`. Your pairing file should appear.
4. Ensure your device is still open to the home screen, then scroll down and select `install` underneath "SideStore". `Success` should appear in green.

### JitterbugPair
JitterbugPair (*not* the Jitterbug app) allows us to create a pairing file for programs like SideStore to talk to your device remotely. This is required to use SideStore, or it will not function.

Download JitterbugPair for [Windows (64-bit)](https://github.com/osy/Jitterbug/releases/download/v1.3.1/jitterbugpair-win64.zip), [macOS](https://github.com/osy/Jitterbug/releases/download/v1.3.1/jitterbugpair-macos.zip), or [Linux](https://github.com/osy/Jitterbug/releases/download/v1.3.1/jitterbugpair-linux.zip).

#### Pairing Instructions

:::tip

Depending on your method, when transferring your .mobiledevicepariring file, the file extension might change (usually to .txt or cropping off the "ing"). It is always recommended to zip your pairing file before transferring it. SideStore only accepts .mobiledevicepairing files (or .plist files in older versions).
:::

##### Windows

1. **Extract** `jitterbugpair-win64.zip`.
2. **Set a passcode** for your device if you haven't already. Unlock your device and connect it to your computer via cable. If a prompt appears, tap "trust" and type in your passcode.
3. Open your device to the homescreen.
4. In File Explorer, locate `jitterbugpair.exe` and run it by double-clicking or right-clicking and selecting "open". The first time you run the tool, you will get a prompt for your passcode on your secondary device. Type it in, then keep the screen on and unlocked and run the tool again.
5. JitterbugPair will generate a **pairing file** in the same folder. This file will have the extension `.mobiledevicepairing`.
6. For best results, compress the file into a .zip folder. Then, **transfer the pairing file** to your iOS device using One/iCloud/Google Drive, email, or another method you prefer.

On Windows, you might have to execute the program using Command Prompt or Powershell, as double-clicking the `.exe` file doesn't always open it.

7. In File Explorer, navigate to the folder where jitterbugpair is located.
8. In the navigation bar where the folder location is, click an empty spot and type `powershell`. It should open a (possibly blue colored) window called PowerShell.
9. From there, type `./jitterbugpair.exe` and press enter while your device is plugged in.

##### macOS

1. **Extract** `jitterbugpair-macos.zip`.
2. **Set a passcode** for your device if you haven't already. Unlock your device and connect it to your computer via cable. If a prompt appears, tap "trust" and type in your passcode.
3. Open your device to the homescreen.
4. Find and open the extracted `jitterbugpair` file (it should have a black and green icon) by double-clicking it or right-clicking it and selecting "open". The first time you run the tool, you will get a prompt for your passcode on your secondary device. Type it in, then keep the screen on and unlocked and run the tool again.
5. If you get the message" "macOS cannot verify that this app is free from malware":
- Go to System Settings > Privacy & Security
- Scroll down to the message about the app
- Click "Open Anyway," if the program doesn't run automatically, try manually running it again
6. JitterbugPair will generate a **pairing file** with the extension `.mobiledevicepairing` to your user's home folder.
7. If you can't find the pairing file:
- Copy the name of the pairing file generated
- Paste it into Finder
- If you ran the program more than once, all pairing files for your device should appear since they share the same name
8. For best results, compress the file into a .zip folder. Then, **transfer the pairing file** to your iOS device via AirDrop, iCloud/One/Google Drive, email, or another method you prefer.

##### Linux

These instructions expect that you are familiar with the linux commandline.

1. **Extract** `jitterbugpair-linux.zip`.
2. Open a terminal in the extracted directory.
3. Make the program executable:
```bash
chmod +x ./jitterbugpair
```
4. **Set a passcode** for your device if you haven't already. Unlock your device and connect it to your computer via cable. If a prompt appears, tap "trust" and type in your passcode.
5. Open your device to the homescreen.
6. Execute the program:
```bash
./jitterbugpair
```
7. The first time you execute the tool, you will get a prompt for your passcode on your secondary device. Type it in, then keep the screen on and unlocked and run the tool again. Type it in, then keep the screen on and unlocked and execute the tool again.
8. JitterbugPair will generate a **pairing file** with the extension `.mobiledevicepairing`.
9. For best results, compress the file into a .zip folder. Then, **transfer the pairing file** to your iOS device using email, cloud storage, or another method you prefer.
## SideStore exploits
### SparseRestore (3-app limit)
:::note

The SparseRestore "Bypass 3 app limit" exploit **only works on iOS/iPadOS versions between 17.0 and 18.1 beta 4 (not including 17.7.1)**. If you are not on these versions and it doesn't work, **please do not ask for support on this**.

:::

#### Prerequisites
* An iDevice running versions supported by the SparseRestore exploit (see note above).
* At least 1 free app slot.
* SideStore version 0.5.9 or later. You can find the latest versions [here](https://github.com/SideStore/SideStore/releases).
* To perform this exploit, you MUST have **Find My** turned off on your iDevice during the process. It will not work otherwise. Here is how you can turn it off:
- Open the Settings app.
- Tap on your name at the top.
- Tap on Find My.
- Tap on Find My iPhone/iPad.
- Turn off Find My iPhone/iPad.
- You may be required to enter your Apple ID password to confirm.

> **Note:** You may still not be able to turn off Find My since having Stolen Device Protection on might prevent you from turning it off. Turn off Stolen Device Protection before trying to turn off Find My.

#### Steps
1. Install SparseBox. This can be done with a variety of methods, but for the purposes of this, install it with SideStore. The latest version can be found [here](https://nightly.link/khanhduytran0/SparseBox/workflows/build/main/artifact.zip) (unzip artifact.zip for the .ipa file).

2. Tick on "Disable App Limit" in SideStore, and make sure SideStore is **closed** (not in background), then open SparseBox.

3. Enable StosVPN, select your pairing file and tap 'Bypass 3-app limit'. This should bring up a log output. Wait for it to say `idevicebackup2 exited with code -18` or `idevicebackup2 exited with code 2`, then close the app. No need to hit apply.

4. Re-open SideStore, and scroll down in SideStore settings. Press "clear cache", this will allow the exploit to be seen by SideStore.

5. Test that the exploit has worked (you may need to install more than one app to test, depending on how many free slots you have). If it throws an error about the limit, reopen SideStore or retry the exploit. If it installs the app, congratulations! You can now have more than 3 apps installed at one time.

#### Notes
Due to certain limitations, this exploit must be done for every 3 additional apps you sideload.

If you want/need Find My for other purposes, you can now turn it back on. However, if you want to install or refresh more apps, you will need to turn it off again.

### MacDirtyCow (3-app limit)
[MDC-Compatible IPA](https://cdn.discordapp.com/attachments/949183273827983370/1074037820328521829/SideStore_MDC_14.ipa)

The MDC version of SideStore above (bypass 3-app limit) is only compatible with iOS 15.0-16.1.2, and is very outdated, and so you may experience issues. If you want to have this feature, we reccomend you join our Discord and go to the [sidestore-downloads](https://discord.com/channels/949183273383395328/1126118099930861638) channel, which will contain MDC compatible SideStore builds. Then, [seperately install WDBRemoveThreeAppLimit with SideStore](https://github.com/zhuowei/WDBRemoveThreeAppLimit/releases/tag/v1.0) to apply the patch.
12 changes: 7 additions & 5 deletions docs/advanced/jit.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,23 @@ description: A tutorial on how to enable Just-in-Time (JIT) Compilation for apps
---

:::note
iOS 26 has broken JIT once again. An update has been released to StikDebug with a fix, but support is **very** limited. As of writing (Sep 16), the only supported apps are:
iOS 26 has broken JIT once again. An update has been released to StikDebug with a fix, but support is limited. As of writing (Nov 10), the only supported apps are:
* UTM
* Amethyst
* MeloNX
* maciOS (not fully released)
* maciOS
* DolphiniOS (beta)
* Geode

Please keep an eye on our announcements channel in our Discord server and on the [idevice server](https://discord.gg/mACqxMxP3X)'s announcements and compatibility channels for further updates.

There are many methods to enabling JIT, such as AltJIT, SideJITServer, and more. This tutorial will cover the use of StikDebug (formerly StikJIT), as it is the method we currently recommend. For more information, consult the [official StikDebug pairing guide](https://github.com/StephenDev0/StikDebug-Guide/blob/main/pairing_file.md).
There are many methods to enabling JIT, depending on your iOS version. This tutorial will cover the use of StikDebug (formerly StikJIT), as it is the method we currently recommend. For more information, consult the [official StikDebug pairing guide](https://github.com/StephenDev0/StikDebug-Guide/blob/main/pairing_file.md).

As an alternative, SideStore 0.6.2 includes updates to minimuxer, allowing built-in JIT functionality similar to StikDebug. To use this, simply ensure you are connected to StosVPN with either Wi-Fi connected or Airplane Mode enabled, then navigate to "My Apps," longpress the app you wish to enable JIT for, and tap "enable JIT".
:::

## Prerequisites
* An iDevice running iOS/iPadOS 17.4-18.6, excluding 18.4b1. If you are on 17.0-17.3, you must use an alternative such as [SideJITServer](https://github.com/nythepegasus/SideJITServer). As stated above, versions newer than 18.6 are currently unsupported.
* An iDevice running iOS/iPadOS 17.4-all iOS 18 versions, excluding 18.4b1. If you are on 17.0-17.3, you must use an alternative such as [SideJITServer](https://github.com/nythepegasus/SideJITServer). SideStore's JIT enabler will only work on iOS 26 if your device is about 4+ years old (non-TXM capable).

## StikDebug installation with Apple App Store

Expand All @@ -37,7 +39,7 @@ As an alternative, SideStore 0.6.2 includes updates to minimuxer, allowing built
Open and close StikDebug to build the app's folder in files, then import the same **pairing file** you use for SideStore using idevice pair. For more information on this process, see [here](https://github.com/StephenDev0/StikDebug-Guide/blob/main/pairing_file.md).

2. **Mount the DDI:**
Open StikDebug with Wi-Fi and the VPN connected and the pairing file imported, then close it and reopen it. This mounts the DDI and must be performed every time you restart your idevice.
Open StikDebug with Wi-Fi and the VPN connected and the pairing file imported, then close it and reopen it. This mounts the DDI and must be performed every time you restart your iDevice.

## To enable JIT:

Expand Down
13 changes: 13 additions & 0 deletions docs/advanced/pairing-file.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Pairing File
description: A guide on manually reimporting your pairing file.
---
:::warning
Caution, if you update or reset your iDevice, your pairing file will expire and you will need to reimport it. This also occurs at random times. This is simply because of how Apple's software works, and there is nothing we can do at this point to fix it. This guide instructs you how to manually replace your pairing file with iloader.
:::

## Replacing your pairing file
1. Make sure you have followed the steps in the [install guide](../installation/prerequisites) to install and setup iloader and SideStore.
2. For best results, connect your iDevice to your computer via USB cable, but if your device only appears wirelessly, that should work too.
3. Click "Manage Pairing File"
4. To the right of "SideStore" and any other apps you wish, click "Place". "Pairing file placed successfully!" should appear in green.
43 changes: 0 additions & 43 deletions docs/advanced/sparserestore.mdx

This file was deleted.

Loading
Loading