Linux Shell for iOS
Run a full-featured Linux shell environment on your iPhone or iPad using x86/x86_64 emulation and syscall translation.
Quick Start
Get iSH running on your iOS device in minutes
Install from App Store
Download iSH from the App Store or join the TestFlight beta for the latest features.
Launch the Shell
Open iSH and you’ll be greeted with a Linux shell running Alpine Linux. The filesystem is pre-configured and ready to use.
Install Packages
Use Alpine’s package manager to install software. iSH comes with a working network stack for downloads.
Key Features
Powerful emulation and integration capabilities
x86/x86_64 Emulation
Custom threaded code interpreter for efficient x86 and x86_64 instruction execution on ARM
Syscall Translation
Linux system calls translated to iOS equivalents for full compatibility
Alpine Linux
Complete Alpine Linux userspace with package management and filesystem support
Terminal Emulator
Full-featured terminal with TTY/PTY support, customizable themes, and keyboard shortcuts
Files App Integration
iOS Files app integration via File Provider extension for easy file access
64-bit Architecture
Active port to 64-bit x86_64 guest architecture for expanded compatibility
Explore the Documentation
Deep dive into architecture, building from source, and advanced topics
Architecture
Understand the emulation engine, kernel, and filesystem
Building
Compile iSH for iOS or build the CLI tool for testing
API Reference
Explore the internal APIs and system call interface
64-bit Port
Learn about the ongoing 64-bit architecture port
Logging & Debugging
Enable debug channels and troubleshoot issues
Interpreter
Deep dive into the threaded code interpreter design
Community & Resources
Connect with the iSH community and contribute to the project
Discord Community
Join our Discord server for help, discussions, and updates
Contributing
Contribute code, report bugs, or improve documentation
FAQ
Find answers to common questions and troubleshooting tips
Ready to Get Started?
Install iSH on your iOS device and start running Linux commands, installing packages, and building projects on the go.