Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Jailbroken iOS can't run macOS apps. I spent a week to find out why (worthdoingbadly.com)
182 points by g0xA52A2A on June 7, 2021 | hide | past | favorite | 64 comments


Why would this take a week? i(phone)OS was originally a cut-down low-resource fork of MacOS with support for touch screens and a somewhat different driver model.

It's still that, but hardware has moved on and the super-low-resource constraints have been relaxed a little.

But it still lacks many of the features available in full-fat MacOS. And there are still significant differences in the GUI APIs.

This isn't a trade secret - it's very, very obvious from the docs.


Is the iOS kernel (Darwin based on FreeBSD) still open sourced?



Here's to hoping for an M1 boot loader exploit so we can straight up run macOS on the iPad.


I'm hoping Apple enables dual booting officially. I don't see any reason other than "We want to price segment iPad Pros and Macbooks"


I have a feeling they won't do this because they want developers to make ipad native apps designed for the smaller screen sizes and touch. Allowing dual boot would have users move off ipados rather than apps move over to iPadOS.

I actually thing iPadOS is pretty great as it is and its simply a lack of apps as well as too restrictive app store ToS that's in the way


> I have a feeling they won't do this because they want developers to make ipad native apps designed for the smaller screen sizes and touch.

This is a part that I don't understand. It is a size and quality of panel that is fine for pro-level (maybe not Professional™ level) work. I would buy an iPad Pro in a hot minute if it was possible to hook my mouse and keyboard up and use the same Photoshop etc that I'm used to using on my Mac.

PS I'm not against touch apps, but not every app needs touch in my opinion. I'd like to have both.


I totally get this but I feel that the inability to directly run macos apps has opened the door for a lot of new apps in established industries which have ipad focused UIs which would have never got off the ground otherwise. My favorite example is Procreate. The UI blows the desktop software away with how minimal it is while still retaining all the functionality I need. Photoshop and other software have multiple layers of toolbars and sidebars which hog the screen while procreate leaves almost everything free for the canvas.

If you could just run real photoshop right away I think we may have never got Procreate.


More than price segment, they want you to have both devices.


The 13" iPad Pro costs more than the 13" Macbook air anyway.


Why? I could see wanting some macOS apps to work on iOS, that makes sense to me.

But with sidecar you can get a pretty good idea of macOS on iPad. And it’s not great. At least as-is it’s not great.


> Why?

Also:

- Fewer restrictions, e.g. running apps not from the App Store, transferring media files, and more.

- Some people might prefer macOS abstractions; resizable windows, desktop, trash, etc.


This. I loved the first Microsoft surface, it was exactly what I wanted. A wicked small portable that ran a full OS that could, among other things, run PERL scripts for me.

I still don’t think I can do that with iOS, and the 12” MacBook is gone. Sign me up for an 11.7” running full MacOS


The perfect setup would be an M1 iPad that runs something iOS-like when it is in tablet mode and then switches to macOS when in laptop mode, keeping the apps running. At least, one can dream…


Technically we could duct tape an iPad to the back of a Macbook Air?.. Sure, the CPUs are needlessly duplicated and so is the price but the UX and the form factor seem close? Obviously tongue in cheek, but also a fun thought experiment.


I want a Microsoft Surface with an M1 chip.


On the way, some former M1 team founders are at Qualcomm (via Nuvia acquisition) building a new Arm SoC for PC OEMs.

If Apple squanders their 2021 window for usable-walled-garden-with-sandboxes, they will lose (again) to less-usable-but-more-open EBBR platforms with dynamic boot, security and performance policy.


iPad Pro M1 with Linux would be my dream device.


Fun?


i was really hoping that'd be in the cards for this wwdc announcement. It'd easily become my main machine overnight.


This is the way


Does MacOS has built-in touchscreen support?



This is a wild ride - interesting to see how far apart they are. If Apple was planning on ever running OSX on iPads and time soon, you'd imagine that some of these differences would have been smoothed over already.


I sort of wonder if they are going in the opposite direction. iOS on Mac seems like where they headed.


I wrote about why I think that's exceedingly unlikely back in April, knowing that there was a chance I'd be proven wrong just two months later (i.e., today). I wasn't.

https://micro.coyotetracks.org/2021/04/21/the-mac-and.html

My argument from there is that Apple has been demonstrating a consistent philosophy since the start of the iPad:

