LNPANDY/NX2Apple

Games

Turns your own Switch game dumps into an installable iPhone package through a macOS GUI, without using a terminal.

1,364
163
Python
NOASSERTION
7 days old

This is a fork of nxnative that wraps the complicated build process in a Mac app, but read the compatibility table before you assume your game is supported.

The problem

You own Switch cartridges or eShop games and want to play them natively on an iPhone or iPad. The upstream workflow involves unpacking dumps, rewriting NSO binaries, building a Horizon host with a Metal layer, and packaging for iOS — steps that assume familiarity with command-line tools and game-specific configuration. NX2Apple turns most of that into a Mac launcher: you pick your base game, update, DLC and prod.keys, press build, and it prints three install steps for the phone. The result is an installed app on your own device rather than an emulator running inside another app.

What's different

The central mechanism is a GUI layer over an existing pipeline. The launcher downloads the repository itself, detects missing dependencies (Xcode with the iOS SDK, Python 3.9+, .NET SDK 10), and mirrors the upstream game list with daily syncs. For people who would otherwise abandon the project at the first terminal command, that packaging is the whole value.

The build side has some practical engineering for large games: RomFS archiving collapses 300,000 files into roughly 100 shards so a 16 GB title can install, builds are resumable, and unchanged work is reused. The archive is documented as read-only and stores source bytes without deduplication or compression.

The key trade-off is that a GUI does not make the porting problem disappear. Support is profile-based: the README describes 79 game profiles, but only three titles are verified end to end on this fork (build → install → play on a real iPhone), with 29 more reported playable upstream. A game outside the table needs its own bring-up — profile, memory layout, texture slots and possibly shader work. This is a bring-your-own-files tool in every sense: no game data, firmware or keys are bundled or downloaded.

Who should try it

Good fit: you already dump your own Switch games, own an Apple Silicon Mac and a recent iPhone, and your title appears in the supported or verified list. The GUI and install guide remove most of the friction, and the dependency panel can install tools it detects as missing.

Poor fit: you want to play a specific game that is not in the table, or you expect a console-like experience across a library. Those cases need per-game work and may simply not run. You also need to accept that this is a build toolchain, not a storefront; the legal section is explicit that backup rules vary by country and that built packages are for personal use only.

Requirements and limitations

An Apple Silicon Mac on macOS 13+ is mandatory — the pipeline depends on Xcode and Metal, and there is no Windows or Linux build path documented here. On the phone side, the host targets iOS 26+ and a recent iPhone; older devices are untested. The Mac app can detect and install some dependencies, but you still provide the iOS SDK, Python and .NET toolchain and your own dumps and keys.

Ongoing upkeep matters too: the fork follows upstream daily, and game profiles can break when upstream patches change. The README says a fallback issue is opened if a patch fails, but a 7-day-old fork with three verified games is early for anyone who wants a stable library. The archive's case-sensitive lookup and in-memory index (about 28 MB for Tears of the Kingdom) are also worth knowing before building very large titles.

HotRepo's take

HotRepo recorded the repository at 1,142 total stars, #24 on the NEW-REPOSITORY board for Python, on 2026-10-28 — a single dated snapshot, not a daily growth measurement. There is insufficient comparable daily-board history to judge whether interest persists. The project was created 2026-10-20, so this is the earliest stage.

Before investing time, check the verified games list and the full game table for your exact title and required update version. That single compatibility check decides whether this is a usable port or a research project.

Written by AI from the project's README, updated October 28, 2026. The project's own docs are the source of truth.