With Apple removing the Pebble app from the app store in October of 2021, people with iPhones have had to deal with sideloading it to their phone. Barring a few outdated methods, the easiest way to get the Pebble app installed on modern versions of iOS is using [SideStore](https://sidestore.io/), a fork of AltStore/AltServer that can run without being tethered to a computer (after the initial installation process of SideStore). >[!tip] > This guide assumes you are using an iOS version that is incompatible with TrollStore. If you are on an iOS version which supports TrollStore (14.0 beta 2 - 16.6.1, 16.7 RC (20H18), 17.0), I highly recommend you use that instead as it is far less finicky than the alternatives. > > The process for that is documented [here](https://ios.cfw.guide/installing-trollstore/) (I do not have a device to test TrollStore on, so I can't say for if these steps are accurate). >[!info] For my friends in the European Union >You may have success using [AltStore PAL](https://altstore.io/) (or read their [announcement post](https://rileytestut.com/blog/2024/04/17/introducing-altstore-pal/)), I am in the United States (🫠), so I can't test it. # Installing SideStore I would try to document this process but it would instantly become outdated and basically just be plagiarized from SideStore's docs. As a result, please reference [SideStore's installation instructions](https://sidestore.io/#get-started). # Getting the Pebble IPA and Patching It Rebble provides several IPAs depending on which iPhone you have. For the purposes of this guide, we are going to start with the [64-bit Pebble IPA provided to Rebble by Doakyz](https://kennedn.com/com.getpebble.pebbletime-iPhone13.ipa). Now is the fun part, if we're using an iPhone newer than the 13, we'll have to patch the Pebble IPA. I came across this process thanks to [u/sabre31](https://www.reddit.com/r/pebble/comments/1akjzyk/comment/kpbwafu/) on the Pebble reddit. Procedure 1. Rename the IPA file to `com.getpebble.pebbletime-iPhone13.zip` 2. Extract the zip file, then open the extracted files up 3. Go to `Payload` -> `PebbleTime.app` -> and open `Info.plist` with the text editor of your choice. 4. Inside that file `Ctrl+F` / `Command+F` for `UISupportedDevices` You should see something like this: ```xml <key>UISupportedDevices</key>     <array>         <string>iPhone14,5</string>         <string>iPhone14,4</string>         <string>iPhone14,3</string>         <string>iPhone14,2</string>         ... (trimmed for brevity)         <string>iPod7,1</string>         <string>iPod9,1</string>     </array> ``` We'll need to add the ID of our device into this list. As of writing these are the iPhones that are not on the list: | iPhone Model | Device Identifier | | ------------------- | ----------------- | | iPhone SE (3rd Gen) | `iPhone14,6` | | iPhone 14 | `iPhone14,7` | | iPhone 14 Plus | `iPhone14,8` | | iPhone 14 Pro | `iPhone15,2` | | iPhone 14 Pro Max | `iPhone15,3` | | iPhone 15 | `iPhone15,4` | | iPhone 15 Plus | `iPhone15,5` | | iPhone 15 Pro | `iPhone16,1` | | iPhone 15 Pro Max | `iPhone16,2` | | iPhone 16 Pro | `iPhone17,1` | | iPhone 16 Pro Max | `iPhone17,2` | | iPhone 16 | `iPhone17,3` | | iPhone 16 Plus | `iPhone17,4` | | iPhone 16e | `iPhone17,5` | If your device is not listed in the above, you can either Google it, or check to see if [this list](https://gist.github.com/adamawolf/3048717) contains it. Since I have an iPhone 15 Pro Max, I would need to copy `iPhone16,2` from the above list and add it to the `Info.plist` like so: ```xml <key>UISupportedDevices</key>     <array>         <string>iPhone16,2</string> <!-- Add this -->         <string>iPhone14,5</string>         <string>iPhone14,4</string>         <string>iPhone14,3</string>         <string>iPhone14,2</string>         ... (trimmed for brevity)         <string>iPod7,1</string>         <string>iPod9,1</string>     </array> ``` 5. Now we'll save the `Info.plist` file and exit. 6. Go back so you're looking at the `Payload` folder from before. 7. ZIP up the `Payload` folder. 8. Rename the zip file from `Payload.zip` to something memorable like `Pebble-patched.ipa` >[!danger] Do not forget to replace the `.zip` extension with `.ipa`! # Sideloading our patched IPA Now, back to our phones. 1. Copy the patched Pebble IPA to your phone. - If you download it with Safari, it will go to your downloads folder by default. 2. Make sure the VPN for SideStore is enabled, then open up the app. 3. Go to the `My Apps` tab at the bottom. 4. In the top left corner of your screen, click the + plus symbol. 5. Navigate to wherever you saved your `.ipa` file and select it. 6. SideStore will likely prompt you with something along the lines of the following: `Would you like to revoke your previous certificates` Yes/No, select `Yes`. That should be everything, now you can head over to Rebble's how-to guide to reenable webservices for the Pebble app: https://rebble.io/howto/ If you leave the SideStore VPN connected and the app open in the background, it will automatically try to refresh your apps. I've also created a [shortcut](https://www.icloud.com/shortcuts/27b9a27cc5c44d78b9bbf8cc34c6bf23) on my phone that's scheduled to run every night. --- If you encounter any issues, feel free to join the [Rebble Alliance Discord](https://rebble.io/discord) and ask for help. There are lots of super knowledgeable people there (including myself!) who should be able to help. Feel free to open up a thread in \#rebble-help and ping me @Sidpatchy and I'll pop in whenever I get a moment to assist. #pebble #iOS