iloader: Install SideStore and manage iOS pairing files
A Tauri desktop tool for iOS sideloading that installs SideStore and manages IPAs, certificates, and pairing files.
GitHub nab138/iloader Updated 2026-09-12 Branch main Stars 2.9K Forks 203
TypeScript Rust iOS sideloading SideStore Tauri Windows/macOS/Linux/NixOS

🧭 Decision Guide

Try it if you

  • You need to install SideStore on Windows, macOS, or Linux and want pairing files imported automatically.
    The README's “How to use” and “Features” sections list SideStore installation, certificate import, and automatic placement of rppairing+lockdown pairing files.
  • You need to import any IPA or view and revoke development certificates and app IDs.
    The README's “Features” section explicitly lists “Import any IPA” and “See and revoke development certificates & app ids”.
  • You use NixOS and want to install iloader through a flake.
    The README's “How to use” section states “NixOS: Use the flake github:nab138/iloader”.

Skip it if you

  • Your environment cannot provide usbmuxd, iTunes, or a usable connection to an Apple device.
    The README's “How to use” section requires usbmuxd; for Windows it specifies iTunes and also requires “Plug in your iDevice to your computer”.
  • You do not want a desktop tool to use Apple ID sign-in.
    The README's “How to use” section explicitly requires “Sign into your Apple ID”.
  • You need a specific iOS version or device compatibility matrix confirmed by the README.
    The README's installation, Features, and Future Plans sections do not list iOS versions or a device support matrix.

Requirements

  • Install usbmuxd for your platform
  • Windows: iTunes
  • macOS: Included
  • Linux: Potentially included, if not, install via your package manager
  • Install the latest version for your platform from the releases
  • NixOS: Use the flake github:nab138/iloader
  • Plug in your iDevice to your computer
  • Sign into your Apple ID

First step (verbatim from README)

Install usbmuxd for your platform

Watch out

  • Do not download from sources other than the iloader.app site, GitHub repository, and releases.
    The README's official distribution notice says only the repository and iloader.app are official channels and warns against other websites.
  • If logs are empty, change the log level to Debug in View Logs.
    The README's “Troubleshooting” section explicitly mentions “View Logs” and the “Debug” log level.
  • Windows, macOS, and Linux use different log directories, so check the path for the relevant platform.
    The README's “Troubleshooting” section lists separate %APPDATA%, ~/Library/Application Support, and ~/.local/share paths.
  • Building from source requires bun or Node.js and Rust; the hot-reload command is bun tauri dev.
    The README's “Building from source” section lists bun, Node.js, Rust, and bun tauri dev.

Alternatives

  • Homebrew cask:Better when you prefer installing software with Homebrew on macOS; the README explicitly marks this cask as unofficial and community-maintained.
    The README's opening official distribution notice
  • AUR package iloader-bin:Better when you prefer obtaining software through the AUR on Arch Linux; the README explicitly marks this package as unofficial.
    The README's opening official distribution notice
  • Fedora COPR repository:Better when you prefer using a COPR repository on Fedora; the README explicitly marks this repository as unofficial and community-maintained.
    The README's opening official distribution notice

Not stated in the README

  • The README does not specify supported iOS versions, device models, or system-version ranges.
  • The README does not explain how Apple ID credentials are stored, whether they are uploaded, or whether two-factor authentication is supported.
  • The README does not define the boundaries for IPA installation failures, certificate validity, or Apple service limits.
  • The README does not provide minimum versions for Windows, macOS, Linux, or NixOS.
  • The README does not explain whether IPA installation beyond SideStore requires additional configuration.
  • The release information shows v2.3.3 as the latest of 5 releases but does not describe compatibility changes between versions.

💡 Deep Analysis

6
Yes I want to improve Chinese in iloader or add a language not yet supported by the README. I only plan to edit localization JSON and language-registration code, not Rust. Is the project’s contribution path suitable?
For: A localization contributor familiar with JSON and TypeScript who wants to add a language already relevant to iloader’s README

Yes, because the README confines localization work to the language list and src/locales JSON files, so changing Rust device logic is normally unnecessary.

  • The Translating section says that editing an existing language means submitting a PR modifying src/locales/.json.
  • For a new language, it requires registering the language in the languages array in src/i18next.ts, copying en.json into a new localization file, and updating the strings.
  • The README lists contributors for both Simplified and Traditional Chinese, showing that Chinese localization is already within the project’s contribution scope.
  • Project data identifies TypeScript as the main language, so a TypeScript language-registration file matches the repository structure.