- Macs are general purpose computers

- iPads/iPhones are application consoles, analogous to game consoles

That philosophy doesn't preclude securing macOS in annoying ways, but it does preclude locking down macOS like iOS. The notion that Apple would force all Mac apps to be installed from the App Store because it would increase their revenue simply doesn't hold water, because, as I noted then, the Venn diagram of "users likely to walk over such a change" and "users likely to spend boggling amounts of money on Apple hardware" is close to a perfect circle. Even if that's only a few percent of those high-ticket users, that's literally millions of lost unit sales.

Furthermore, I stand by my thoughts then that if Apple was ever going to try such a radical move, it would have been last year, with the introduction of Apple Silicon and the relatively radical redesign brought by macOS Big Sur.

The flip side of this philosophy, though, is that we're probably not going to ever see iOS open the way macOS is any more than they must for technical, market, or regulatory reasons.

My suspicion is that in the long run there's a new OS that will replace both macOS and iPadOS, and at that point, all bets may be off. But I don't think we're going to see that within the next few years.


Apple is a corporation not bound to normal individual timescales. Right now they are conditioning everyone to accept the app store model universally. If you are under a certain age, you don’t even know another concept exists unless your are tech savvy or in a tech field.

These are dividends to be reaped at a later date. And the inability to secure software and hardware systems will be the ultimate justification.

The great irony in all of our endeavors is that if you make all of your decisions in an effort to avoid becoming something, you just wind up taking the long way around and backing into being the thing you didn’t want to become in the first place.

See Google:Evil, Apple:1984, Microsoft:The Borg, Larry Ellison:A Lawnmower

And the list of individuals who became what they most despised is quite long as well.


I don't think you're actually arguing the opposite point -- I think you're worrying, with some justification, about what I suggested in my last couple of sentences ("a new OS that will replace both macOS and iPadOS, and at that point, all bets may be off").

My suspicion is that the computing industry as a whole is inching toward an everything-in-the-cloud, ubiquitous computing model, and the vast majority of users will see this shift as a net benefit, not a net negative. I'm not convinced that simply projecting what we have now forward a few years is what that will look like, though.


See also Canada : USA


M1 Macs can already run iOS apps.


I’m not familiar with the way iOS apps are run on Big Sur natively.

What happens when multi-touch with hand-eye coordination is required?

My Mac runs a Nintendo DS emulator fine, but it sure is a bitch for a game like Scribblenauts, or any game requiring drawing precise shapes or letters - because the input was designed for a stylus, not a mouse or trackpad.

Also; the distance between the input device (mouse) and the output appearing on a monitor in a different locations make playing a handful of DS games in an emulator an awful representation of the actual experience.

While I get I can probably run Instagram or whatever, I’m just curious as to how they handle all these flaws with porting multi-touch heavy apps - a huge cornerstone of iOS devices. Just wondering how they handled that. :)


It’s up to the Devs to determine if their iOS/iPadOS App is suitable to be offered on M1 Macs. Some (like the HBO Max) honestly shouldn’t be offered.


Nightmare scenario


Optimize for revenue. Minimize freedom.


If we look at it from a business perspective it looks a lot better to go the iOS on Mac direction.

And we can see it happening. macOS is getting more iOS-like with each new iteration.


People have been saying this for 10 years, since before Microsoft actually tried it and failed. I simply don't see it.


Maybe they have - this article was about iOS 14.1 (Oct 2020) - its not even about iPadOS! Additionally, M1 powered iPads werent even available then.


Apple could smooth these over internally quite easily, without releasing it publicly.


I screwed around with trying to chroot into a macOS arm image on a jailbroken iPad a month ago, but got stuck because the executables were compiled for arm64e, not arm64 (and the arch command for whatever reason was present in iPadOS but didn’t do anything). Suppose even if I had been able to get past that, maybe not a whole lot farther. I’d think that a lot of the environment differences would be taken away if you chrooted into a macOS file system rather than trying to replace iOS piece by piece, is there a reason why I’m off base?


You'd get stuck at the same place as the author, at the kernel driver/module level. Chrooting to a Mac image wouldn't load the needed IOKit modules, although I'm not familiar enough with Darwin/OSX/iOS to say if you could load said modules with a jailbreak.

My understanding is modern/recent jailbreaks only allow running unsigned code, not full kernel access.


