An experimental, Omarchy-inspired desktop for Apple A-series devices. Built on Arch Linux ARM, with Omarchy's look and feel reworked for touch.
Includes a device-aware CLI and release format for installation, diagnostics, and bringing Omarchy A to more hardware.
This repository is the distribution: desktop, root filesystem and release. The
hardware support and the orchard tool live in
orchard; put its launcher on your PATH
once (see its README). Here,
orchard runs orchard's main by default. To work against your own orchard
checkout, e.g. a branch with a driver you need, name it in orchard.local.toml,
which is never committed:
orchard = "../orchard-installer"
device = "j71b"Run this repository's tests and producers in that orchard's environment:
orchard python -m unittest discover -s tests
orchard python -m release.j71b.build ...RAM experiments and device bring-up happen in orchard itself, with its examples and bring-up guide.
| Device | Identifier | Status |
|---|---|---|
| iPad 6 Wi-Fi | iPad7,5 / J71b |
Experimental; no GPU acceleration |
This image uses tethered boot: starting Linux after a cold restart requires a host computer running orchard launch.
Security: this experimental image logs in as
tabletautomatically at boot.sudoasks for the password chosen at install, and the screen lock takes a 6-digit PIN. There is no disk encryption, and the boot ROM exploit used to start Linux gives anyone holding the device full access. Use a dedicated test device; do not store sensitive data on it.
Contributions for additional devices are welcome. See CONTRIBUTING.md.
Use a computer running Linux or macOS with Python 3.9+ (including venv/pip), curl, libusb, and OpenSSH installed, a USB data cable, and a supported iPad running iPadOS 16 or later. Allow several GB of free host storage for firmware downloads and extraction.
Storage changes can permanently erase data. Back up before continuing.
curl -fsSL https://raw.githubusercontent.com/OrchardLinux/omarchy-a/main/install.sh | bash
export PATH="$HOME/.local/bin:$PATH"This sets up the host-side CLI and its dependencies, including palera1n, which is also used by Resize APFS. It only changes the host computer.
On Linux, reconnect the device after setup so USB permissions take effect. Rerun the same bootstrap command to update the CLI; available Omarchy A releases are fetched automatically.
The installer needs at least 9 GiB that iPadOS doesn't use: free space, or an earlier Linux install to replace. It never resizes iPadOS itself. Skip this step if you already have that.
- Download and extract Resize APFS.
- Run
./resize-apfs bootfrom its extracted folder and follow the prompts. - Once iPadOS starts, unlock the iPad and open Resize APFS when its icon appears.
- Choose Adjust size and reserve space for Linux.
- Wait for Completed and verified before restarting. Do not interrupt the operation; see the resize safety instructions if status becomes unavailable.
Connect only the target iPad. Enter DFU: hold Home + Power for about 8 seconds, release Power, then keep holding Home for about 10 seconds. The screen should remain black.
orchard install omarchy-aChoose where Omarchy A goes, then set a password (for sudo and system changes) and a 6-digit PIN (for the lock screen). The CLI downloads and verifies the release, boots recovery, writes a boot partition and the system next to iPadOS, adds the device's firmware, and starts Omarchy A, all in one DFU boot. Keep USB connected until it says Omarchy A is starting.
Installs from the previous installer (one Linux partition, no boot partition) can't be started or converted by this one. The installer offers that partition as a target and says so before erasing it. To keep files, copy them off first: start the old system with the previous CLI release, then copy them over the network (for example with scp).
Connect the iPad in DFU mode and run:
orchard launchThe bootloader reads the boot entries from the iPad's boot partition and starts the one you choose (or the only one). It works from any computer with Orchard installed: nothing is downloaded, formatted or reinstalled. See the CLI launch instructions.
The same CLI supports hardware work before and after installation:
orchard devices # Inspect connected devices
orchard status # Query the running system
orchard diagnostics # Collect device diagnosticsRecovery boot, device-tree capture, firmware preparation, installation, and handoff are available separately for bring-up and debugging. See the CLI documentation for commands and workflows.
An iPad cannot boot a Linux installer like a PC boots an ISO. How Omarchy A gets from DFU to desktop explains the boot path, release format, device runtime, and installation lifecycle.
- Desktop: improve touch interaction, the shell, applications, and Omarchy integration here.
- Hardware and host tooling: contribute kernel patches, device trees, firmware recipes, runtime support, device adapters, boot transports and installation workflows to orchard.
- Create your own remix: customize the desktop, root filesystem, and image policy using the same release format; minimal-linux provides a smaller, Alpine-based example.
See CONTRIBUTING.md for bring-up guidance and BUILD.md for image assembly and validation.
See Troubleshooting for USB connectivity, diagnostics, and failed installations.