5 ms·
I have to say, I don't entirely understand Apple's approach here. Apple spent significant engineering effort modifying their iOS bootloader to support third-pa
by Wowfunhappy 4y ago
I have to say, I don't entirely understand Apple's approach here.
Apple spent significant engineering effort modifying their iOS bootloader to support third-party OSs—then neglected to tell anyone how to actually make a third-party OS. Whoops! Have fun!
And to be clear, this is absolutely preferable to Apple selling fully locked-down Macs. And, I realize that macOS will always be Apple's first priority, and that writing documentation takes effort.
But would it really kill Apple to connect Marcan to an engineer, who could allocate 30 minutes a week to answering questions? Is there some sort of legal liability involved? Security concerns? Brand safety?
The Asahi team is comprised of people who clearly enjoy reverse-engineering, and if everyone is having fun (and creating an awesome Linux port in the process), perhaps that's all that matters. But I still find Apple's choices confusing.
- capableweb 4y ago> Apple spent significant engineering effort modifying their iOS bootloader to support for third-party OSs—then neglected to tell anyone how to actually make a third-party OS. Whoops! Have fun! This tend to be the usual practice for much of what Apple does, release things with minimal documentation and let others figure out how it works. Maybe it's just a sadist corporation who wants to see how far people are willing to go in order to get stuff working with their own hardware/software? Sometimes it certainly seems that way.
- smoldesu 4y agoIt's mostly frustrating that this is still the rhetoric from Apple now that they are the largest company in modern existence. They have the faculties to release their Unix drivers and even provide world-class Linux support while still profiting heavily from their hardware sales. Yet, they don't. Every time they're given an opportunity to err on the side of freedom or choice, they shrug. This is an ongoing problem that has prevented me from daily-driving MacOS since Catalina. Really a stance I wish Apple would revert, even Microsoft does a better job here than Apple.
- tpush 4y ago> [...] even Microsoft does a better job here than Apple. How so?
- smoldesu 4y agoFor one, they helped build Linux drivers for NTFS. Despite Apple promising to document and open-source APFS, they still have not gotten around to it (which makes interop with Macs really frustrating). There are lots of little things, too - Microsoft packages desktop apps for Linux and made pretty great OSS contributions like the Monaco editor. The list could go on, but this really shouldn't be surprising. Apple doesn't even treat upstream BSD with respect, it's insane to think that they would respect Linux.
- bch 4y ago> Apple doesn't even treat upstream BSD with respect, it's insane to think that they would respect Linux. Meanwhile from Microsoft: * https://wiki.netbsd.org/ports/emips/ https://wiki.netbsd.org/ports/emips/ * https://www.netbsd.org/ports/emips/index.html https://www.netbsd.org/ports/emips/index.html
- my123 4y agoFor APFS, they did release some docs at: https://developer.apple.com/support/downloads/Apple-File-System-Reference.pdf https://developer.apple.com/support/downloads/Apple-File-Sys...
- minusf 4y agoyes, microsoft is truly amazing, where is their patent free exfat implementation? that is the only true modern interop fs and they keep it hostage.
- mixmastamyk 4y agoBeen in the kernel for long enough to trickle out to recent distributions. Is there something missing?
- nemothekid 4y agoI think we are ascribing too much to this as some corporate apple policy when the reality is closer to a single engineer or engineering lead believes the hardware would be open, but Apple is not going to spend any resources behind that. So you have engineering teams with hacker ethos building "open" hardware, but Apple the company doesn't really give a shit and is not going to spend money on documentation for a feature the company doesn't care about.
- Wowfunhappy 4y agoI take your point, but I have to imagine Tim Cook (or someone just under him) signed off on opening the bootloader. It's not like the executive team doesn't know about it. Allowing an engineer to answer questions for half an hour a week would be practically a rounding error in terms of resources, and certainly less of a commitment than rewriting iBoot policy, which they already did.
- bombcar 4y agoWe're not really privy to how it got through (I could imagine some engineer/manager somewhere arguing that allowing it open would change some obscure tax/import filing somewhere).
- kaba0 4y agoI’m fairly sure that it is not as easy from a legal standpoint. Apple does manufacture some of their own components, but they still have plenty of third-party ones, where the usual licensing applies - so the same reason why it’s hard to run third-party OS on android phones.
- titzer 4y agoThey certainly have a penchant for randomly crapping on people that don't do things the Officially Supported Way(TM). For example, one rev of MacOS changed the ABI for the gettimeofday() kernel system call. That broke Golang (and Virgil). Apple didn't care. They want you go through libc for some reason. Uh, no, don't break userspace.
- 0x0 4y agoMicrosoft also changes the kernel syscalls between releases. It's not unusual for operating systems to specify ABI at the libc level, in fact I believe Linux is the odd one out to specify ABI at the syscall level. https://j00ru.vexillium.org/syscalls/nt/64/ https://j00ru.vexillium.org/syscalls/nt/64/
- titzer 4y agoI know. Solaris has/had a stable ABI.
- KerrAvon 4y agoApple has been crystal clear since 1999 that syscalls are not ABI on Darwin. Linus chose to draw that line differently, which is fine; Linux is a different environment.
- jmull 4y ago> I don't entirely understand Apple's approach here. They've just decided they don't want to be in the business of supporting Linux on Apple hardware. Short of fully supporting Linux, the "Whoops! Have fun!" part would happen somewhere, no matter where the line was drawn. Of course they could do more. But you and I shouldn't really expect to be able to tell Apple how to spend their money.
- Wowfunhappy 4y ago> You and I shouldn't really expect to be able to tell Apple how to spend their money. I don't, I just think Apple chose to draw the line in a perplexing location. I'd love to know what they were thinking.
- IntelMiner 4y agoPure speculation on my part Perhaps it was "targeted" for some internal skunkworks project to get Windows running on ARM Macs? Linux/BSD obviously got there first (at least in the open) and Microsoft is under a Qualcomm only contract for now Microsoft can't directly request that Apple allow booting their OS, or work with them directly. But "leaving a spare key under the doormat" is a bit more innocent looking
- kmeisthax 4y agoAlmost certainly. I remember hearing Apple saying that they asked for Windows on ARM and were told no. That being said, ARM hardware is nowhere close to being cross-vendor interoperable[0] and going from Qualcomm to Apple Silicon would require a significant reverse-engineering effort on Microsoft's part. The "spare key under the doormat" is running Windows on ARM in a VM under macOS. [0] Hell, most vendors don't even bother with generational interoperability. Each chip is it's own island. Apple Silicon is a very unique exception.
- deleted 4y ago[deleted]
- kitsunesoba 4y ago
- throwaway19318 4y ago> And, I also realize that writing documentation requires effort. For Apple's hardware, the documentation exists. It's comprehensive. It's just not being released. (This is not the case for software.) Source: Apple employee. But this attitude is common in the hardware industry. This particular situation is a bit unusual because most of the time, Linux drivers either are developed with no support from the hardware vendor (something which wouldn't have been possible here due to secure boot) or are developed by the hardware vendor itself. But in the second case, it's common for no documentation to be released along with the driver, leaving independent parties to glean what they can from register names and other definitions in the source code. Or if documentation is released, it only covers the parts that drivers are supposed to access, excluding what would be needed to, say, write a custom firmware to replace the included blob.
- yjftsjthsd-h 4y agoBut that doesn't really explain anything, or if anything makes it more confusing. So Apple goes out of their way to enable running non-Darwin OSs, writes good docs on how to use the hardware... and then never releases any docs or does anything to actually help people run non-Darwin OSs, after putting in all that effort to make it possible in the first place? Having the docs exist but not release them is more confusing, not less.
- TillE 4y agoThe documentation is for internal usage, it's not confusing. Of course their hardware behavior is documented in detail.
- moistly 4y agoMaybe the approach is to do the minimum to avoid being successfully prosecuted as a monopoly. “It’s not locked down; there are alternatives freely available!”
- belfalas 4y agoThis is my slightly-conspiracy guess: Apple has oodles of old hardware lying around that they would like to keep using but is either too old for macOS or they want to use it for backend services (prod or non-prod, doesn't matter). Think capital expense budget. So if Apple can run Linux on all that hardware, that's a lot of computing power still available for years to come. And if you can get the OSS community to do it for you for free - even better!
- yjftsjthsd-h 4y agoI would struggle to believe that Apple had an easier time getting someone else to support Linux on their hardware, than just... supporting their own hardware with their own OS with their own drivers that they already have using internal developers who already know how to write Darwin code for Apple hardware.
- saagarjha 4y agoMachines too old to run that latest version of macOS can probably be replaced with commodity hardware in the cloud for a few dollars a month. Doesn’t seem worth bring a bunch of decade-old hardware online for this.
- imiric 4y agoApple's entire business model heavily depends on vertical integration. They use their software to attract customers to their hardware, and viceversa. Users running alternative OSs on their hardware doesn't tie them into their software ecosystem. That, and they don't give a crap about the open source community, unless it directly benefits them. They have zero incentive to help a group of hackers run Linux on their hardware that will only benefit a niche of a niche of users. Allocating any of their engineers' time to this project would ultimately result in a negative ROI. TBH I'm surprised Asahi Linux hasn't received a C&D notice yet. Apple hasn't been this tolerant of hackintosh projects before, so at least they're turning a blind eye to this. Why anyone would want to spend their free time working in such a hostile environment is beyond me, but hats off to the Asahi team for the dedication. The patience and talent required must be extraordinary.
- minusf 4y agoi'm not saying this can't be true, but why leave the boot loader open then?
- colonwqbang 4y agoThis is exactly the opposite of hackintosh. A hackintosh is "pirated" Apple software running on non-Apple hardware. These are people who have bought genuine Apple hardware - putting money in Apple's pocket. Then they want to write some custom software for their computer. I don't see how this threatens Apple in any way. The intersection between general Apple users and those who want to run "a remix of Arch Linux ARM" on their $1000 hardware has to be pretty small anyway. Actually it could open up a new market for Apple. I for one am quite impressed by Apple hardware, but have minimal interest in running their software. If Asahi becomes stable enough, I would seriously consider buying Apple. Your second point is a good one, however.
- imiric 4y agoTrue, doing this doesn't threaten them, and it could result in a negligible amount of devices sold for this purpose, but I wouldn't be surprised if they saw this as equivalent to jailbreaking, and thus as some kind of breach of the ToS you implicitly agree on purchase. Though Apple hasn't historically prosecuted individuals for such things, so this likely won't happen. But it's even less likely they'll officially support, advertise, or even recognize this project in any way.
- asveikau 4y agoPerhaps that work is an escape hatch should anyone threaten some kind of antitrust action or similar. They want it theoretically able to boot something else for legal reasons.
- nicoburns 4y agoMy understanding is that Apple as a company doesn’t officially support this effort for whatever reason (be that legal or whatever), but their hardware team does (I’ve heard they use Linux themselves when bringing up new hardware), and have done what they can under the limits of secrecy imposed by corporate Apple.
- kaba0 4y ago> Is there some sort of legal liability involved? I would say, definitely. Apple does use third-party components as well, with presumably closed firmware/drivers.