This path fits translation and proofreading work, but the README does not describe localization tests, format validation, missing-key behavior, or review rules.

  • Translating: To update/edit an existing language, make a PR modifying `src/locales/.json`
  • Translating: To add a new language, add your language to `src/i18next.ts`
  • Translators: Traditional & Simplified Chinese (zh_tw & zh_cn)
  • Project data: main_language is TypeScript
Not stated in the README:The README does not specify filename validation, translation-key completeness checks, or CI requirements.;The README does not say whether adding a language also requires updating packaged resources or configuration beyond the in-app language selector.
Yes I mainly work with TypeScript but can also maintain Rust. I want to modify iloader’s desktop UI and device-interaction logic, then produce a Tauri production package locally. Is the build path in the README sufficient?
For: An open-source contributor familiar with TypeScript, Rust, and Tauri who wants to modify iloader locally and produce a production build

Yes, because the README provides a source-build path using Bun or Node.js together with Rust/Tauri, including separate development and production commands.

  • Project data lists TypeScript as the main language and also includes Rust, CSS, Nix, and HTML, matching a frontend UI plus Rust-native logic structure.
  • Building from source requires Bun (or Node.js) and Rust, followed by cloning the repository and entering its directory.
  • Dependency installation supports Bun or npm; the README provides a hot-reload development command and a separate production-build command.
  • The MIT License lowers the barrier to studying, modifying, and redistributing the source. However, the project insights identify separate restrictions for branding, names, and media assets, so those assets should not automatically be treated as MIT-licensed.

The path is sufficient for contribution and local builds, but cross-platform packaging, signing, and release procedures are not documented in detail.

  • Project data: main_language is TypeScript; language_distribution includes Rust, CSS, Nix, and HTML
  • Building from source: Install bun (or Node.js) and Rust
  • Building from source: Run `bun i` (or `npm i`)
  • Building from source: `bun tauri dev`; `bun tauri build`
  • Project data: MIT License
bun i
Not stated in the README:The README does not specify minimum versions for Bun, Node.js, Rust, or Tauri.;The README does not specify platform-specific SDKs, code-signing requirements, or installer formats for production builds.
Yes I only have a Windows PC and an iPhone. I want to install SideStore, or LiveContainer plus SideStore, without separately handling pairing files, certificates, and IPAs. Is iloader suitable for me?
For: A personal sideloading user on Windows with an iPhone who wants to install SideStore or LiveContainer without operating command-line tools directly

Yes, because the README puts Windows setup, Apple ID login, SideStore installation, and pairing-file import into one desktop workflow.

  • On Windows, iTunes is required because the README names it as the usbmuxd dependency.
  • The feature list says iloader can install SideStore, or LiveContainer plus SideStore, while automatically importing the certificate and placing rppairing and lockdown pairing files.
  • The documented flow is to connect the iDevice, open the app, sign in with an Apple ID, and select an action; it does not require manually running low-level communication commands.
  • If installation fails, logs are available through “View Logs,” and the README says to change the log level to “Debug” if nothing appears.

It still depends on Apple account, certificate, App ID, signing-validity, and device conditions, so success is not guaranteed for every iPhone combination.

  • How to use: Windows: iTunes
  • Features: Install SideStore (or LiveContainer + SideStore), import certificate and place rppairing+lockdown pairing files automatically
  • How to use: Plug in your iDevice to your computer; Open the app; Sign into your Apple ID; Select your action
Not stated in the README:The README does not specify supported Windows versions, iOS versions, or iPhone model ranges.;The README does not state which iTunes version is required or whether only Apple’s official build is supported.
It depends I connect an iPad on macOS, where device communication is included. When SideStore installation fails, I want to use in-app error suggestions and logs to determine whether the issue is pairing, certificates, or the Apple ID. Does iloader support this troubleshooting flow?
For: A macOS user managing SideStore sideloading on one iPad who needs to diagnose failures involving Apple ID, certificates, and device communication

It depends: iloader provides common-error suggestions and log access, but the README does not promise coverage for every Apple service, account, OS version, or device combination.

  • The usage section says usbmuxd is included on macOS, avoiding the extra dependency installation described for Windows and potentially for Linux.
  • Features include intelligent error suggestions and the ability to view and revoke development certificates and app IDs, which can help distinguish some account and signing problems.
  • Troubleshooting says to use “View Logs” first and change the log level to “Debug” if nothing is shown. macOS logs are stored at ~/Library/Application Support/me.nabdev.iloader/logs/.
  • The device still needs to be connected, unlocked, and trusted, and the user must sign in with an Apple ID; error suggestions do not replace those prerequisites.

