Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

imxieyi/Kernarium

DevOps & Self-hosting

Run a real Linux kernel natively on iOS via User-mode Linux, with emulated userspace and GPU acceleration.

377
37
C++
GPL-2.0
4 days old

What it is

Kernarium is an iOS runtime that runs a real Linux kernel natively on Apple arm64 devices, using User-mode Linux: the kernel is compiled to native arm64 and linked into an iOS framework, while userspace programs run under an iSH-style threaded interpreter with SMP support. Guest graphics are translated from Vulkan to Metal through KosmicKrisp, with OpenGL/GLES via Zink.

The approach sits between a full-system emulator like UTM and a pure userspace emulator like iSH. Because the kernel itself is real and native, advanced workloads such as Docker containers, Linux desktops, Wine/Proton and a full Android system can run at reasonable speed on modern iOS hardware.

Included are a mainline 6.18 LTS kernel supporting namespaces and SELinux, arm64/arm32/x86_64 guest instruction emulation with interpreter and JIT modes, Vulkan 1.4 and OpenGL 4.6/GLES 3.2, VideoToolbox H.264/HEVC hardware codecs, virtual disks with discard and common Linux filesystems (ext2/3/4, erofs, xfs), loop devices, FUSE, and a full Linux network stack bridged through libslirp.

Two apps build on the runtime: Andarium, an Android emulator available through a TestFlight beta, and Kernarium, a generic Linux distribution runner described as early-stage and not yet released.

Quick start

The runtime is not a ready-to-use Linux product for general users. To try the Android-capable app, install the TestFlight build from the join link. To build or embed the runtime in your own app, start from the agent guide and the documentation directory; the two app sources live under Andarium and Kernarium. The README does not provide manual build commands, required Xcode or SDK versions, signing steps, or a release binary, so expect to follow the in-repo docs and Apple's iOS build requirements rather than a one-command install.

Constraints

This targets iOS on arm64 devices; it is not a Linux desktop application and does not run on other platforms. The TestFlight release is interpreter-only, so JIT execution is not available in that build. The generic Kernarium app is unfinished and not ready for release, and GPU acceleration relies on Metal and Apple frameworks. Code is licensed GPL-2.0-or-later unless a file's SPDX header says otherwise; the license set is in LICENSES.

HotRepo's take

Kernarium entered HotRepo's new-project list on 2026-11-10, gaining 12 stars in the recorded window and reaching 116 stars and 16 forks overall, with a language-specific placement on the C++ list. The repository's appeal rests on a technically unusual design: a native Linux kernel plus interpreted userspace and a Vulkan-to-Metal path, rather than another full emulator. The single snapshot is too thin to characterize momentum, but the combination of a real kernel and a GPU translation layer is what distinguishes it from existing iOS emulation options.

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

You might also like

  1. Leviidev/HuskRuns Android apps and games on iPhone via a native translation layer, QEMU emulation, or PS4 package loading.Java3,242
  2. google/gvisorAdds a user-space Linux kernel and OCI runtime so containers running untrusted code don't share the host kernel.Go19,791
  3. jo-duchan/tapflowSelf-hosted relay and macOS agent that stream iOS simulators and Android emulators to a browser for team QA.TypeScript1,585
  4. kubevirt/kubevirtRun and manage virtual machines on Kubernetes with KubeVirt's CRDs, controllers and runtime.Go7,166