Kakehashi是一个实验性开源项目,实现了在Linux ARM64系统上运行macOS二进制文件的用户空间翻译层[1]。该工具采用CLI优先设计,无需JIT,支持加载Darwin Mach-O格式、映射freestanding libSystem、转换BSD系统调用[1]。
项目已在Docker、Colima和UTM等环境上验证可用[1]。支持的应用包括clang probes、7-Zip 7zz、curl和多线程程序[1]。根据测试,在Ubuntu aarch64裸机上运行多文件7zz档案压缩时,性能相比原生macOS约降低×5倍[1]。
开发者计划将该工具作为CI/CD环境的廉价替代方案,以应对macOS标准GitHub Actions运行器的高成本——其费用约为Linux arm64方案的×10至×12倍[1]。项目采用Apache License 2.0开源协议[1],可通过cargo install kakehashi进行安装,需要Rust 1.88及以上版本和Linux aarch64环境[1]。
Kakehashi is an open-source project that provides a userspace translation layer for executing macOS binaries on Linux ARM64 systems [1]. The tool uses a command-line-first design without requiring JIT compilation, and handles Darwin Mach-O format loading, freestanding libSystem mapping, and BSD system call translation [1]. Installation is available via cargo install kakehashi and requires Rust 1.88 or later on an aarch64 Linux environment [1].
The project has been validated across multiple platforms including Docker, Colima, and UTM, successfully running real-world applications such as clang probes, 7-Zip, curl, and multithreaded programs [1]. Performance benchmarks show that on Ubuntu aarch64 bare metal, multi-file 7-Zip archive compression runs approximately five times slower compared to native macOS execution [1]. Kakehashi is released under the Apache License 2.0 [1] and is positioned as a cost-effective alternative for CI/CD environments, where macOS GitHub Actions runners typically cost ten to twelve times more than Linux ARM64 equivalents [1].