>Steve Jobs famously announced that the iPhone “ran OS X”. After a week’s work, we determined: that was a lie.

He, uh, he died a decade ago, and said those words in 2007... Did you try a 2007 first generation iPhone and a version of OSX from the first generation iPhone era, like Leopard? O_o

This is a weird thing to put in an otherwise pretty nice writeup.


It's also not even true as the author admits: iOS 1.0 and OS X shared the same kernel, most libraries, and even many drivers. Does anyone think that a Linux distro without audio drivers is a completely different operating system from a Linux distro with audio drivers?


Most people don't really consider Android "Linux" despite having the same kernel and many libraries in common.


What libraries?

https://developer.android.com/ndk/guides/stable_apis

Anything that isn't Android specific on that list, works in any OS with a ISO C or ISO C++ compiler.

Then there is the Java/Kotlin userspace.

Anything not part of those APIs is considered private API, and Android is free to just kill the application.

https://developer.android.com/about/versions/nougat/android-...

Then we have the regular Linux drivers that are considered legacy since Android 8.

> HALs expressed in HAL interface definition language (HIDL) or Android interface definition language (AIDL). These HALs replace both conventional and legacy HALs used in earlier versions of Android. In a Binderized HAL, the Android framework and HALs communicate with each other using binder inter-process communication (IPC) calls. All devices launching with Android 8.0 or later must support binderized HALs only.

https://source.android.com/devices/architecture/hal-types

Many like to think Android's usage of the Linux kernel matters, while the hard reality is that ART can be deployed on top of Fuchsia, and 99% of Android applications will keep on running without changes, probably recompiling might be required for the NDK parts, that is all.


Yes, but surely most people would see the family resemblance between the binary distributions of Mint and Raspbian, for example.


Because muh libc and it's not using some obscure barely working DE.


I actually have written bionic -> glibc compatibility layer. https://github.com/Cloudef/android2gnulinux If it's a native binary, there's good chance you can run it with this. JNI/Java stuff is mostly unity and even that's very proof of concept.


Thank you, it looks very interesting.


I think it’s because to most people Linux = GNU/Linux


I'd be surprised if there were more than a tiny tiny minority of people who even know what you're talking about


GNU/Linux as a term is often used for precisely these situations. It evokes the image of something like Debian or Arch on a desktop or server. Very distinct from Android.

I can use a terminal on Android and use a few familiar tools, but the same is true of macOS.


The type of people who are likely to hold the opinion that Android isn’t a real Linux definitely do, which is what we’re discussing here.


Call me back when you can compile a Linux program to run on Android.

Shouldn't that be the deciding yardstick for OS compatibility?


Install one of those chroot apps that give you a distro's package manager on it and then you can. I once did to compile a Qt program on arm. Just install the gcc package and compile away. It was way easier than trying to set up cross-compilation in my Linux box at the time.


You can also install a VM on MacOS and compile Linux apps, too. Does that make MacOS a Linux?


I always did. In fact there were other linux based distros for different form factors including mobile. One was the LiMo (linux mobile) foundation.


Agreed. The claim that "the iPhone runs Mac OS X" was far more true than many marketing claims in the technology sector. In the context that the claim was made, it was certainly not a lie. At minimum it is accurate to describe iPhoneOS 1.0 as a fork of Mac OS X.


Not only that, but Steve even clarified exactly what he meant by “runs OSX” in the presentation with a big list of features the iPhone got from it. Multitasking, networking, power management, etc, etc. Funnily enough binary compatible hardware drivers weren’t on the list.


Especially when compared to the competition phones that ran kernels that were only used in the embedded world


Yeah whatever it was, it wasn't a lie. At most a simplification for marketing purposes. It's not like customers care if it's 100% OSX or 75%, the point is that iOS built on the security and experience of OSX.


"Whatever gets clicks" culture


It's a blog post lede meant to garner interest; I think you are treating it far more seriously than it should be.


Don't make up lies about a dead man's claims from over a decade ago. Pretty basic rule. Unless you're writing clickbait, then by all means do whatever the hell you want.

If you're going to call someone a liar, test their claim. Don't go "they were lying, because a decade after their death everything is different".


Do we have to wait for Windows/Linux VMs on Nuvia-Qualcomm Surface Pro (2023?), before we get VMs on iPad Pro Mx?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: