Skip to content

An iOS Terminal to run macOS Apps (W.I.P macExecute 2)

Notifications You must be signed in to change notification settings

stossy11/maciOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

maciOS

maciOS is a simple app made to run macOS applications on iOS, using Mach-O patching and custom libraries. with a simple AppKit implementation and multithreading to allow for several applications (Will look into proper subprocesses later

maciOS is very early and only very simple apps will run.


How does it work?

  1. maciOS uses dyld-lv-bypass to use JIT / Executable Memory to bypass codesigning requirements

  2. maciOS patches the binary you want to run (More Information on the LiveContainer Github):

    • Changes platform Identifier to iOS from macOS
    • Patches the app to act like a dynamic library
    • Replaces uses of macOS frameworks with ones that come with maciOS that have Hooks / Stubs for funcs that don't exist or re-implementations of the macOS counterpart
  3. Sets up hook using fishhook that hooks funcs such as tcgetattr / tcsetattr, ioctl and isatty

  4. Runs main() using dlopen and dlysm


FAQ

Will this be on the App Store?

  • Never. It requires JIT, and even without JIT, it would still need to be installed via SideStore or AltStore like LiveContainer.

Will this run [Insert App Here]?

  • Probably not. iOS is missing many libraries, functions and frameworks that most GUI and CLI apps depend on.
    • Even if a library or framework exists on iOS, differences in implementation between the macOS and iOS versions can cause compatibility issues and lead to application failures

Is this Emulation?

  • No, maciOS runs all the apps natively

Credits

About

An iOS Terminal to run macOS Apps (W.I.P macExecute 2)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published