It is therefore suitable as the first diagnostic interface, but complex Apple-service or compatibility issues may still require the full error message in the idevice Discord or a GitHub issue.

  • How to use: macOS: Included
  • Features: Intelligent error suggestions to help resolve common issues
  • Features: See and revoke development certificates & app ids
  • Troubleshooting: View Logs; change the log level to Debug
  • Troubleshooting: macOS: `~/Library/Application Support/me.nabdev.iloader/logs/`
Not stated in the README:The README does not specify which Apple ID, certificate, pairing, or OS combinations are covered by the error suggestions.;The README does not state whether the application can directly identify an untrusted device, a locked device, or developer-mode status.
It depends I do more than install SideStore: I need to import arbitrary IPAs and view or revoke developer certificates and App IDs. I also know IPAs may have their own entitlements and system requirements. Does iloader cover this workflow?
For: A SideStore user who needs to sideload arbitrary IPAs while managing developer certificates and App IDs

It depends: iloader covers importing and account-resource management, but it does not solve signing, entitlements, or target-system compatibility for every IPA.

  • The Features section explicitly lists “Import any IPA,” so its scope is not limited to SideStore initialization.
  • The same section supports viewing and revoking development certificates and app IDs, reducing the need to switch tools.
  • The usage flow requires a connected iDevice and an Apple ID login, so it depends on a real device and account environment rather than offline IPA processing.
  • The project insights state that an IPA’s signing state, permissions, entitlements, dependencies, and target-system compatibility remain subject to the app and Apple’s platform conditions.

Thus, it fits a unified sideload workflow, but not an expectation that Apple certificate, App ID, or signing restrictions will be bypassed.

  • Features: Import any IPA
  • Features: See and revoke development certificates & app ids
  • How to use: Plug in your iDevice to your computer; Sign into your Apple ID
  • Project insights, usage_limitations: An IPA’s signing state, permissions, entitlements, dependencies, and target-system compatibility remain subject to the app and Apple’s platform conditions
Not stated in the README:The README does not list a maximum IPA size, specific signing parameters, or whether entitlements can be modified.;The README does not specify limits for Apple ID types, multiple teams, or particular developer-certificate classes.
It depends I use an iPhone on NixOS. Besides installing IPAs, I need to provide pairing files to StikDebug, SideStore, and Protokolle. Can I use iloader as a unified pairing-file manager?
For: A technical user on Linux or NixOS who connects an iPhone and needs to manage pairing files for StikDebug, SideStore, and Protokolle

It depends: the feature target matches, but NixOS usbmuxd, permission rules, and device access can still block the workflow.

  • The README explicitly says pairing files can be managed for apps such as StikDebug, SideStore, and Protokolle.
  • NixOS users can use the flake github:nab138/iloader, showing that the project provides a deployment path for that distribution.
  • On Linux, usbmuxd may already be present; otherwise it must be installed through the package manager. The README does not configure permissions or services for the user.
  • Logs are stored at ~/.local/share/me.nabdev.iloader/logs/, which can help investigate device discovery or pairing failures.

Therefore, iloader is suitable as a unified entry point once the system can access the iPhone. It does not automatically remove usbmuxd service or permission problems.

  • Features: Manage pairing files in apps like StikDebug, SideStore, Protokolle, etc
  • How to use: NixOS: Use the flake `github:nab138/iloader`
  • How to use: Linux: Potentially included, if not, install via your package manager
  • Troubleshooting: Linux: `~/.local/share/me.nabdev.iloader/logs/`
Not stated in the README:The README does not specify a NixOS version, device permission rules, udev configuration, or usbmuxd service-unit requirements.;The README does not describe device-driver compatibility across Linux distributions.

✨ Highlights

  • Automatically imports SideStore pairing files and certificates
  • Supports arbitrary IPA imports and development certificate management
  • Tauri desktop app supports Windows, macOS, and Linux
  • Requires usbmuxd and Apple ID sign-in

🔧 Engineering

  • Installs SideStore or LiveContainer and places pairing files automatically
  • Imports any IPA and manages pairing files for apps such as StikDebug
  • Views and revokes development certificates and App IDs with error suggestions

⚠️ Risks

  • Windows requires iTunes; Linux may still need usbmuxd from its package manager
  • Uses Apple ID sign-in; the README does not explain credential handling
  • The README does not list supported iOS versions or device coverage

👥 For who?

  • iOS users who need to install SideStore on Windows, macOS, or Linux
  • Users managing pairing files for tools such as StikDebug and Protokolle