Skip to content

Commit

Permalink
Merge pull request #934 from davidarice/docs-ios-install-update
Browse files Browse the repository at this point in the history
updated ios install docs
  • Loading branch information
fpscan authored Apr 7, 2024
2 parents a50647c + 3328828 commit 109aa89
Showing 1 changed file with 35 additions and 14 deletions.
49 changes: 35 additions & 14 deletions docs/guides/install-ios.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,40 +4,60 @@

## Prerequisites

RetroArch is not available on the App Store. Instead, you must sideload the app onto your devices. There are three ways of sideloading:
RetroArch is not available on the App Store. Instead, you must sideload the app onto your devices. There are 4 ways of sideloading:

* Jailbreaking, not something covered here;
* Using Xcode to build RetroArch from source, described [here](../development/retroarch/compilation/ios.md);
* Using a third party tool such as [AltStore](https://altstore.io/) that can install a built application by performing many of the same actions Xcode performs. That process is described below.
- Jailbreaking, not something covered here
- Build RetroArch from source using Xcode, as described [here](../development/retroarch/compilation/ios.md)
- Use Xcode with a developer account to load the IPA file directly, employing a signing tool like [iOS App Signer](https://www.iosappsigner.com/)
- Using a third party tool such as [AltStore](https://altstore.io/) that can install a built application by performing many of the same actions Xcode performs.

<!-- prettier-ignore -->
!!! Warning
RetroArch or Libretro is not affiliated with AltStore in any way. You can also use alternative applications that can do this function.
RetroArch or Libretro is not affiliated with AltStore or iOS App Signer in any way. You can also use alternative applications that can perform this function.

## Downloading

Download one of the following IPA files depending on your needs:

| | | |
---|---|---
| iOS 13+ | [Stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/apple/ios-arm64/RetroArch.ipa) | [Nightly](https://buildbot.libretro.com/nightly/apple/ios-arm64/RetroArch.ipa) |
| iOS 9+ (reduced feature set; may not work on newer devices) | [Stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/apple/ios9/RetroArchiOS9.ipa) | [Nightly](https://buildbot.libretro.com/nightly/apple/ios9/RetroArchiOS9.ipa) |
| tvOS 11+ | [Stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/apple/tvos-arm64/RetroArchTV.ipa) | [Nightly](https://buildbot.libretro.com/nightly/apple/tvos-arm64/RetroArchTV.ipa) |
| | | |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| iOS 13+ | [Stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/apple/ios-arm64/RetroArch.ipa) | [Nightly](https://buildbot.libretro.com/nightly/apple/ios-arm64/RetroArch.ipa) |
| iOS 9+ (reduced feature set; may not work on newer devices) | [Stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/apple/ios9/RetroArchiOS9.ipa) | [Nightly](https://buildbot.libretro.com/nightly/apple/ios9/RetroArchiOS9.ipa) |
| tvOS 11+ | [Stable](https://buildbot.libretro.com/stable/{{ unit.stable }}/apple/tvos-arm64/RetroArchTV.ipa) | [Nightly](https://buildbot.libretro.com/nightly/apple/tvos-arm64/RetroArchTV.ipa) |

Most people should start with the Stable build. The Nightly build contains the latest commits available on GitHub, and the latest enhancements and features that are added daily. The Nightly build may not be as stable as the Stable version.

It is possible to build RetroArch for older versions of iOS, though due to resource constraints these are not provided. See the [instructions for building iOS](/development/retroarch/compilation/ios/) to build it yourself.

## Installation for non-Jailbreak devices

In order to install the RetroArch on your non-Jailbreak device, we need to use a third-party application. The steps below describe using AltStore, which is not associated with LibRetro or RetroArch. You need to provide AltStore yourself.
In order to install the RetroArch on your non-Jailbreak device, we need to use a third-party application.

You cannot add or update cores after installation as they are signed executables and can only be updated by updating and resigning the entire application. The IPA files linked above contain [all of the available iOS/tvOS cores](https://buildbot.libretro.com/nightly/apple/ios/latest/).

## Sideloading Options

- [iOS App Signer](#ios-app-signer)
- [AltStore](#altstore)

## iOS App Signer

1. Download and launch iOS App Signer, and add the downloaded `.ipa` file.
2. Use an existing Apple Development certificate or sign up for a free or paid developer account.
3. Ensure your device is registered. Refer to [link](https://developer.apple.com/help/account/register-devices/register-a-single-device) for details.
4. Create a provisioning profile for your device. Follow these [instructions](https://developer.apple.com/help/account/manage-profiles/create-a-development-provisioning-profile).
5. Use reverse-domain formatting, e.g., `com.myname.retroArch` (replace 'myname' with your name).
6. Click start and save the new `.ipa` file.
7. Open Xcode, go to `Window -> Devices and Simulators`, and select your device.
8. In the right pane under 'INSTALLED APPS,' either drag and drop the new `.ipa` file or click '+' to navigate to the file.

## AltStore

1. Install and launch AltServer.
1. Hold Option (macOS) or Left Shift (Windows) when clicking the AltServer icon to reveal new "Sideload .ipa…" menu option
1. Select the device you want to install RetroArch on (must be on the same Wi-Fi network as AltServer)
1. Enter the email and password for your Apple ID

You cannot add or update cores after installation as they are signed executables and can only be updated by updating and resigning the entire application. The IPA files linked above contain [all of the available iOS/tvOS cores](https://buildbot.libretro.com/nightly/apple/ios/latest/).

## Using RetroArch

On an iOS device, you'll be presented with a touch interface. If you have an mFi controller, you can control the interface that way as well.
Expand All @@ -64,8 +84,9 @@ The RetroArch app is sandboxed and does not have access to iCloud. The easiest w

RetroArch on tvOS has a built-in webserver. While RetroArch is running, open a browser on your computer and open the URL that RetroArch displays. You can use the web-based UI to create subdirectories and upload or download files.

<!-- prettier-ignore -->
!!! Warning
tvOS does not provide apps with a persistant storage area; instead it allows for up to 500kb meant for configuration data. The disk space shown through the web UI is a cache space. If the OS needs to reclaim disk space, it will delete files from that cache space without warning. This includes state and saves! When this happens, you will immediately see that the appearance of RetroArch is wrong, as the assets will need to be re-downloaded.
tvOS does not provide apps with a persistant storage area; instead it allows for up to 500kb meant for configuration data. The disk space shown through the web UI is a cache space. If the OS needs to reclaim disk space, it will delete files from that cache space without warning. This includes state and saves! When this happens, you will immediately see that the appearance of RetroArch is wrong, as the assets will need to be re-downloaded.

## JIT

Expand Down

0 comments on commit 109aa89

Please sign in to comment.