whatisgithub

What is ios-linuxkit?

rcarmo/ios-linuxkit — explained in plain English

Analysis updated 2026-05-18

36CAudience · developerComplexity · 4/5Setup · hard

In one sentence

Brings a real, working Linux command line to iPhone and iPad without jailbreaking, built on the iSH project.

Mindmap

mindmap
  root((ios-linuxkit))
    What it does
      Linux on iPhone
      No jailbreak
      Built on iSH
    Tech stack
      C
      Assembly
      Alpine
    Use cases
      Run shell tools
      Compile code
      Test on Linux host
    Audience
      Developers
      Mobile coders

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run a Linux shell with real package managers and compilers directly on an iPhone or iPad.

USE CASE 2

Compile and test small Go, Rust, Python, or Node.js programs on a mobile device.

USE CASE 3

Reproduce and debug Linux runtime issues on a desktop Linux machine before testing on iOS.

USE CASE 4

Use command line developer tools while away from a full computer.

What is it built with?

CAssemblyLinux syscallsAlpineMake

How does it compare?

rcarmo/ios-linuxkitdreamfekk/andriod-autouedump-guiunclecheng-li/poc-lab
Stars363537
LanguageCCC
Setup difficultyhardhardhard
Complexity4/55/54/5
Audiencedeveloperresearcherresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires building from source and understanding iOS's code execution restrictions, testing is easiest on a Linux host first.

So what is it?

ios-linuxkit gives an iPhone or iPad a working Linux environment that runs entirely on the device, no jailbreak needed. It is a fork of an existing project called iSH, and it focuses on making that Linux environment reliable enough to run real developer tools like shells, package managers, compilers, and programming language runtimes. The app included in the repository is a sample terminal you can use, but the real work is in the underlying runtime: it translates Linux system calls into something iOS allows, since iOS does not permit apps to generate and run new machine code the way a normal Linux program expects. To stay within Apple's rules, it uses a technique that interprets code instead of generating it on the fly, so it never needs the kind of memory permissions iOS blocks. The project supports running things like Alpine's package manager, C and C++ compilers, Go, Rust and Cargo, Node and npm, Python, Java, and several other language runtimes inside this environment, and the maintainers keep a running scorecard of which of these pass automated tests. Because testing directly on an iPhone is slow and awkward, they also built a way to run the exact same Linux environment on a regular Linux computer, so problems can be found and fixed there first. There is ongoing work to make the code execution faster, though the README is careful to note that the speed improvements described are not yet active in the running system, they are groundwork for a future version. This project is aimed at developers who want a genuine Linux command line experience on their iPhone or iPad, for example to test scripts or compile small programs while away from a computer. It builds on the open source iSH project and its ARM64 fork, and it is licensed under terms described in the repository's license files.

Copy-paste prompts

Prompt 1
Walk me through installing ios-linuxkit and getting a Linux shell running on my iPhone.
Prompt 2
Explain how ios-linuxkit runs Linux programs on iOS without being able to generate machine code.
Prompt 3
Show me how to test whether Python or Node.js works correctly inside ios-linuxkit.
Prompt 4
What language runtimes and tools does ios-linuxkit currently support, and how do I check?
Prompt 5
Help me reproduce an ios-linuxkit syscall failure on a Linux host instead of on my iPhone.

Frequently asked questions

What is ios-linuxkit?

Brings a real, working Linux command line to iPhone and iPad without jailbreaking, built on the iSH project.

What language is ios-linuxkit written in?

Mainly C. The stack also includes C, Assembly, Linux syscalls.

How hard is ios-linuxkit to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is ios-linuxkit for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.