4 ms·
Why is a booting XNU helpful for me to build macOS or iOS applications on?
by Aloha 7y ago
Why is a booting XNU helpful for me to build macOS or iOS applications on?
- derefr 7y agoFor the same reason that ReactOS is helpful for you to build Windows applications: you can install the vendor's actual SDK on it (that'd be XCode here), without needing a license for the OS (which, in macOS's case, translates to "without needing to use Apple hardware.") You know that there's entire data centers just running Mac Minis as VM hosts, in order to comply with Apple's OS licensing requirements? PureDarwin can just run on AWS. Sure, running the XCode GUI needs Cocoa. But running xcodebuild doesn't, IIRC. It just needs some other, lower-level libs, ones that (reimplementations of) are in scope for PureDarwin.
- hollerith 7y agoApple could easily require xcodebuild to run on MacOS in xcodebuild's licensing terms.
- TimTheTinker 7y agoExactly. I don't think even Apple realizes what a burden it is that macOS isn't ever licensed to run on non-Apple hardware. Self-service test VM provisioning, CI build/test environments, QA machine labs -- all of these would benefit immensely from not having to run on a farm of Mac Minis in order to stay compliant, while their Windows and Linux counterparts are able to run on large on-premise racked server environments with high-performance, high-availability storage and fast networking.
- asveikau 7y agoBut then if Apple gets pissed off at that, they just change the XCode EULA to say "no non-Apple hardware, please". Actually, I would not at all be shocked if the XCode EULA already says that.
- skissane 7y agoNo idea what Apple is going to get upset at... But, surely it is in their business interest to make life easy for developers, especially if doing so isn't undercutting their end-user-focused hardware business? A cloud server running PureDarwin+Xcode is not undercutting their end-user-focused hardware business, and while it might mean they sell slightly less hardware units for that cloud use case (not a core market for them), surely the added ease for their developer community (who develop apps which make those end-user-focused hardware units so attractive) more than makes up for that?
- asveikau 7y agoYeah I'm on your side. But Apple is Apple.. They've pretty well demonstrated through questionable deprecations and hoops they make people go through with each release that ease for the developer community is not what they optimize for, but I agree it would lead to better end user experience.
- p_l 7y agoit's possible to build enough of their tooling from open source parts to build Mac and iOS apps on linux, but that's rather on the extreme side. And yes, that includes notarization support.
- earenndil 7y agoDarling[1] provides an opensource userspace runtime, which could be combined with this. It's similar to reactos sharing userspace code with wine. 1: https://darlinghq.org https://darlinghq.org
- saagarjha 7y agoDarling can actually run parts of the Xcode toolchain!