Hacker News new | past | comments | ask | show | jobs | submit login
Asahi Linux: Linux on Apple Silicon project (asahilinux.org)
654 points by jackhalford on Jan 5, 2021 | hide | past | favorite | 405 comments



Is anyone else ever saddened when they think about the man hours spent on projects like this (reversing software or hardware to accomplish what should be a simple goal) when all it would take is the teensiest bit of cooperation to not waste all those hours? I use waste in the sense of like trying to assemble something complicated with the instructions just out of arms reach, not in the sense of doing something pointless.

In some cases all companies would have to do is not actively hide or obfuscate things. In others it may take more effort but still just a drop in the huge bucket compared to developing a system in the first place.

I love Apple's hardware, I even (mostly) love the OS. If they too believe that it is solid - why prevent people from running what they want? The majority will come back anyway - I've run Linux for years and still ended up on MacOS for simplicity. I'll still buy Macs and run MacOS because it works for me, it's not like letting me run Linux will cost them money or something. The vast majority of people don't know what Linux even is, there is no threat there.

Please note that this comment is not directed at people who choose to spend their time on projects like this. You're awesome, I just wish you didn't have to put so much effort in.


It's cheaper to not make it work for anything else.

While this is commonly said about PC and Windows, Microsoft actually publishes pretty clear standards that Linux even reuses, because they do not control the hw vendors.

Apple has both hardware and software in one house. On one side, this means that they can escape the trap that cripples performance of competing mobile SoCs (as they don't have to deal with price competition for SoC itself), but it also means that they don't have to follow any form of standard with hw/sw interface.

Thus you have the reason for majority of hackintosh tricks, special cases in Linux for running on Macs, and Bootcamp. Because if it's quicker to "quirk it" in Mac OS X than fix it properly, it will be quirked. This goes all the way to simple things like putting HDA configuration data in wrong place in memory (so standard HDA driver is lost trying to init hw on mac, and macos is lost trying to init it on standard-compliant machine), to things like making such a hash out of boot process (in order to implement similar behaviour to old Macs) that in some models if you accidentally used standard boot interfaces you'd brick the laptop.

Similar issues are how ARM is still, effectively, not an usable open platform, especially open source boards, because making an SBSA-compliant machine that has properly done ACPI and UEFI is much harder than slapping minimal effort on top of uboot where the only reason you can run a kernel not specifically built for the device is that people complained about lack of upstream kernel, and kernel devs refused to add more machine defs. It's still a giant hack in the end.


I don't think this is the reason. It is ingrained in Apple's ethos to prevent users from tinkering with their "perfect" devices, it was a core belief instilled by Jobs from the earliest days of the organization.

Certainly, that could change given that he's no longer around, but change in a large organization often takes a long time or some external force. Since it's the most profitable company in the world, I don't expect them to go to the trouble of changing something that works for them.

Edit: I obviously don't or have never worked there, so I am willing to stand corrected if anyone who has refutes this.


The original Apple Computer schematics were distributed by the company.


Don't forget that Apple reversed course when Jobs realized that Apple was losing control with unfavorable OS licensing deals circa 1997 [1]. It's clear that since then, exclusivity and absolute control has been their mantra.

[1] https://en.wikipedia.org/wiki/Macintosh_clone#Jobs_ends_the_...


They were, and then there was NuBus, Apple's own floppy format, OS used a mix of Object Pascal and Assembly, Quickdraw, Quickdraw3D, NuBus, NetTalk,...


I don’t think those are good examples. The. ‘80s were an era of rapid evolution, in which about everybody had its own low-level stuff.

NuBus, being a standard predating it’s use in the Mac (https://en.wikipedia.org/wiki/NuBus) technically was more open than the ISA bus on the PC (https://en.wikipedia.org/wiki/Industry_Standard_Architecture: “The ISA term was coined as a retronym by competing PC-clone manufacturers in the late 1980s or early 1990s as a reaction to IBM attempts to replace the AT-bus with its new and incompatible Micro Channel architecture”)

In 1984, floppy formats were still changing all the time, so Apple picking something non standard for hardware that wasn’t used much by anybody else wasn’t unheard of.

Writing an OS in assembly was normal, too. Shipping graphics libraries with it wasn’t, but you can’t blame them for writing their own. What should they have picked? X Windows is from June 1984.

Quickdraw 3D, one could argue, should have been based on OpenGL, I don’t think it was clear that would be a winner on the desktop in 1995. Also, they started with usability in mind, supporting easy copy-paste of models working, something OpenGL doesn’t aim for (https://en.m.wikipedia.org/wiki/OpenGL%2B%2B did, but it started after QuickDraw 3D (and, like it, died))

AppleTalk, similarly, started with usability in mind, leading to the use of thinner cabling (at the time, ethernet cables had a diameter of almost 1 cm https://en.wikipedia.org/wiki/10BASE5, required terminators, etc), easier configuration (plug in the cable, and you’re good) and also predates the realization that TCP/IP is the winner, networking wise.

I don’t think anybody could have picked the


Had Copland been a success, and UNIX like stacks would never have been a consideration at Apple's HQ, specially after A/UX failure.

Only thanks to the eminent insolvency, and reverse acquisition from NeXT did anything UNIX like had a say in Apple's business strategy.


> It's cheaper to not make it work for anything else.

If I understand correctly, seeing the rest of the comment, your point is that it's cheaper to not have it adhere to some fixed standard.

While I fully understand this position, and think that it's actually something that can help a vertically integrated company such as Apple, I think that the situation isn't an either or.

Rather, things could be shades of grey. The way I see it, Apple could keep on doing their specific things because it's better for them. But once a given system (which can be as restrictive as a given combination of laptop size, generation and spec-level) is out to mass manufacturing, it becomes its own standard of sorts. As in each and every "late 2020 MBA 13" 8 GB RAM 256 GB SSD rev 1" or whatever are exactly the same. I suppose this has to be, since macOS has to know how to handle them.

If I'm not mistaken this is what DSDT patching was/is about in the Hackintosh community: make the hardware present a "known" interface, such as MBP 15 13,1 so that macOS knows what quirks to load.

So instead of Apple adhering to some "fixed" standard for all of their models for several years, they could just publish the "quirks" of each model.

You want to run Linux on your MBA? This is how it works. You're on your own adapting Linux to this, mind, but this is how it works. And of course, you want next year's model? Better get busy adapting again.

I think that would still be immensely better than the current situation and would help prevent the waste GP was talking about. I always concur with the claim that this would probably not lose Apple money. They don't make money any more through selling macOS itself and people looking to run Linux are probably not the biggest spenders on the mac app store either. But they could probably sell more macs.


Publishing such quirks list would require tracking them better, and possibly making sure they don't reveal anything bad about your devices.

As is, they remain locked somewhere on Apple's institutional secrecy and they don't have to care except for Bootcamp as they do not officially support anything else, and just publishing a "quirk database" possibly means more support calls (not that anyone will pick them up)


> It's cheaper to not make it work for anything else.

It's done also to protect the brand, make it fancy, exclusive and costly for sure. Some fashion brands even destroys tons of wear just to not let them out with cheap price. "Walled garden" is very helpful here.


It may be cheaper for Apple. For society, it's a huge waste of resources.


> teensiest bit of cooperation

Apple did put in the effort to cooperate when they added support to boot other OSes. Apple hasn’t prevented anyone from running Linux, they simply haven’t written Linux drivers for their hardware or provided a manual to do so.

Most of the effort in Asahi Linux is going to be writing drivers for hardware that hasn’t had Linux drivers written for it. It makes sense that a Linux driver doesn’t exist, because this hardware is new and no one has tried to run Linux on it before.


Apple never added support to boot other OSes on arm macs.


Incorrect. Apple's original presentations on Arm Macs suggested that booting other operating systems would be supported, and recently this has been confirmed by two of the engineers who worked on it.

https://twitter.com/NikolajSchlej/status/1339790008589242369 https://twitter.com/XenoKovah/status/1339914714055368704

Although you cannot turn off secure boot on Arm Macs, Apple has deliberately provided a path by which you can prove that you really want to chainload to a user provided bootloader not signed by Apple. From there, obviously, it will be possible to load the kernel of another operating system, such as Linux.


It'd be impossible to boot other OS if Apple didn't put a lot of work into opening the device. It'd be like iPhone and need a jailbreak if they didn't.


Yet. They also didn’t allow you to create or install third party apps on the first iPhones too


Er, like the vast majority of phones at the time. It only took them one more year to prepare and release both a dev kit and an App Store that revolutionised the industry. One year.


Vast majority of phones before 2007 supported J2ME apps, it simply wasn't much useful without 24/7 internet everywhere.


J2ME was an utter nightmare, I know because I worked in telecoms back then. Mobile app development as an utter shitshow in 2007 with no signs of it getting any better.

It just seems weird to complain that the company that made mobile apps mainstream "didn't allow it" earlier. The only reason they delayed a year is because the SDK wasn't publication ready yet. They hadn't even finalised the APIs yet and they were still very buggy at the launch of the first phones. We know that from interviews from former employees, the iPhone OS changed hugely between launch and the second phone a year later. A lot of the internal apps were extensively rewritten. Not a great time to push third party development.


Heck, when Jobs gave the first demo he had to execute a very specific sequence of actions because otherwise the phone would crash.

You’re absolutely right that the phone wasn’t ready for 3rd party apps on day 1, at least to Apple’s standards.


It’s been less than 3 months. It took longer than that for them to launch Boot Camp.


Yes I agree

Also in a similar idea, I think PostMarketOS, LineageOS, /e/ foundation, etc. are nice for privacy minded people on the short-term, but on the long term if we want things to truly change, we have to take both hardware & software independence like PinePhone & Librem 5 are doing.

If the foundations you build upon are too hostile towards you, on the long run you'll spend all your time & money fighting them instead of achieving you original goal.

However sometimes it becomes near impossible to do your own thing. Google has infected the whole manufacturing world with their own Android HAL & specific drivers and now it's impossible to find any competitive modern SOC running standard Linux decently (with GPU, Linux drivers, etc.). Which is why PinePhone has an old crappy chip and Purism took an automobile chip for their phone. And even that might disappear as IoT/Cars/Planes/etc. are using more&more Android instead of Linux. Even Microsoft is moving to their own chip.

The situation is very sad and extremely anti-competitive, but soon, the only way to run your own platform on some modern hardware might be reverse Eng (if that's even still legal by then)


Yeah, it sucks. Why are these companies so uncooperative? I have a Clevo laptop and I actually emailed them asking for documentation or some kind of help. They replied with an Ubuntu help page. I had to reverse engineer it in order to implement some features on Linux and I didn't manage to figure out everything.

It's very hard work and I have immense respect for people who are able to reverse engineer entire systems. There would be no need for this activity if companies just played nice but since they don't I'm glad that there are people out there doing this work.


I would say that I wouldn't use Apple hardware if it didn't have an OS that doesn't prevent developers from working properly - like Linux.

But really, the state of their support is so garbage I don't care what the performance of their systems is like. I know their warranties aren't worth anything and their disregard for consumer laws is absolute.

Never will I buy their garbage.


The triple negative has me confused, are you saying macOS prevents developers from working properly? I know very few developers that don't use macs, is this what you're actually saying?

What support of theirs is "garbage"? Their documentation for some aspects of iOS/macOS frameworks has been pretty bad for a few years, but that's probably not what you're referring to?


in this perspective, I'm saddened of all the electricity Bitcoin burns for futile intents. Imagine putting all these electricity for good purposes rather than making people rich.


Apple doesn't lose anything by opening up to other OSes (or they could single out free ones).

The hardware has already been sold, nobody's returning OSX for a refund.

If anything, they're missing out on sales to people that live by "Linux or bust" motto.


Back when Apple was a PowerPC platform I worked for a company that ported Linux to their devices (Yellow Dog Linux). It made sense because the PowerPC was a cheap RISC alternative so it was great for scientific applications that didn't want to pay out the nose for full-blown RISC hardware. At the time Apple saw this as putting an ugly, buggy OS on their awesome sexy hardware and it damaged their brand. Many people in Apple saw the benefit of selling more hardware but most weren't incredibly helpful because we were diluting their brand. We were allowed to do it, but Apple wasn't exactly psyched about it.


Apple supported porting a Linux variant to PPC Macs.

https://www.mklinux.org/info/aboutfr.html

During the early years, most MkLinux development occurred either at Apple or at The Open Group Research Institute in Grenoble, France. MkLinux Developer Release 1 (DR1) was released in early 1996.


I am quite saddened by I also see it as highly challenging and reverse engineering is one of those excruciating tasks. Sadly, I am not a good C programmer and I just can't get myself to write C code.

That said, with the rise of RISC-V architecture, I believe there will be viable alternatives to Apple silicon which are much more open. Building a new linux variant for those computers might be a lot less excruciating than reverse engineering Apple silicon. However, the timeline for RISC-V computers is a huge unknown.


Did Apple ever try to prevent people from running Linux on Macs? It sounds like that is what you're saying, but my impression is quite the opposite, the made Bootcamp etc.


Almost 20 years ago when they were struggling for survival they even sponsored a Linux distribution.

https://en.wikipedia.org/wiki/Yellow_Dog_Linux

> Terra Soft Solutions held the unique distinction of being the only company licensed by Apple to resell Apple computers with Linux pre-installed

A fact that I bet many HNer aren't even aware of.


...which doesn't work at all on arm macs this submission is about.


Yes, but the effort they put into that clearly shows that they are not against people installing other OSs, so there are other reasons, like the fact that the M1 macs have only been out for a month.


No, I'm saddened that people spend hours to support hardware from companies that go against users freedoms.

We should work on what matters: free software, open hardware.


It's like with iPhones. There was someone who run Linux with a framebuffer on iPhone 3GS. It worked but was useless. Additional security added in newer iPhones made it impossible to do again. And users are happy, saying that their locked out iPhone is secure and they want only apple-approved software to run on their devices...


One reason of not documenting is when something is expected to change rapidly and break in the next version anyway.


Yes.

"Oh, there's this hardware where the vendor tries actively to lock people out of other platforms and lock them into their own, they're real nasty guys.. Know what we should do? We should spend a lot of time making their product better, so more people will buy it, so they can continue their policies."


From Asahi Linux FAQ:

Does Apple allow this? Don’t you need a jailbreak?

Apple allows booting unsigned/custom kernels on Apple Silicon macs without a jailbreak! This isn’t a hack or an omission, but an actual feature that Apple built into these devices. That means that, unlike iOS devices, Apple does not intend to lock down what OS you can use on Macs (though they probably won’t help with the development).


Apple needs to give a little here.

I think it's patently ridiculous that we have to enlist the assistance of console hackers in order to have a chance at porting the most used operating system in the entire world to run on hardware that in all likelihood already happily runs it inside of Apple's labs.

> In particular, we will be reverse engineering the Apple GPU architecture and developing an open source driver for it.

This is all a noble goal, but I can't see this as being anything other than a complete and total non-starter with zero cooperation from Apple. After the street cred of getting a marginally usable OS up and running evaporates, why continue to take the effort of great engineers and waste it developing an ecosystem that doesn't care? It makes no sense to me.


> This is all a noble goal, but I can't see this as being anything other than a complete and total non-starter with zero cooperation from Apple.

I think marcan has proven he has the chops for pieces like that. The ps4 linux port had him reverse engineering the ISA for the custom risc cores that are some of the deepest firmware of a pretty modern AMD GPU. Like even the open source drivers just treat this stuff as blobs and moves on with their life, but he had to port a fix over and showed off more publicly than anyone else had.

This Apple stuff is for sure more work, but it all seems within his wheelhouse. Hence the patreon I think, attacking the size of the problem with some funding to make it more viable than a side project.


Also, it sounds like he just loves doing this. Everyone is treating him like a martyr but he’s doing what he’s good at and we’re all benefiting.


Apple sells hardware and now services. Software seems to be a cost center. So I doubt a third party OS like Linux will ever be a priority for them in their consumer products.


Software is an essential supportive pillar which stands between its hardware and lucrative value-added services.


Otherwise you have a shiny brick


My shiny brick is in space gray


They don't necessarily need to _support_ it, but that doesn't preclude being open enough to let others do the work.


They could simply release the specification documents that they obviously already have.


People aren't asking them to go out of their way to provide support or develop anything. Only to be open with their already existing documentation so that those open source devs that want can without doing unneeded work.


They may not want to encourage it. Being able to run linux comfortably would make users less dependent on the ecosystem


This project is obviously a farce, but I would not say Apple is against Linux insofar as supporting it on the backend. Their own backends are designed for raytracing/render farms and will probably always run macOS though.


Why is it a farce? I don't get what you mean. Hector Martin is really good.

Of course it might not actually go anywhere, it doesn't even have a commit yet, literally just a logo and webpage, but let's see.


I don’t think there is any rush at all for Apple to do anything to support Linux on macs that are only a couple of months old.

However I absolutely think they should produce a Bootcamp equivalent designed to support Linux on all Macs and iOS devices that Apple no longer supports with MacOS.


I don't think they have to do anything but publish the specs. That's not 'support' as far as I'm concerned. In fact its easy to argue that Apple will benefit from motivated top tier hacker feedback on their designs.


> This is all a noble goal, but I can't see this as being anything other than a complete and total non-starter with zero cooperation from Apple.

Why? There have been several success cases of reverse engineering in the past, for all sorts of popular and fringe hardware.


I am all about the hacker cred here, but you need only take a look at the most directly comparable project, Nouveau to get an idea of how ridiculous the thought is that greenfield reverse engineering of apple's custom GPU will result in something that is desktop-class usable and reliable. Please remember that Nouveau can't even do better than a framebuffer on anything newer than a geforce 10 series card. GPU development is just too eratic and fast paced to even try to keep up the effort. Anyone willing to devote that kind of time and expense into the project would be better off engineering a GPU from scratch.


The reason why Nouveau got stuck is because Nvidia intentionally changed firmware loading process to break Nouveau and not cooperating on providing firmware. Also part of the problem is that main Nouveau developers are from Red Hat and they are limited in terms of RE of actual Nvidia code. Unfortunately some of Nouveau contributors dropped their efforts once Nvidia began to be actively hostile to the project.

If you look at GPUs like GTX 650 they actually almost have feature-parity and 90% of performance. I personally used GT710 on my PC and while it super-low-end card it's really decent under Nouveau and can drive 3 of 2K displays with 75Hz and lag-free.

As for Apple hardware it's different at least because Marcan isn't as limited in terms of keeping source code purity. After all Apple dont have any Linux drivers so there is no way to RE any code that can be directly applied to Linux graphics stack.


It would be very possible and also related to RE code from the OSX stack though.


Marcan had this topic covered on his stream. While reverse enginering is always gray area there is a lot of device drivers in Linux kernel tree that was created using RE. Also Apple never sued anyone for doing this.

Developer funded by community has more freedom than Red Hat employee. There is simply no profit for hardware vendor in attacking him.

Also OSX graphics stack is completely different from Linux one and Apple only implement their own proprietary Metal API. So even if you gonna decompile Apple drivers chances of copying Apple code are very small since the only common part would be running compilee code on the GPU.


The problem with nouveau is more that it's trying to replicate the Nvidia blob driver (and then some), in that it supports multiple disparate architectures and at different levels (three generations might be a similar uarch, for instance). Replicating a single GPU driver would be significantly easier, albeit still a Herculean task. Especially if your main goal out of the gate is simply framebuffer support and maybe some 2D acceleration.

At least, this is from my experience dealing with the Tegra X1 on a Jetson board for hobby osdev.


Sounds like a fun project, honestly. I wonder how much 2D-only “legacy” functionality even exists on the thing. I expect not much. Going for something like Vulkan right off with a mind for it probably being built to accelerate Metal might be a viable angle.

Total spitballing though. Once they come out with the 16” MBP I may have fun poking at it.


You can read about the architecture in their docs:

https://developer.apple.com/documentation/metal/gpu_features...

It's a fairly generic TBDR architecture based on it's slowly-replaced PowerVR heritage and it still has fixed function hardware in the core of the architecture.


See: the state of nvidia support on Linux today.


Several mobile GPUs have been reverse-engineered so it's not as hard as you think. As for the ecosystem, if users care enough to pay for it then it doesn't matter how little Apple cares.


Small variants/extensions of mobile GPUs have been shoehorned to work with existing drivers or provide very basic framebuffer capability. This isn't exactly vulkan running on Apple-silicon level of functionality. Maybe Apple's implementation isn't so alien after all and these great folks will pull it off. I hope they do, but I'm still tempering my expectations.


Dissecting the Apple M1 GPU, part I: https://rosenzweig.io/blog/asahi-gpu-part-1.html


They could offer an equivalent to Nvidia's PTX ISA for compute, and possibly documentation like Intel and AMD offer for their GPUs. Offcourse, the first thing the latter would do is undermine Metal, so I don't think that's likely.

Nvidia PTX-level openness for GPU-compute would be nice though.


It was not different for PC for many years. Most of drivers were reverse-engineered, including GPU ones.

That said, hardware was simpler back then. Implementing drivers for modern GPU is a hard task, may be an impossible one. It’s like writing a second OS.


Well put, it's very confusing that Apple is willing to reduce the matter of Windows on M1 to a matter of licensing, but Linux on M1 is somehow seen as competition. I was gonna buy an M1 Mac Mini to replace my aging desktop, but Apple can forget my patronage if I can't control the hardware I own.


Just a reminder, the Patreon is not fully funded. If people really want to see this happen, dropping a couple dollars a month to help support the project is the best way.

https://www.patreon.com/marcan


With https://github.com/sponsors/marcan also present as an option.


Which IIUC should give him a larger fraction of your donation (all but payment processor fees for now, minus 10% after the beta ends), or you could pledge at https://liberapay.com/on/github/marcan/ and let him choose to take whatever fraction he wants (also excluding processor fees, forever ±).


Why there is VAT on every pledge? Using Patreon is not buying (that is what I believe, that is how similar services work in my country, they don't add extra tax).


Is this the same project?


Yes:

Asahi Linux was founded by Hector Martin “marcan” after the launch of the first M1 devices.

https://asahilinux.org/about/


No, Apple actually supporting it (in the same way that Intel, AMD, ARM/Linaro et. al. staff resources to support their hardware on Linux) is the best way. But paying productive engineers via crowdfunding isn't an awful workaround.


We can't change what Apple does. Gnashing your teeth about that isn't going to help.

What we can do is support this Patreon.


Or do not buy the hardware..


If you don't buy the hardware, why do you care if it's supported or not?


Very interesting overall.

> Apple allows booting unsigned/custom kernels on Apple Silicon macs without a jailbreak! This isn’t a hack or an omission, but an actual feature that Apple built into these devices.

Indefinitely? How do we know it's a feature vs a temporarily convenient oversight?

> Our goal is not just to make Linux run on these machines, but to polish it to the point where it can be used as a daily OS. Doing this requires a huge amount of work to be done, as Apple Silicon is a completely undocumented platform. In particular, we will be reverse engineering the Apple GPU architecture and developing an open source driver for it.

This looks like the major bullet point. The wiki is currently empty, but while it's WIP, it would be nice to see some of the major milestones or breakdown of the goal mentioned above.

Best of luck to Hector and the contributors!


First of all the feature wasn't available in the initial Big Sur release and it only got available during the Betas for the first minor patch. Second of all, some Apple developer stated on Twitter that (during M1 unveil) he's finally able to show all the boot policy work they worked on the past year(s) to allow users to boot foreign OSes and without opening up holes for attackers.

Basically it boils down to: they could have just used iBoot without changing it at all to keep it as a brick like the iPhone/iPad/Watch, but instead they invested plenty of resources to allow it.

With all that work done to allow it, I'm sure there'll be plenty of people inside of Apple who'd protest if someone changes their mind and decides all this has to go away.


Kind of like all the work Sony did to allow Linux on the PS4 only to kill it later?

You don't own a mac. You can only do on it what it is profitable for Apple to let you do, today.

As much as I respect the incredible RE skills required for this task, I feel like this is shaky foundation unless an unpatchable bootrom exploit is discovered. Even then new models would be patched leaving existing users with an insecure platform that they can't replace when it breaks.


You don't really own any high-tech stuff anyway (with that interpretation). You can't boot your Intel of AMD CPU without their signed and sometimes encrypted code. You can't even initialise a single core, let alone the DRAM controllers.

Everyone likes to point at Apple, because that's easy, but it's neither new nor big nor special. There are practically three things at play:

- root-of-trust, if you have a better solution than CA-based signing, by all means, let the world know

- NDA/IP/Lawyerisms

- Apple and many others aren't selling hardware, they are trying to sell experiences or ecosystems, and that is the only reason they exist at all and also the reason a lot of the beige box hardware companies are either less visible, less profitable or both

Is it fun? No. But it's not some sort of automatic malice or 'haha you don't own things but you thought you did' all the time either.


> You can't boot your Intel of AMD CPU without their signed and sometimes encrypted code.

Except that Intel and AMD don't care what you run on your machine, they don't lose money if you don't run their software.

When you run Linux on a MAC, Apple isn't getting money from their iCloud subscriptions and from the store so they have a motive to stop you from escaping the walled garden.


You don't need iCloud to use macOS. And macOS itself is free, as is their awesome office apps, XCode and a lot of other useful apps and services.


Of course but if you run Linux they're sure you will never earn them any money from these services.

So at one point they could decide that they don't want people to use Linux on their Macs and there's nothing you could do.

Look at what happened to CentOS.


If they can sell you a mac for $1500 I don't think they are very concerned that you're not spending 50 bucks a year on iCloud.

I mean, if they prevent Linux you probably won't buy a mac at all, you won't prioritise using an M1 macbook over using Linux if you're a hardcore Linux nerd.

Bottomline is that yes they are greedy, but they are not trying to stop people from installing Linux on macs just to perhaps earn some extra dollars.


Counter point: they have no problem charging $1000+ for iPhones and lock them down to only run the operating systems and apps they approve because consumers of them were largely not technical enough to understand they don't own their own devices.

Apple is motivated to do this as soon as they feel they can get away with it and keep profits as high or higher.


I’m not saying they have any moral objections to locking the macs, it just doesn’t make any financial sense. Enough people want to run windows or linux for them to make the effort to make that possible. It’s also more in the spirit of PCs to have this possibility.

For phones, basically nobody wants to run android on an iphone, so it makes no sense to make it possible.

Keep in mind that they don’t lock down iOS because they hate our freedoms, it’s because it is much harder to make it safe and secure if it’s also very open. And since the market of people wanting to run other OSs is so small, they don’t want to take the additional cost.

As to owning you device. Unless you buy real hand stitched shoes with leather soles, your shoes are most likely completely impossible to repair, they’re basically molded rubber. It’s not because Nike hates freedom or even because they want you to buy new shoes more often, it’s because it’s so much cheaper to make shoes that way. But would you argue that you “don’t own your sneakers”?


How do you know the number of people that want this, and how large is the number of 'enough', and what other numbers come in to play? (Number of incidents, number of happy users, number of systems to support, number of binaries to consider during upgrades, number of sales... and is 'enough' a percentage? An absolute number? And how high does it need to be? And to what degree does it need to align with the goals of the product teams?)

My gut feeling would say: a bunch of hackers would be happy if they can hack on their code on Apple hardware but run plain FreeBSD or Linux while doing it. But that is not something you run a multi-billion business on...


My argument is that Apple wouldn’t be losing money by allowing people to install Linux on macs, it’s not about “preventing people from using macs without paying for iCloud”.

But in general, running Windows or Linux on macs is not uncommon, it’s definitely not just for hackers.

I don’t have any numbers at all but I’m sure nobody would doubt that it is orders of magnitude more common than people wanting to run homemade OSs on iphones.


iCloud is free unless you pay for extra space or features, and most people I know of don't.


PS3, and supposedly that was because some jurisdictions treated game consoles and computers differently for import tariffs (computers being cheaper to import), but those jurisdictions changed to not having a distinction.

Agreed with the underlying point you're making though. They allow this because it aligns with their current strategic objectives, and changes to those objectives can be arbitrary and capricious, at least from the viewpoint of the consumer.


I remember it was because geohot "jailbreaked" the PS3 using the Linux capabilities to some extent.

But I could be wrong.


There were two versions of the PS3: The original model and a slimmed down version released after a few years.

the timeline was something like this:

- Sony released the original PS3 with Linux running under a hypervisor that locked certain things (e.g. 3D rendering and their DRM)

- Sony released the PS3 slim without Linux. They claimed they didn't have the resources to make Linux run on it. (We later figured out all that was required were a few incredibly simple kernel patches)

- geohot found a somewhat unstable hardware glitch that, with some luck and a few tries, could escalate to hypervisor mode and enable e.g. 3D rendering from Linux. Their DRM was still untouched at this point and no one really cared.

- Sony released an update for the old PS3 models to disable Linux as well citing "security concerns"

After that more people started looking into the PS3 and marcan, me and others at fail0verflow eventually figured out their security wasn't all that great. It was actually so bad that we could calculate their private keys. Then they sued us for that but that's another story.


Got a link to that story?


zarvox already linked to the talk we gave at https://media.ccc.de/v/27c3-4087-en-console_hacking_2010.

We talked about how you could compute private keys but didn't release any keys for obvious reasons.

Essentially Sony had N different sets of keys protecting different levels of their system (e.g. one keyset for the hypervisor and another one for the kernel). What we found allowed to compute the private signing key given two public signatures.

Due to some technicality this meant that you needed another bug which allowed to extract these plaintext signatures. (The best comparison today would be that we found a universal code execution bug but you still needed to find your own info leak to defeat ASLR which we either didn't share or didn't have for all keysets).

What happened then was that geohot used this flaw we found together with a simple bug that leaked two plaintext signatures to extract one of the most important keys and published that one on his website.

Sony responded by suing him and us as well - probably because they assumed that we worked together. After a few month they reached a settlement with geohot where he promised to never hack any Sony product ever again. At the same time they simply dropped the lawsuit against marcan, me and a few other friends from fail0verflow without having ever served us. Those months resulted in quite some stress for me and personal and legal issues for another friend.



I actually think other os got canned before the jailbreak. If I recall correctly it provided extra incentive.

They may have wanted to make it harder to jailbreak. Another argument is that they weren't profitable to sell as computers but largely become profitable via the money they made off games sold for the platform including money paid by game developers.


The same goes for any device you can buy today. We should demand more of manufacturers in general, I agree.

But you cannot expect that Apple should give you a legally enforceable contract (or whatever) pertaining to a product you haven't bought yet and they haven't even made yet.

The fact that the boot process on the M1 chip is explicitly not locked down on release is at least showing a modicum of goodwill.


I'd say there might be ongoing work to support Windows/BootCamp but in true Apple tradition (or maybe due to MS delays) it is being kept secret


Apple's outright said it's a matter of Microsoft agreeing to license Windows on ARM for consumers. Right now putting Windows on an ARM Mac is about as legal as Hackintoshing.


I don't think that's what Apple said at all–they just said the ball is in their court, which means that they want Microsoft to write Bootcamp essentially.


Yeah. Someone - cough cough Microsoft - would need to be convinced to write a Boot Camp Assistant app equivalent (okay), a Windows bootloader (okay), various device drivers for Apple Silicon hardware revisions for Windows (big ugh), graphics drivers for Apple Silicon GPUs for Windows (VERY big ugh). Microsoft will need to very motivated to distribute Windows on ARM for this to happen, even if Apple gives them access to all the info they need which is not a given by any means.

...I don't think this is going to happen, and Apple probably doesn't either.


Apple have developed Bootcamp and provided drivers so far for Intel Mac. But shipping Bootcamp for Windows ARM would be an EULA violation until Microsoft loosen theirs conditions. Changing this is literally step 1.

Wether Apple would develop Bootcamp for ARM or not is purely theoretical discourse until then.


The only driver Apples needed to develop for Windows are Mac specifics though, like the stuff that was managed by the T1. Not trivial, but not the end of the world to have to make. Things like wifi drivers and especially the graphics drivers are just the chip vendor's standard preexisting Windows drivers.

Apple is now the vendor of at least the GPU. I don't think they're going to write a Windows driver for that - the incentives are just not there.


If I remember correctly Windows on ARM is still limited to 32bit Apps.

And you can actually download Windows on ARM from Microsoft Insider Preview for Free. And run it on top of Parallels Desktop 16.


Windows on ARM supports 64bit ARM apps.

What you were possibly remembering was that Windows on ARM when it was first introduced only supported emulating x86 apps. Although x64 emulation is currently in preview.

https://docs.microsoft.com/en-us/windows/uwp/porting/apps-on...


Legacy x86-64 app emulation has only just appeared in alpha form and still has massive compatibility issues.

I'd still call it something we hope to see in the future, instead of a working proof of concept.

https://www.youtube.com/watch?v=OhESSZIXvCA


That would make a lot of sense. Windows is in a tight spot right now because OEMs have lagged on ARM. Apple could offer MS a way out of that, while at the same time giving people one more reason to spend money on a Mac.


There is a significant number of people working at Microsoft who use Windows on a Mac as it's generally nice (and expensive) hardware. I'm sure they'd be thrilled to see Bootcamp operational on ARM Macs.


Right, if MS is serious about Windows on ARM, they should support the Mac as a show case and also to allow all future Mac buyers the chance to run Windows. Of course, Apple can't announce much until Microsoft makes an announcement about Windows on AS Macs.


Is MS not busy looking at doing their own ARM silicon for future Windows powered Surface devices after release of M1 and the failure Qualcomm with the Snapdragon 8cx (we just use ARM reference designs) ???.

They do have the chops for it since they have done Xbox and Hololens and various other devices in-house.


It's a rumor. If they're starting now I expect results in 2-5 years and in Azure first.

> They do have the chops for it since they have done Xbox and Hololens and various other devices in-house.

Not sure about the Hololens, but the XBox contains an x86 AMD processor.


Maybe they are already developing their own "MS1" in secret ?

But even if they are, it would make sense to release Windows 10 for the M1 and getting Win-developers to start porting their applications to ARM, so they could leap-frog Apple on ARM if they manage to build a 'better' ARM SoC



Or they could take significant market share away from Windows, possibly permanently, by offering increasingly more performant machines. Seems like a better move to me.


Linus Tech Tips actually just released a video a couple of hours ago where they compared the Surface Pro X SQ2 with the M1 MacBook Air. It was not pretty.

https://www.youtube.com/watch?v=OhESSZIXvCA


So basically, the M1 Macbook Air is two to three times faster than the SQ2, including comparing ARM Windows on the SQ2 against ARM Windows in a VM on the M1 Air.


Relatedly, I wrote this on Twitter a few weeks ago: cargo build of sccache on a Lenovo Yoga C630 (Snapdragon 850) in WSL: 4 minutes 55 seconds. On a Macbook Air M1: 55 seconds


WSL 1 or 2? WSL 1 has very slow disk access, so compiling can be pretty slow. I.e. I would expect WSL to be slower for disk reasons even it was running on an M1.


The virtualized Windows comparison was just brutal.


It’s 100% on the mark that video.


He’s off on the strategic focus of Apple (where he says that the M1 benefit because Apple is taking a mobile OS and adapting it for the desktop vs Microsoft is taking a desktop OS and adapting it for mobile architectures. The truth of the matter is that Apple has been consistently making CPUs for about a decade that blow away the competition on compute per watt. Like 2-3 years before the industry catches up to where Apple was. They’re just bringing that same power to laptops/PCs as they’ve saturated what that buys them on mobile (not fully but it’s not a big enough sales driver as mobile sales growth has slowed). That’s why you see AirPods and M1 - “where else can we deploy our perf per watt and vertical integration advantage”.

As for “why are there so few ARM versions of apps”, that’s purely the vertical integration piece again. Apple makes it very clear the old tech line is dead so developers have a clear thing to explain to their management. Microsoft tries to keep everyone happy which means devs are like “I’ll wait until this actually has industry buy in” which then Microsoft uses as “well there’s no interest here and maybe the tech won’t work out/vendors won’t materialize” and “we can’t ask our customers to pay this transition cost”.


Is there any point of running windows outside of intel processors? I'm aware they have an ARM offering but it's not clear what the "killer apps" of the OS/arch pair are.

I'd think linux/BSD drivers would be the concern here!


It's a feature because it's literally a whole set of command line options and settings in their boot policies, which is documented in man pages, with all the warnings about normal users not having to use any of this that you'd expect.

It's a whole pile of code that Apple doesn't need, and could've just removed or never written in the first place, that was written explicitly and only so people could run unsigned kernels on Apple Silicon macs.

Yup, the wiki is almost empty - I was hard at working getting the site/IRC/branding/etc worked out. Expect things to pick up steam on that front starting tomorrow, as I will now focus on hardware documentation and getting things through low-level boot bring-up.


This is really promising, but I do think scepticism is warranted - Apple loves their walled gardens.


There's a not-insignificant number of people that want to do more with their Mac than run software from a single marketplace.


Yes, I am one, but is Apple really better off selling more machines but having fewer people inside their eco-system?


Presumably those people would just not buy Apple hardware if buying into the ecosystem was a requirement. So if that number is non-zero, and Apple sells hardware above cost, then yes, Apple is better off selling only its hardware and not its services to this small subset of the market.


Thats the thing though. The hardware is so good that there are people who would run Linux on the Mac if they could, but since they can't they cave in and just run MacOS. I have an M1 and its so much better than my Linux XPS 15 that I just end up using the M1 (and getting sucked into their eco-system). And this is just their first release!


But it's not like they get a whole lot more money from someone being 'in the ecosystem'. The main thing would be an iphone, but even counting that I think that they'd make more selling the hardware with a little flexibility than hoping to lure people in. The fact of the matter is that the M1 isn't just a good laptop, it is the best, and the next round will be better. That's enough of a sales pitch that honestly the software might be holding them back.


Or they could, I don't know, help Linux OEMs reach that level.


they may be better off in future antitrust proceedings


> Indefinitely? How do we know it's a feature vs a temporarily convenient oversight?

I would point out that Apple has permitted booting alternative operating systems throughout their m68k (at least the m68ks that could meaningfully boot Linux or a BSD derivative) [1], PowerPC [2], and Intel [3] phases. It's only on Intel they actively made this a feature, because Windows Bootcamp probably allowed to sell them a certain percentage more Macs.

The only reason to believe they would change this is that the Apple Silicon architecture changes would have Apple be interested in the Mac being some sort of equivalent to an iPod Touch. I don't really see Apple being interested in that, and Apple reps have gone on record to argue similar points as well.

[1]: e.g. https://wiki.netbsd.org/ports/mac68k/ [2]: e.g. https://wiki.netbsd.org/ports/macppc/ [3]: Uh, anything that boots on x86 EFI will probably boot.


> The only reason to believe they would change this is that the Apple Silicon architecture changes would have Apple be interested in the Mac being some sort of equivalent to an iPod Touch.

I don't see any great difference/reasons why the iPad pro is locked, and a MacBook isn't.

I hope Apple "computers" will remain unlocked, but I'm not sure I see a real business case for Apple to keep them open.


And at that Bootcamp is a BIOS emulation layer. You don't need to go through the bootcamp process to run operating systems with native EFI support such as Linux, Windows 7+, etc.


I don't think recent Intel macs even support "Boot Camp" (CSM) any more. You need to go through UEFI, Boot Camp now is just a software wizard for getting UEFI Windows installed.


You're totally correct, it is indeed just putting the drivers on the installation media and partitioning magic.


On 2017+ machines you don’t even need an external drive, during the partitioning setup it carves out a temporary partition to store the contents of the ISO + their drivers, windows installation customisation etc. And it’s all deleted after the installation of the drivers after windows is installed


My 2015 Mac (running Big Sur) did that temporary-partition dance too.


It's one of the easiest windows installs you can do.


Apple adds limitations to protect the system: "too strict!"

Apple gives the chance to disable these limitations to power users: "they should be disabled by default!"

Apple disables limitations: "temporary convenient oversight?"

...


It's a bad faith argument. The presupposition is that Apple is inherently motivated to actively lock things down, because that's what they do with the iPhone. This glosses over that Apple has no reason to actually do so, only has reasons not to do it on the Mac, and has gone on record saying they won't treat the Mac as the iPhone. It's based on the notion that Apple would be against free booting a priori for some reason.

Mind you, not all bad faith arguments are unwarranted. I kind of get where it comes from. But it's important to recognize that's that what it is, and there's no reason to actually believe it.


> The presupposition is that Apple is inherently motivated to actively lock things down, because that's what they do with the iPhone. This glosses over that Apple has no reason to actually do so, only has reasons not to do it on the Mac, and has gone on record saying they won't treat the Mac as the iPhone.

What is the difference between an iPad pro and a MacBook? If Apple can get away with a 30% tax on all commercial software, and arbitrarily manage which applications are "allowed" - why would they not want to extend that to their laptops? If they still get people to buy and developers to develop?


> If they still get people to buy and developers to develop?

Well they won't get away with that at all, especially not in the long run as people abandon ship to platforms that do allow free development and tinkering. Apple is still a hardware company with hardware sales making up the overwhelming majority of their profits (over 75%). It would be beyond stupid to risk that just so they can live out a control fantasy, especially because they don't need to live out that control fantasy to make good money from the Mac App Store.


Well they won't get away with that at all, especially not in the long run as people abandon ship to platforms that do allow free development and tinkering.

Before the M1 Macs shipped, Apple's Mac revenue hit an all-time high of a smidge over $9 billion [1]. During a global pandemic and economic crisis.

The Mac will be 37 years old on January 24, 2021 and yet, it continues to gain momentum, not lose it. Between 1984 and now, not a year has gone by without the same narrative: Apple is doomed if they don't change their ways…

The M1 Macs are probably selling like proverbial hotcakes—we'll find out on January 27th [2].

People seem to forget that the Mac mini, the MacBook Air and the 13-inch MacBook Pro are the entry-level, consumer oriented computers in Apple's lineup. These machines are the opening act.

And even as stunningly fast as these machines are, especially on a performance per watt basis, we haven't even seen the take-no-prisoners, kick-ass professional Apple Silicon Macs yet.

We’ll probably see Macs from Apple that don't have the space and power constraints of the current lineup. If they cranked the current SoC beyond the current 3.2 GHz, added more cores and started at 16 GB of RAM… they would capture another huge chunk of the market, including a significant number of Linux users…

[1] https://www.apple.com/newsroom/2020/10/apple-reports-fourth-...

[2] https://www.apple.com/investor/earnings-call/


You realize that the Mac App Store has been around for 10 years and people have been saying that Apple is going to lock down MacOS for just as long?


The reason people assume apple will prevent you from doing what you want with your computer, is because it’s the logical consequence of the strategy they’ve followed for the past 10 years over their whole product line. From phones, to cable, to messenging software. They’re into vertical integration and walled ecosystem.


Simply asserting this without evidence does not make it so.

If Apple truly had this strategy they're doing a horrible job at it. Mostly since you are free to boot (or work on doing so at least) NetBSD and countless other things on practically every Mac they've ever released, including the latest ones. They're doing a horrible job at communicating this strategy too, because they're communicating the opposite. For this Apple Silicon phase, it seems they've also missed a huge opportunity to finally execute on this strategy by spending a little time and money to develop the tools to do the opposite of that strategy and give users a way to boot unsigned kernels.

I just don't buy it, sorry. I don't even get why Apple would want to do this outside of sheer malice.


> Simply asserting this without evidence does not make it so.

Goes in both directions.

> Mostly since you are free to boot (or work on doing so at least) NetBSD and countless other things on practically every Mac they've ever released, including the latest ones.

Gatekeeper wasn't a thing either, until it was, indeed, a thing.

> They're doing a horrible job at communicating this strategy too, because they're communicating the opposite.

Surely that's the whole point of a trap?

> For this Apple Silicon phase, it seems they've also missed a huge opportunity to finally execute on this strategy by spending a little time and money to develop the tools to do the opposite of that strategy and give users a way to boot unsigned kernels.

Sure, because right now they're trying to sell the idea of M1 Macs.

> I just don't buy it, sorry. I don't even get why Apple would want to do this outside of sheer malice.

App Store, censorship, ... You could turn that around and ask why they would want to lock down their iOS devices, and why you think that those reasons wouldn't apply to Macs.


>Surely that's the whole point of a trap?

I've been hearing about this supposed secret Apple plot to lock down the Mac and take away third party software distribution and operating systems for a decade now. If this is indeed Apple's plot, then they're really slow at implementing it. Maybe they'll sort it out in another decade.


they never had a real advantage on the desktop / laptop that would justify locking you in, until now.

They could do it on mobile thanks to the vastly superior user experience.

When steve jobs announced itunes on windows he said "hell froze over". That should tell you how much they take openeness into consideration.

I'm still waiting for iMessage to be an open protocol, or for my iphone to be able to use a standard charging cable...


> Surely that's the whole point of a trap?

I mean, this is exactly the bad faith argument I was talking about right here. If you want to view this as smoke and mirrors until they "trap" you by all means go ahead, but it does shut this conversation right down.


We've seen Apple remove competition from the App Store at will.

This is not theoretical.


I'm not sure how that means anything when it comes to locking down Macs. If you're trying to make a general argument "Apple is capable of doing bad things", that's of course trivially true but does not at all imply they're interested in locking down the Mac's bootloader?


What “competition” have they removed?


Apple is trying to make a trusted computing platform (for various reasons) with the side-effect that activities that they do not feel like supporting (for various reasons, money and experience being the first that come to mind) are not available. It's not a hand-wringing evil person in a throne trying to think of ways to make people sad.


I see nothing wrong with any of these speculations. If you or Apple don't like speculation the answer is for them to communicate their intention.


They've plenty communicated their intention to not turn the Mac into the iPhone/iPad. And besides which, it would be a disastrous product strategy to do that, from a company that's absolutely top-of-the-ball when it comes to product strategy.


There are entitlements on macOS that are not provided outside of the App Store, such as NetworkExtension API VPNs.

There is also no way to turn off the persistent, hardware-serial-number-based APNS connection to Apple, tracking the system from IP to IP whenever it's on, even when no apps are running.

You also can't wipe and restore a mac with filevault without an online reactivation from Apple, even if you have local bootable install media.

There are several concrete, technical advances toward the thing they are claiming not to be doing. macOS is indeed becoming more like iOS every release. It's not just unfounded paranoia.


There is also no way to disable your persistent radio connection on your cell modem (except for turning it off), and your network provider will know your location and radio tower etc as well. Same applies to your mac: you turn the appliance off and then the connection is off as well. You turn it on and it's connected again.


The matter of Filevault isn't necessarily a bad thing, for many people it's a highly desirable feature. I like the fact that iOS activation lock significantly lowered the value of stolen iPhones; I look forward to the same happening with MacBooks.

And if you don't like it, just switch it off.


You can't switch it off. Every current mac requires an online reactivation, even ones without an activation lock.

How could activation lock possibly work otherwise? Once wiped, it doesn't know if it's activation locked anymore.



Sorry, that seems like a total non sequitur to me. What about that (an outage + a failure to correctly handle the outage on the clientside) suggests Apple is planning to lock down macOS like iOS, either in terms of hardware or software?

Or rather, maybe you'd like to explain what you think Apple would have to gain from doing something like that?


You cannot start any non-Apple applications unless Apple explicitly allows them and keeps a list of what and when you are running. Looks totally fine...


Again, I'm having trouble making the leap from this:

"Apple checks which macOS applications I run in order to verify that the developers credentials are still valid and not expired/revoked, but only for macOS apps and not executables in general, and you can still open apps that are not signed with a Developer ID using a manual bypass" (which is certainly not ideal but seems like a reasonable security compromise. There's no evidence they're keeping a list of this information anywhere.)

to:

"Apple will lock down macOS and make it utterly impossible to run any executable or even scripting code that hasn't gone through a strict review process"

Since you're unwilling (or unable?) to explain that leap without just spouting pithy 3-word comebacks, I guess we're done :)


I suggest you read the comments in the linked thread. Why do I have to repeat those who can explain better than me? It's pretty clear that the current state:

1) cannot be called "fully unlocked",

2) more locked than what people used to have, even on Apple devices.

It might be fine for you, but it certainly is potentially bad for privacy and freedom. Look up keyword "tor" in the thread if genuinely want to understand and not trolling.


Maybe you should go back and read the article that spawned this thread. Apple literally put engineering time + effort just to allow 3rd-party OSes to be run on their chip. That doesn't strike me as the move of a company that wants to lock down their OS.

You can disagree with the tradeoffs Apple decided to make in the name of security/privacy, fair enough. And you can certainly blame them for their mistakes (like not thinking to handle a case where their Developer ID verification servers were offline). But practically, these tradeoffs don't really hamper almost anyone's usage of the OS, and the few people for whom it does can disable them.


But isn't it possible to turn off System Integrity Protection and Gatekeeper?


> They've plenty communicated their intention to not turn the Mac into the iPhone/iPad.

Of course not, because they need to differentiate. This doesn't mean they renounce their plans to further lock down macOS. Running non-appstore apps is getting harder and harder each year.


Apart from the fact they've actively stated (repeatedly, during their main presentations) that running arbitrary code on a mac will not be changing.

For a company that seems sometimes to go out of its way to not give any information on anything it doesn't make sense to clearly and concisely make that statement.


While at the same time continuously tightening the noose on Gatekeeper. I wonder why people wouldn't take their word for it...


This is always trotted out.

There’s not a single piece of access I’ve lost. It’s a couple of dialog boxes.


> running arbitrary code on a mac will not be changing.

i wonder how much of this is thanks to peoples "gnashing of teeth" about mac getting an iphone lockdown

in the end its speculation, but id wager a guess apple wouldnt have a big problem locking down macos if people didnt make a big deal out of it


It's almost certainly not due to "gnashing of teeth." They've always marketed the MacBook line as a general computing device for power users. The idea that they would make it impossible for developers to use their primary computing product is ridiculous. They know how many of these things they sell to students, developers, etc.

Just a note - it's often very easy to measure the validity of your ideas by considering the economics of the ideas. Apple effectively neutering development on their premier general purpose computer would obviously reduce the amount they sold. The same isn't true for the iPhone, which effectively no one develops on.


It's also very clear that Apple sees the iPad Pro—not the Mac—as their vision for locked-down general purpose computing. I honestly wouldn't be surprised to see a notebook iPad with a fixed keyboard, or a desktop iPad in the shape of a small iMac. These seem unlikely and perhaps absurd... but not nearly as absurd as locking down the platform Apple expects developers to use.


They have communicated their intention openly. Just listen to any of the podcasts where Gruber interviews senior execs about this.


>How do we know it's a feature vs a temporarily convenient oversight?

Considering the level of GUI work that outright supports this feature in recovery mode on an M1, I'm inclined to think it's not an oversight.


>Indefinitely? How do we know it's a feature vs a temporarily convenient oversight?

Basically nothing can be known to be indefinite. But Apple has signaled that they'd be open for ARM Boot Camp if Microsoft was to sell non-OEM Windows for ARM licenses. So it seems like Apple might consider multi-booting a feature.


> Indefinitely? How do we know it's a feature vs a temporarily convenient oversight?

The fact that Apple documented it.


If Apple would cooperate just a tiny bit, I assume the Linux community would gladly do all the rest for them. The M1 Macbooks are actually quite reasonably priced IMO. Right now it's even hard to find an AMD Ryzen 4000 laptop with >FHD screens...

If you get Linux developers onto your platform, you unlock the server market, I assume. I don't get why Apple would not open that possibility for their silicon future.

I think a downside to have Macs running Linux would be extended hardware support and evasion of their obsolescence strategies.

Overall, I think they could win a lot, so there is a desperate hope they change their minds on that. At least, I would be completely lost on them, if AMD manages to match their performance and there gonna be well-screened AMD laptops.

Apple, you got this current advantage to win people like me over. Once the others catch up, this opportunity will probably not arise again, as I will never ever settle on MacOS or Windows, especially with the current course of increasingly restricting how I could use a >1.5k€ device.

If the M1 Air had proper Linux support (at least committed), I would buy right now in an instant. I naively believe, if you don't get Linux people like me, Apple's silicon endeavour will not get a hold in the larger CPU/GPU market.


> Indefinitely? How do we know it's a feature vs a temporarily convenient oversight?

Could not the same be said for any computer manufacturer? How do we know for sure Dell won't start locking down future XPS models?


Seems to me that it would also be a great opportunity to port each of these builds to a homebrew package.


Except for potential Anti-trust litigation, I don't see any reason for Apple to 'not lock' its M series computers from boot loader to app store in the near future as the walled garden + vertical integration has been their most successful business strategy.

One should be naive to think that the conversion to M-series wasn't done with the intention to lock the macOS platform akin to iOS.

I wouldn't be even surprised if doing so didn't attract anti-trust issues as they got away with iPhone, iPad which are not lesser computer than a PC especially since several applications are becoming 'mobile first' or even 'mobile only'; So it's ridiculous to compare smartphones, tablets to game consoles whenever this topic is brought to the discussion.


> Indefinitely? How do we know it's a feature vs a temporarily convenient oversight?

Apple could take most of the speculation/hostility away by simply giving their word for it. But they don't ...


A lot of time, money and effort invested to support a platform whos creator is unwilling to provide support.

I think it's part of the Linux ethos to run on everything, but I also think this kind of effort is ... not wasted, but I feel like it could be spent more efficiently.

Still looking forward to hear about the first successful boots and the epic reverse engineering feats.

Just wish this kind of stuff wouldn't be needed anymore and companies would just release their specs already.


> A lot of time, money and effort invested to support a platform whos creator is unwilling to provide support.

If Linux only ran on hardware which the creator was willing to provide support, Linux would not exist. Linux was created in spite of Intel, Nvidia, AMD, etc etc. Support from the makers only came later.

Linux was originally an OS created by people who wanted to do things the OEMs and commercial vendors didn't support. While it's cool that a lot of manufacturers support Linux now, that's not where we came from.


Maybe you're over-interpreting "support". The x86 PC platform at least provided documentation for OS developers while Apple Silicon doesn't.


Not sure what you are getting at here. Getting Linux to run on the M1 already works... it's ARM Linux. It already runs on a VM on the M1 unmodified. I suspect we'll see Linux booting on M1 hardware within 6 months, likely less.

What is going to be a much bigger struggle is getting the drivers for all the various other bits of the architecture working properly. The GPU is the biggie, but networking drivers, power management, audio drivers... the DSP, etc etc.

All of the the things which are going to be difficult to get right on the M1 were an uphill battle on x86 as well. And no, Nvidia never provided documentation for their GPUs, it was a long time before we had good graphics support on Linux. Even audio drivers were a mess. Wifi modems were problematic well into the 2010s.

Most hardware makers still don't document hardware features, the good ones provide binary drivers, and plenty of others rely on known interfaces so they work with older drivers.


> it was a long time before we had good graphics support on Linux

<implying that we actually have good graphics support>

In practice we have _tolerable_ drivers (depending on any given year), typically with terrible power management... and it took 20 years - on a platform that was much more transparent than what Apple will ever provide, given half the chance.

Doing it all again on an even-more-wilfully-opaque platform, built by a company that is GPL-hostile and does not care for interoperability, seems fairly masochistic and self-defeating in the long run. I’d rather see great hackers, as the dude here, spending their time doing amazing things for companies who aim to provide the “good ARM laptop” experience for Linux. That I would pay for. We didn’t really have the chance to do this for x86 since Linux started with zero marketshare; that’s not the case anymore, we have a decent critical mass both in terms of hackers and consumers, we should leverage that imho.


> on a platform that was much more transparent than what Apple will ever provide, given half the chance.

I spent 15 years screwing around with X86Config files trying to get Nvidia support working. The idea that anyone could be less opaque than that seems unlikely. Well into the early 00s I had a laptop with a worthless internal wifi card and an expensive aftermarket card because the internal card had zero support.

I have no idea how transparent Apple is going to be regarding their technology, but it can't be any worse than what we dealt with with Nvidia prior to getting their binary blob solution out.

Apple is one brand, one stack. Even if Apple offers no support at all, that is going to be a hell of a lot easier than fighting hundreds of OEMs building one-off cards and onboard sound/ wifi/ video drivers with no interest in Linux.

I'm not talking up Apple here. But it really seems like people have forgotten what a shit-show driver support was on Linux for decades. And however uncooperative Apple is, just the fact that it's a single monolithic stack is going to make it massively easier.


Let's ignore the money pumped by IBM and others.

Linux exists because POSIX subsytem on Windows never had much love, had it been OS X like and Linux would have stayed an hobby OS.


Seems unlikely.

The success of Linux had a lot more to do with performance, resource requirements, and security than POSIX compliance. You could get a lot of the essential pieces running on Windows, it just required spending twice as much on hardware to do it.


Quite unlikely.

Linux in 1994 didn't had any of that, just a toy OS trying to be UNIX.

Had Windows NT kept its POSIX compatibility story in a proper way, hardly anyone would bother to contribute.

Just like GCC only got serious contributions after Sun started the trend to sell UNIX SDKs and no longer have the development tools as part of a base UNIX installation.


Fully agree.

Sometimes the uphill battle gets tiresome tough.


> Sometimes the uphill battle gets tiresome tough.

Yep.

Apple hiring just one engineer and giving them access to internal resources would be massive. Or just giving them an engineering contact for support.


Mac hardware is just so damn good though. And everywhere. I absolutely agree with what you're saying... but man, Linux working well on an M1 Mac would be my ideal machine.


Every time I accidentally hit something on the touch bar, I hate that I still have a Mac. Every time I intentionally use the ESC and have to touch it two or three times, I hate the Mac. Every time I need an F key, or want to do something without looking (like change volume or hit mute), I hate the Mac. Thank goodness this year I stopped using it so much as I did not have to repair the keyboard twice and potentially get COVID as in previous years.

All in all, I am glad to dislike Macs with their abysmally bad keyboards and actively hostile and negatively productive touch bar. WSL is pretty nice.


They’ve swapped out the butterfly switches for more conventional scissors. They’ve also added back a hardware ESC for all models and never added a touchbar to the Air.


I mapped caps lock to escape and liked it so much I did it on my thinkpad too.


I've got two 2015 Mac Book pros kickin' around my house and they're amazing. Add in the M1 Air I just picked up and it looks like my perceptions are a bit colored by skipping that 4-year Mac Book dark era.


The critiques you have of Macbooks of touchbar and keyboard wouldn't apply to the Mac Mini. And they have an M1 Mac Mini.

Personally, I would love an M1 Mac Mini that ran Linux well. Very exciting development.


They don't even apply to Mac laptops, which have different keyboards and a physical Esc key now.


I find it interesting that all your gripes are focused on keyboard, yet you hate the Mac


is it? my 2016 macbook was the worst apple product i've ever owned...


Well All 2016 - 2019 MacBook are pretty much junk. As shown by their resale value. So it was probably one of the worst Apple product ever.

But the Pre-2015 MacBook Pro and M1? They are great. ( Although M1 still have shitty keyboard )


I'm still using my 2013 MBP on a daily basis. Fucking beast. Though I need to do a battery swap.

Far superior to my 2019 MBP my employer got me.


While I understand what everyone is complaining about, I have no problems or failures with any of them, except a battery swap on the 2015 13" when it started swelling up after 2000 cycles. The keyboards and trackpads are different but I can do my work on them just fine all the same. The 2017 has the benefit (to me) of working a bit like the Magic Keyboard 2, the 2019 is not that much different from that, and as far as the other user-facing I/O is concerned, the screen, sound, ports and palmrests are all pretty good. The 2015 is starting to feel a bit odd (small keys, small trackpad) and without Thunderbolt 2 the I/O would not have the bandwidth I wanted.

The only thing I have had break was a 2009 MagSafe charger, the insulation somewhere in the middle started getting brittle, probably some sort of chemical reaction causing it to lose its flexibility. But since I only have 1 MagSafe first revision device left it doesn't matter that much. (and I don't use it that much either)


> Although M1 still have shitty keyboard

Curious have you used the new M1 keyboard? It's a totally different mechanism, and feels completely different than the ~2019 MBP I have for work. I would go so far as to say that the 2019 keyboard was hands-down the worst keyboard I have ever used, but the new one is really excellent. I really enjoy mine. It seems to me to be one of the better laptop keyboards I have ever used. Maybe not quite as nice as some of the better lenovo models, although I'm not quite sure.

If you have used the new keyboards, what do you dislike about them?


>If you have used the new keyboards, what do you dislike about them?

Key Travel. And Spacing between Keys although I could cope with that a little easier. I find Most people who like the new M1 / Magic Keyboard are either

a) Those that actually like / have no problem with the butterfly keyboard ( Macbook 2016-2019 )but much prefer to have the reliability of old scissor ( Macbook Pre 2015 )

b) Those that didn't like butterfly Keyboard but was forced to use it for work, and got a new scissors / Magic Keyboard ( 2020 / M1 ) would find it to be so much better than butterfly.

But then if you have an old scissors to compare to the key travel is just so much better.

Butterfly Keyboard - 0.7mm New Magic Keyboard - 1.0mm Old Scissors Key - 1.3mm

( Key Travel means the distance pressed downwards before the keystroke is recognised )

It is not like I didn't spend time trying the Butterfly and the New Magic Keyboard at work. And it just didn't work out. My MacBook Pro at home is Pre 2015. And the old scissors just give me so much more responsive feedback for only a cost of 0.3mm thickness.


> Although M1 still have shitty keyboard

On the contrary, much like the 16" 2020 MacBook Pro, this is probably among the best MacBook keyboards ever created. Apple definitely stepped it up when they finally responded to the criticism of the 2016-2019 MacBook keyboards.


I think you're comparing it to the wrong thing.


Worst apple product is still far ahead of most non-apple alternatives. At least laptops wise.


My previous ThinkPad X1 is a superior device to my 15 inch i9 MBP (2018) in every way - thermals, keyboard, touchscreen, issues with 5k display for over a year, Bluetooth issues.

I needed a Mac for iOS development so I went all out since I do all sort of development - and this is by far the worst premium device I owned.

With that said M1 Macs look really good and I'll probably upgrade if they refresh the 16 inch.


I did use a thinkpad X1 for a long time some years ago, I actually want to go back to an X1, it is the best alternative. But honestly, if I go back to it would be making a good bunch of trade-offs as well and mostly to satisfy my inner wish of using Linux and Open Source software instead of Macos.

But still:

1) After a few months, the screen of the thinkpad started to get permanent scratches from the keyboards. This is a common problem, see [1]

2) The keyboard is better, totally agree. But the trackpad is much, much worse. I managed to adapt to the bad keyboard on the mac, I didn't manage to adapt to the trackpad on the X1.

3) The quality of the screen has no point of comparisson. Color gamut, calibration, resolution, etc. I like the WQHD screen, but it is not available for the X1 on many countrie outside the US. In my country (Spain) you only have the UHD which is a fantastic battery draining mirror or the FHD which reminds me of the nintendo 64 when looking at it. Let's not talk about scaling hi dpi resolutions, and deciding if using Wayland or Xorg so that I can plug an external screen with different resolution, etc.

4)Battery usage is not as optimized

5) I think nowadays this is better, but at the time (around 3 or 4 years afgo) I had lots of problems on Linux with bluetooth, resuming after suspending, and the fingerprint reader. Hopefully this has improved since then.

6) Price wise, they are as expensive as an equivalent macbook

A being "good" or "bad" has a lot of aspects to it. It is not just "It has the same CPU freq and the same amount of memory then they are equivalent" (not what you're saying but something many say when doing this comparison). Build quality matters, integration/support with the operating system matters, support matters, upgradeability matters, resale value matters.

And also, just compare the f*ng mess the Lenovo website is. Every time I think about going back to thinkpad, browsing such a terrible, slow, clunky, outdated, terrible thought out website makes me regret it and just close the tab.

[1] https://www.google.com/search?q=thinkpad+screen+keyboard+scr...


I have to admit I never use trackpad - I always carry a Bluetooth mouse (keyboard as well with my MBP because of how terrible it is) and for couch surfing touch screen is king for me. I also had a yoga and would go for that X1 next - the versatility is amazing (bed/couch/travel media use in the reverse V position is 10x better than tablet and laptop)

Battery life is about equal on this MBP - it's just a terrible CPU for a mobile device. But more importantly I use battery about 1-2% of the time - ergonomics are just not good enough for it IMO.

X1 Yoga with an AMD CPU would be my ideal laptop but unfortunately it seems like AMD gets pushed to gamers and budget laptops still


I really don't find them any better than the competing products in the same price range these days, but you do you.


Resale value is the closest thing to an objective measure we're going to get.

The butterfly keyboard era Macs took a nosedive in this metric, because they were bad computers.

I have what turns out to be the last Intel 16" MacBook Pro which Apple will ever build. I suspect the Intel part of it will make its resale value kind of grim, but the keyboard, speakers, monitor, build quality: all great.

MacBooks traditionally resell at a significant premium, because they're good computers with a long useful life. I expect this will be true for the M-series as well, although it's too soon to know.


I bought a new Intel 13" MBP just before the M1 announcement specifically because I needed an x86 machine.

No intention to sell but I suspect resale value will stay OK as there is likely to be ongoing demand from those who want a Mac for x86 cloud development (and non-technical users probably don't care if its x86 or M1).


My shop is also all x86 in the cloud... but I took the plunge anyway. I'm glad I did; Rosetta 2 works really well.


That's good to hear. The critical issue for me would be running an x86 (incldung AVX) Docker image on M1. Reasonably sure that's not going to happen in the near future.


FWIW I think they've got QEMU baked in to docker desktop to emulate x86. But I've just been using a remote docker daemon.


Thanks - that'a really helpful to know. I'm not sure that QEMU has AVX but will investigate further.


Show me your examples of competing products.


I got Linux running on a MacBook 14,3. It was ... less than ideal.

https://battlepenguin.com/tech/linux-on-a-macbook-pro-14-3/

..but I also don't want to see Linux get left in the dust. I'm more likely Intel or AMD crush the M1 in their next few generations.


I have run Linux on a Macbook pro (several times; several different models; up until around 2013). Was always a good experience . . . EXCEPT: trying to get power management dialed-in. (a package from Apple would be very helpful here).

Of course, now with TouchBar, I have no idea if that is even supported on Linux at all. I assume it's not, and if it is, it's a complete pain in the ass. (but honestly - could possibly be GREAT, if it weren't for the loss of the 'esc' key).

I seem to recall getting Debian running on my dual PPC Mac Pro was also difficult; with power management - but on the other hand, I was using it as a server and ran it full-blast 24x7 anyway. Damn that thing was loud.

I only see the M1 making power management that much more complicated, (due to custom chipset and lack of support from tools that are standard on x86-based linux distros). The main thing you'd stand to gain from the M1 platform is power and heat management. So I am cautiously optimistic that anyone wanting to port linux there will possibly pay close attention to putting together a package of tools that will work.


I think that's pretty unlikely. The M1 is a totally new world from even the best x86 processors, especially in a laptop. Not only that, but Apple has indicated that the next generation is yet another quantum leap from this one. Eventually other companies will catch up, but I doubt it will be anyone without a stake in ARM already. NVIDIA looks like the one to do it.


Yeah of course it is! Don't you know how the Cult of Apple works? We proclaim it is, so it is.

Edit: Whoops, I broke the first rule of the Cult... Here come the downvotes.


For me, to specify, Linux on an "iPad" with either chip. Laptops are a (now) horrible legacy design. If I want more compute, I would like the "iPad" as screen for a "Mac mini" sized system.

1. Linux

2. Not Intel

3. Good screen for text, "13 inch"

4. Pen input, for writing and drawing

5. Battery life

My dreams are modest; fuck you universe!


Would it be materially different than Linux running in a VM on m1? Because you can have that now


Trying to display at native full screen resolution from a VM is not a great experience. Or at least I couldn't achieve that without lag on any hypervisor. On top of that you're paying the battery tax because of virtualisation.


It doesn't feel "right", there's resolution issues, and I never got real-time, low-latency sound running in any VM ... so, I'd say yes, by all means.


GPU support would make a big difference.


I would expect a VM to have better GPU support since AFAIK Parallels and Fusion have already implemented it.


What VM matches the performance of a mac mini?


On any other apple computer I'd agree, but I really want some of that sweet ARM magic.


Just wait for SiFive and RISC-V, that's going to be the revolution I'll join :)


Not useful for someone who wants a laptop within the next 10 years.

Top of the line laptops are probably going to be last devices that adopt RISC-V even assuming it significantly gains market share from ARM and x86.


Don't you still have to pay to license SiFive IP?


Oh believe me I fully intend to ride that train, but I'll wait for it to get to the station first.


They simply don't have the funds or fab to compete with M1


RISC-V is a kind of lame and poorly designed ISA and the hardware designs aren't going to be nearly as fast.


If they arent actively opposing it that can be enough.


Yes, but isn't same true about most of the hardware?

Just a fraction of notebooks comes with Linux. I'd like to but I've never bought one. Smartphone manufacturers are not cooperative, NVIDIA got finger.

Personally I would not recommend buying hardware thinking it would be supported in the future. Linux hardware acceleration for Intel GMA 500 (Poulsbo) never materialized.


Linux hardware acceleration for Intel GMA 500 (Poulsbo) never materialized.

Ironically there is a bit of an underground effort on Chinese forums for getting acceleration on Windows 9x using the leaked SGX code and docs. I came across that a while ago when I was looking for something else, when it was still in its early stages. If you do not care about EULAs and other Imaginary Property laws, there is a whole new world to explore...


Just imagine this effort being spent on improving Linux OEMs hardware offerings instead.


Yeah, I also see a tough situation developing a few years down the road when Apple inevitably closes the platform even more and harms features of this project. Hopefully I am wrong.


> inevitably

It's been inevitable for 10+ years now.

Maybe this word doesn't mean what you think it means.


Regardless of semantics, I think my comment was too pessimistic and you are correct.


Everyone keeps saying this is "a lot" of wasted resources... AFAICT it's just one guy right now, and even if it were a small team that still sounds like a bargain. I would expect it to take at least a small team within Apple to get Linux running on their new hardware.

I worked on SoC chip bring-up at Qualcomm for a few years and it's literally hundreds of engineers working for weeks to get Linux running, and that's with not only technical documentation but direct access to the hardware engineers who designed the stuff. That was 5 years ago but I assume not much has changed.

If this one guy (or a small group) ports Linux to the new MacBooks on a "Patreon salary" I'd say we got a smoking good deal. I'm rooting for them and happily donating.


It seems so amazing to me that Microsoft saw the ARM opportunity with Windows RT, released 8 years back but somehow managed to not succeed with a stellar ARM laptop story.

Maybe Qualcomm is more to blame here for never progressing as well as Apple has done on chips but maybe the software experience was just not there.

We would probably already have good ARM laptops running linux distros if Windows on ARM had taken off.


Microsoft also saw the opportunity of tablet computing, media players, smartphones, and basically every other category where Apple has kicked them the pants despite coming out way later.

In this particular case, Microsoft wanted an iPad, right down to the complete and total lockout of all third-party app distribution. They wrote a completely new UI toolkit for fullscreen tablet apps that only Store apps could make use of, then shipped an ARM port that refused to load anything but those signed fullscreen tablet apps. The comparatively less-locked-down Intel models succeeded far better than the WinRT/ARM ones, so the lesson was mislearned as "people want Intel".

Apple knows that interfering with how people get their software to try and collect revenue is not a great idea; that's why the M1 Macs have the same security policy as Intel/T2 ones. If they had locked it down iOS style, creative professionals would be fleeing the Mac in droves and Adobe would seriously start considering native Photoshop on Linux.


Perhaps it's because the M1 is not just a random ARM chipset.

For those wondering why Apple has a market cap of $2T this may be a good reason.

They have the ability to stage, time and deliver something like the M1 Mac whereas other massive corporations like Microsoft, Google, Intel, etc simply can't.


Watching Apple vs the rest of the industry when it comes to long-term strategy reminds me of Marvel vs DC in the film industry.


Interesting could you elaborate?


Well, from all appearances Warner Brothers saw the wild success of Avengers and decided they needed a big superhero mashup, thus the disastrous rush to create a Justice League movie without the gradual build-up of story lines and characters that the Marvel films produced.

Apple takes the Marvel approach to their technologies: releases features (of varying initial quality, admittedly) that gradually improve and are incorporated into bigger and better products.

Siri has never been best-in-class for anything, but has been a big part of making Apple Watch and AirPods so successful.

Apple invested in their own CPU designs for more than a decade before finally unveiling the M1 lineup.

Apple chose to shrink the Mac operating system to fit the iPhone, instead of porting the iPod OS, which gave them a unified set of APIs, and has made it practical to have Catalyst as a (still somewhat raw as I understand it) toolkit for writing software across iPhone, iPad, and macOS, plus of course iPhone and iPad apps can run natively on M1.

Most of Apple's competitors lack the freedom or the desire to bet the company on a specific direction; Microsoft of course has released Windows for ARM but has not, and cannot, tell their partners they have two years to switch or get left behind, for example.

Apple can set long-term strategic goals and follow through on them.


Maybe it is not Qualcomm that is to blame, but it is Apple to be praised. But I guess I am talking glass half full / half empty here, so nevermind :D


Yeah, Apple definitely deserves a lot of praise on these chips. They are not even incremental improvements but drastic ones which will probably change the landscape completely.

Like AWS was working on their own ARM chips, they now have a benchmark to go against if they even can. In DCs a lot of spend is on just power consumption. If these chips can really drive compute in servers at a much lower power consumption, it is just not monetarily good for the company but good for the planet too.


I think they are to blame. Qualcomm is one of the biggest (if not THE biggest) manufacturer of ARM chips, yet they still simply use reference designs. Besides, for the next flagship (Snapdragon 888) they switched to Samsung 5nm (inferior to TSMC 5nm) and they're not even using the ARM-recommended 8MB L3 cache, but staying with 4MB.

It seems benchmarks for tha SoC aren't bad, but it really shows that they aren't really trying to catch up to Apple.

(My source is https://www.anandtech.com/show/16271/qualcomm-snapdragon-888...)


But isn't ARM to be blamed if the standard designs (which apparently almost everyone is using) are inferior?


Yes and no. The problem is those standard designs have to please a very wide spectrum of customers, so in a lot of the tradeoffs in chip design (like area vs performance) they tend to lean more towards keeping area small. The Cortex X1 is supposed to change that, though, but it's very new.


I think the situation is simple:

People don't care whether their laptop is ARM, x86 or z80. They want to know:

1. will it run my apps?

2. does it have good overall performance (in a broad sense, not just compute)?

3. is it a competitive value?

We've known about the potential strengths of ARM for decades, but nobody has been able to implement it in a way that checks all three boxes until now.

MS was putting out devices that checked 0/3 boxes


> It seems so amazing to me that Microsoft saw the ARM opportunity with Windows RT, released 8 years back but somehow managed to not succeed with a stellar ARM laptop story.

It's definitely not a stellar ARM laptop story, but the ARM laptops have been at market for years prior to the ARM Macbook release. Not porting Chrome for the initial release was a huge blunder IMO. No one wants to use Edge. Having a chip with performance parity targeted at Intel's i5 might have been a mistake, too.

But (while admittedly not as stellar as M1 Macbook) we have options: the Envy X2, Yoga/Flex 5G, Surface Pro X, Galaxy Book S.

The M1 validates Microsoft's strategy to embrace ARM. Hopefully the third-party software devs are able to port their software in order to make this transition easier.

Qualcomm stopped their own CPU design a while back and if they'd have kept that going then perhaps there would be a better competitor to the M1. Or maybe they just need to drop in a better reference design from ARM?


My hypothesis for why it failed is because the only real value Windows provides is with legacy Windows applications, which their ARM platform did not provide (at least to a comparible level).


That was certainly why I dismissed the platform and never purchased it or attempted to build apps for it. Wintel is the platform, not just Windows.


Qualcomm will supply whatever customers will demand, Die area of apple chips is significantly bigger than qc chips, if qc were to make similar chips will microsoft or for that matter any other vendor pay for it? it all comes down to that.


Yes, Microsoft locked the laptop to avoid Linux to be installed.


With the RT, yes it was indeed locked as the market pattern and target at the time (with iPad and Android tablets) have been to lock the system at the benefit of better curation and more integrated experience (well some will point out and argue that this was more of a lock-in, but obviously a Windows without malware was a goal also). The newer ARM attempt however were a complete reversal: Microsoft had dropped the focus on phone and (to an extent) tablet markets and even recent first-party Surface have unlockable boot systems, something that was impossible with Surface RT devices.


They failed to have good backwards compatibility.


I was wondering if this was the project of the guy that talked about doing this a while back, which I read about here on HN and indeed it is.

Announcement post: https://www.patreon.com/posts/website-launch-45852093


I came here thinking this was a separate attempt and was going to share that Marcan has already started working on it and that there could be some collaboration.


Really hope they pull this off.

The initial target of the M1 Mini is probably the smart choice, I'd imagine all the power management stuff in the laptops might be a big task to reverse engineer


It's also the simplest hardware (no keyboard/trackpad/internal screen/camera to worry about), and no-PM Linux will be useful already on the Mini (no so much on laptops).


This is really cool!

Does anyone know why a similar project doesn't exist currently using the open source distribution of Apple's Darwin operating system? It has always seemed strange to me that their open source BSD OS does not have an official distribution channel with a built in package manager like macports, pkg-src, gentoo prefix, etc.

OpenDarwin and PureDarwin existed for awhile, but seem to have both been abandoned now.

X11 (including thousands of open source and graphical x11 programs), plan9port, and other open source software projects already compile and run fine on macOS, so this has always seemed like something that _should_ be possible but has never gained traction due to what I guess is lack of documentation and Apple's lackluster open source website.


The world’s largest corporation is happy to accept gratis open source labor, but they’re rather actively antagonistic to Free/Libre software (eg. trying to eradicate strong copyleft from macOS, not only shipping ancient bash, etc. but prohibiting third parties from shipping it through the App Store without mandatory DRM). The lackluster support for open source distributions is virtually certainly intentional. The other BSDs are the closest you’ll get.


Darwin isn't a good OS.


Fair point! I guess what I'm getting at is the fact that, even though Darwin isn't great, we know that it's building and running on all production M1 macs, can run X11, etc. which generally seems like what this project is attempting to do.

I'm not a systems software engineer[0], so I'm not positive where the new drivers live for the M1 (are they in Darwin? proprietary/exclusive to macOS?), but if those drivers are available for use already (either legally through Darwin or through copying files from macOS into Darwin or something), it seems like it might make sense to look into making a Darwin distribution rather than reserve engineering the new M1 hardware in order to add some drivers and userland programs to what is essentially another Arch Linux distribution (from what I've read about Asahi thus far).

I think the Asahi project definitely makes sense if the primary goal is to run Linux on M1 macs for its robust server/enterprise capabilities, but if the goal is to just have a dual-bootable open source desktop operating system, I feel like Darwin might actually be the easier choice here.

[0]: http://doc.cat-v.org/bell_labs/utah2000/utah2000.pdf


This is actually a really good point; I tend to forget about Darwin. If I was in a situation where I owned Apple Silicon, I'd definitely want to look into this. While I have my own flavor preferences, I'm generally happy to work in whatever Unix environment is available to me. Thanks for bringing this up; it may become important to me in the future.

But wmf is right; a critical mass of people want Linux and accept no substitutes. To a lot of people, especially younger folks, "Unix" means Linux, and that's that.


I'm pretty sure people want Linux specifically, not any open-source OS.

As for Darwin source code, I'm reminded of the saying that if an economist sees a $100 bill on the sidewalk he says "if it was real someone would have already picked it up".


The drivers are proprietary.


Darwin for M1 is not open source currently I think.


> Asahi means “rising sun” in Japanese, and it is also the name of an apple cultivar. 旭りんご (asahi ringo) is what we know as the McIntosh Apple, the apple variety that gave the Mac its name.

If for no other reason than how cool and fitting this name is I hope it succeeds.


I hope this and projects like it spearhead a movement of ARM laptops outside of the Apple-sphere.

I wonder if System76, for example, has their eyes on being the first to market as “the Linux laptop on ARM”. Seems right up their alley.

Also worth noting that I understand that System76 and Apple are not comparable companies. One is a humble operation installing a custom Linux build on rebranded hardware, and the other is a vertically integrated powerhouse building it’s own hardware.


The problem is no other laptop manufacturer besides Apple has the capital and resources to build their own chip.


Not just their own chip, arguable one of the highest performance ones. At Intel, the mobile division was simply trying to keep pace with Arm with Apple always a distant dream. Later at Arm, no one had any idea what the hell Apple was doing. They pay for the ISA and that is basically as far as I ever saw the collaboration going (besides poaching top engineers).

Most interesting thing I ever saw was that they bought Intrinsity[1] to create custom EDA tools for them. There is a decent technical moat to overcome.

1. https://en.wikipedia.org/wiki/Intrinsity


Does anyone know if these EDA and other manufacturing tools are run internally on MacOS? I recall some comments when an Apple factory tour showed some tools running on Windows, on iMacs.


If it’s anything like Intel/Arm there are likely huge internal HPC Unix clusters with attached FPGAs for simulation and design.

I wouldn’t expect them to.


Definitely not true, IP blocks are available for all critical features and chip layout can be outsourced. ARM has a Cortex-X chip available for licensing for anyone that wants a high performance CPU core.

For example, HP (who also makes laptops) has custom ASICs running Linux in their printers.


Even if you use all licensed IP the market might not be profitable enough to pay back the cost. We're talking about a $50M+ leap of faith.


HP had 10.2 billion in profit last year.

Source: https://www.wsj.com/market-data/quotes/HPQ/financials/annual...

Certainly enough to take a 50 million dollar risk.


> I wonder if System76, for example, has their eyes on being the first to market as “the Linux laptop on ARM”.

They are not the first already: https://www.pine64.org/pinebook-pro/


Ah yeah pine64! But how does it compare to the M1 performance? I should have explicitly stated that these ideal computers would match or outperform Apple’s hardware, since that is very much the case with current intel based MacBooks


Pinebook does the typical "as cheap and low-end as possible" linux stuff.

I would love to see ARM linux hardware manufacturer who would aim to create a high-end fanless powerhorse like mac mini.


You and me both. I believe it will happen eventually, it seems inevitable now


Minor correction: The mac mini isn't fanless


For projects like these, I don’t know why Apple doesn’t just step in and help. What have they got to lose?


I agree. At the very least, they should be a corporate sponsor for Marcan's Patreon. Ideally they should just hire him and provide him with internal resources to work on it. Even if Apple doesn't benefit from Linux running on bare metal, many of these efforts will benefit Linux running inside a VM as well.


I don't think hardly anything here will help Linux running in a VM FWIW. The unknowns are mainly the Apple specific IP blocks which aren't exposed to VMs.


Depends if you care about having graphics or audio in your Linux VM. Currently I think Linux VMs are just console only. Also, there is a lot of accelerated hardware which the CPU has which would be nice to get access to inside a VM.


I still would be extremely surprised if the GPU is designed to be virtualized that way. If the host OS is using those IP blocks, you can't just give them to the guest.


It's also bonus points towards sustainability to ensure their devices have a life after obsolescence.

Honestly Apple could use some of those points considering how many little plastic parts they force people to buy.


> It's also bonus points towards sustainability to ensure their devices have a life after obsolescence.

This is my primary interest in this project. Given Apple's support life for Macs, I don't think I will ever use it, but I'd like to have the option the same way I was able to extend the life of my G4 iMac.


Or they could donate anonymously, supporting its development without their official logo.


I agree with you in theory; in practice Apple seems to have enough issues just getting their own in-house OS to work right on these things.

A lot of macOS internals are really a reflection of Apple's deadlines-over-everything, ship-at-all-costs attitude. Certain parts are great, because those teams seem to be great and are blockers, such as the kernel or the silicon. Other parts closer to the surface that aren't in quite as critical a path, all the way up to documentation... not quite as much.

Overall they do a decent job, and are certainly moving in a good direction security-wise (although not privacy-wise). It's just clear that many of their teams are stretched extremely thin.


My biggest wish for the Mac is to take macOS back off yearly releases. Or at least make every other yearly release minor, just to add compatibility with whatever got added to iOS.

What’s the point in having a big release every year if takes six months to sand down all the rough edges?


What they got to win? It is probably quite small userbase.


It's not what they got to lose, but what they got to gain for doing this? Which is almost nothing. Except they fully support linux on their laptops too


What have they got to lose?

30% cut of app store, icloud, apple+ TV, Safari users, Maps users, Incremental Market Share.

Realistically lots of people could end up preferring Linux over MacOS, why risk it?


> In particular, we will be reverse engineering the Apple GPU architecture and developing an open source driver for it.

Well, this is exciting. I suppose it was inevitable that someone would take on this challenge, but it's exciting all the same.


judging by other open source reverse engineerd GPU drivers its a massive undertaking. i also looked at a shot of the chip and see lots of neural networking functionality, i wonder what sort of special drivers stuff like that needs. i just feel like the hardware is so specialized without apples help it would take a lot for it to be a killer linux laptop.


Reverse engineering of the Neural Engine is already under way:

https://github.com/geohot/tinygrad/tree/master/ane


wow, and by George Hotz of PS3/comma.ai fame too.


You can't just not use that functionality. But getting the GPU to work is essentially required.


Do the cons of open sourcing device drivers really outweigh the pros? Good / popular hardware will end up benefitting from all kinds of contributions from interested folks. Plus the recruitment pool and onboarding of new talent expands by a reasonable amount, in theory.

Is it really the case that somewhere in the drivers there is some secret sauce that is so ingenious that if the competition got wind of it, it would give them free access to a lot of hard work and research, and enable them to catch up?

I guess I've never really dealt with super secret proprietary magic beans before so I can't relate.


Unfortunately, I'm pretty sure if Apple did provide documentation, people would complain that it's incomplete, or would complain when it changes. I'd love a world where all tech documentation is open, but there are competitors etc etc.

Apple is a remarkably focused company with a lot of experiments that never see the light of day. They don't sell their chips or motherboards to anyone else.

Qualcomm/Broadcom etc exist to make their chips for other companies to use and still getting real documentation from them is often not possible unless you are a giant OEM, commit to millions in orders and sign lots of NDAs.

Apple's not only created a pretty great integrated CPU/GPU and nearly seamlessly transitioned CPU platforms (AGAIN!) but they are at the very beginning of this roadmap.

I'd LOVE them to empower/support Linux on Apple Silicon (as they seem to be saying they will for Microsoft) but I expect a generation of two of chips before things solidify/stabilize enough for them to open up the platform.

And, it's not like this is something within their business model or is going to give much value back to them.

Lots of people say Apple "Needs" to do whatever... Clearly they don't as they seem to be surviving OK doing things how they want.


Apple needs to stop treating its customers with contempt. Regardless of how okay its customers seem to be with it.


Interesting project and wish them best of luck.

On the claim:

>However, no modern device is “fully open” - no usable computer exists today that has completely open software and hardware (as much as some companies want to market themselves as such)

Doesn't RaptorCS[1] offer a fully open modern device? Or is there a closed part I'm not aware of?

[1] https://www.raptorcs.com/


Is their silicon design open? Their internal boot ROM? Their microcode? :-)

What I'm trying to say there is, there is always a line. There is always some secret sauce. Even if you have fully open HDL, you won't have documentation for the proprietary fab processes required to implement it in a way that performs. Even if the fab process were somehow fully open, you may not have public documentation on how to manufacture some of the required chemicals and raw materials available. And so on and so forth. The rabbit hole always goes deeper, and the lines between parts aren't entirely bright, and so making some kind of blanket statement that one is "fully open" is usually a marketing tactic and not actually truthful.

That said, yes, Raptor stuff is pretty much as open as it gets, today, in the high-end space. They are pretty much the only modern platform which doesn't use blobs to train RAM on boot, for example. They are not perfect - for example, their motherboard schematics are only available to owners, so I assume they are not redistributable under an open hardware license.


Oh, I see. That is definitely a lot deeper in the stack that I was thinking of. Thanks for the comment.


Awesome project. Also, nice logo.

Given the seemingly unbeatable performance of Apple Silicon (judging by reviews), this would remove one of the bigger pain points of having a Mac. Some projects just don't run on macOS - either due to a community lack, or due to political reasons (e.g. CUDA). I wonder why Apple does not seek to support projects like this.

Will be interesting to see how hard it is to bring this to a useable state. Thanks for the effort and looking forward to hearing more about the project!


Credit for the logo and website goes to soundflora* ! She's at https://soundflora.tokyo/ and she also makes some really awesome music.

I was going to say I don't think you'll see CUDA any time soon on M1 machines but... apparently Nvidia does have a beta AArch64 driver these days. TIL.

I wouldn't hold my breath on that working well given that it's, well, the Nvidia blob... but it might (once we get Thunderbolt working, with an eGPU). I avoid Nvidia GPUs these days, so if an eGPU demo does happen, it'll more likely be an RX 5700XT running the open source amdgpu drivers, which I do happen to have lying around :-)


I'll buy our whole company these macs in a heartbeat if this becomes good enough


Why not support a hardware vendor that actually cares about linux?


Why not buy hardware that doesn't suck?

I still have a Thinkpad for my primary laptop, but using a mac with retina, 5-10hr batt life, and a nice touchpad for work is such a joy compared to a 1080p matte screen with 3hr battery life.


1440p Matt screen, 24G Ram, i7. Battery life all day. Still cheaper than a weaker specced Mac.


But x86, so missing the point entirely.


> 1440p

> i7

Surely you're joking?


Care to elaborate? Is it because 1440p + i7 is power hungry or something?


No, it's because they are worse than what Apple is shipping.


Ah, I see. I see it as an underspecified comment :). They didn't specify the price of their system, so it is hard to argue either way.


I mean, there is a wide range of products here. If we're comparing anecdotes, I have a personal MBA with a TN panel with less than 1080p screen, and crappy built-in webcam. But it is not fair to compare it to another laptop I use which was designed and manufactured later.

Keep in mind that battery life is not just about hw, and requires careful tuning of the OS. However, the OP is talking about running linux on it, so the batt life will definitely NOT be as good as running MacOS.


Apple devices always have been usually quite attractive, but currently, there is no better ARM hardware for the end user available. A lot of people would like to use some other cpu than x86 and on top of that the M1 is currently perhaps the most attractive notebook cpu.


One reason I can think of is that the hardware from those vendors is less appealing.


People value industrial design, for one.


Being able to have someone on call for support is pretty valuable too, no?


Is the Mac laptop ID significantly different than other laptops, e.g. PixelBook Go? I have a MBA, and was super surprised at how think it was compared to my Pixelbook. I would say that Apple laptop ID nothing special, and is lacking things like a touchscreen, etc.

I would say that M1 has good performance ON MAC SOFTWARE, which has been tuned for it (and vice versa). It is unknown if linux will perform as well on it.


The PixelBook is closer, sure - though still not as great when it comes to, say, the trackpad. Apple also still has a near-monopoly on amazing screens. These might seem inconsequential when you scan them on a list, but the entire package really adds up.

Anyway, with that all said, the thread in question is about vendors who explicitly support Linux, which is a very different story. If I had to pick anything in that realm that I'm excited about, it's... maybe Purism's upcoming Librem 14, mostly due to them trying to do something custom. Relies on them actually shipping it, tho.

I remain surprised that System76 hasn't done more towards a non-rebranded laptop shell. I really like their desktop offerings, but I've no need for a desktop in my life.


I'm pretty sure System76 would really love to design an build macbook level laptops with M1 level chips, but how the hell are they ever supposed to get there?

It took Apple, what, 13 years from the iPhone to the M1, surfing on the wave of success of the iPhone.

There isn't even a processor vendor that is capable of supplying them an M1 level chip.


I didn't say that System76 needs to pump out an M1-comparable laptop off the bat.

In fact, my comment specifically notes "non-rebranded laptop shell" as that would go a long way to turning around the cheap feeling they currently have.


Yes, sorry, I was getting ahead of myself, mixing in the M1 stuff.

But my point still stands: it's hard for them to do their own design with the numbers they sell. They started with desktops, because it's easier to do them custom. I hope they will be able to grow into being able to do custom laptops as well.


That's quite a hypothetical investment to make on the back of a project that might not exist in half a decade, or will have shifted resources from supporting M1 Macs to supporting the new Apple hardware that gets released every year.

If you want actual mainline Linux support, buy hardware you can boot any generic Linux ISO on, which precludes all most every ARM SoC, including M1 Macs. Recent ARM servers implement SBSA[1], which means they can run ARM Linux ISOs just as well as x86 machines can. With ARM SoCs like the M1, you're married to whoever is generous enough to donate time and resources into rolling out bespoke Linux images for your specific SoC.

[1] https://en.wikipedia.org/wiki/Server_Base_System_Architectur...


I would switch our self-hosted servers to Mac M1 Minis if this goes through.


Considering that one of Apples major revenue streams is selling hardware, you'd think Apple would want to actively support Linux.


Apple deprecates support for older Macs in new macOS releases after 6 to 7 years. It's part of the incentive to upgrade.


> As long as no code is taken from macOS in order to build the Linux support, the end result is completely legal to distribute and for end users to use, as it would not be a derivative work of macOS. Please see our Copyright & Reverse Engineering Policy for more information.

This may be a dumb question, but are any of the Open Source components of macOS [0] useful for this kind of endeavour? Specifically stuff from XNU? Or are any useful hardware specific, driver-y bits excluded?

[0] https://opensource.apple.com/release/macos-1101.html


Worth noting that that OSS release does not include M1 support (and Apple does not open source most of their drivers, just the kernel core), although it does include (partially redacted, not buildable, because Apple) support for other mobile chips using the same CPU cores. Perhaps the next OSS dump will finally have the M1 bits. But we're definitely on our own for all of the fun stuff beyond "Linux boots with a serial tty".

At least some really basic parts are useful as a hardware reference, e.g. things related to the interrupt controller, UARTs, and CPU quirks/errata workarounds. That said, their license is incompatible with the GPL, so we cannot take any code directly. I documented this explicitly in our copyright policy:

https://asahilinux.org/copyright/


All the driver stuff is shipped as closed-source kexts, and interesting proprietary hardware features like GXF are missing too from the public sources for the most part.


I must say I am tempted to buy a Mac mini and if this project succeeds it might be the thing that triggers it.

That or Apple making CMD - tab customizable so I can fix it on my desktop ;-)


This is good of course but it's an uphill battle - just reverse engineering the Apple GPU and making a decent driver for it in itself is going to be a huge problem. Look at nouveau - we still don't have any way to reclock NVidia GPUs. Getting good experience and good battery life with reverse engineered hardware is impossible.

Then there's going to be new gen hardware and firmware updates for existing ones to keep up with.


Thankfully, Apple loads most firmware for us in the bootloader, so we don't have the blob problem that Nouveau does. This includes parts related to power management.

Nouveau has an uphill battle because Nvidia is actively hostile, and because they have to support dozens of chips. We are starting with one. I do not expect for us to end up in a Nouveau situation with poor performance/PM over time. It will take time, of course, but I fully expect we will make it happen.


Very happy to hear you're optimistic - more power to you! I might even sign up if I end up buying one of the m1 Macs :)

Is the WiFi chip in the M1 Macs a solved problem or did that need to be written from scratch as well? Just curious.


On top of what Marcan posted: keep in mind that back when Nouveau development started Linux open source graphics stack was young and had no mature drivers to look at. Only in last 4 years graphics stack feature and performance parity thanks to Intel, AMD and Valve.

Today LLVM is well-developed for GPU drivers and there is tons of other ready-to-use code for OpenGL and Vulkan implementation. E.g RADV was initially created by two developers only and now it is better than AMD official Vulkan implementation.

On top of this modern GPUs are now less complex to develop drivers because they'e decoupled from display controllers and hardware no longer have fixed pipelines.


Wondering about GPU and ML hardware acceleration with this? Like TensorFlow or PyTorch, or OpenGL/Vulkan using the ML/graphics chips?


Commendable effort but as someone who has spent significant time dealing with closed hardware, I believe that it is more efficient and beneficial long term to build a platform that supports linux. I support this project anyway because non-linear outcomes occur often enough in the marketplace of reality. Who can really know what will evolve from this work?


Given the level of technological proficiency of people interested in this project, why Patreon tough? A platform that carries all the fees back to the person you're trying to support and puts their own cut on top for basically hosting a few iframes? Is this really the best way to provide some monthly income? I


I also have GitHub Sponsors!

https://github.com/sponsors/marcan

I want people to pick whatever platform they are comfortable with, and Patreon is very popular, so I offer both. But yes, in principle GitHub sponsors should have lower overhead (I'll have to wait until I get income from both to see exactly how it works out after the intermediaries involved).


Solution: don't buy locked down Apple hardware. Yes, the chips look nice but it's just really unfortunate that they're from Apple and so come with all the Apple baggage. Just wait a couple years for competing chips that won't have the baggage.


For what problem is this the solution?


The problem is a weakened or lack of reliable Linux support. This is an unofficial hack for an Apple platform notorious for having little open documentation or good interoperability with anything non-Apple. It's always going to be an uphill battle to reliably support Linux because Apple themselves don't seem to care (at the moment at least). Investing in Linux integration for a more supportive hardware vendor instead should yield better Linux outcomes without Apple's baggage.


Running Linux on your hardware?



Looks like his donation/sponsorship page is down :-(

I’m super excited someone is taking this on. Hopefully Apple contributes drivers as well — they only stand to gain from the success of this project.


Wouldn't the sponsorship page be this: https://www.patreon.com/marcan


https://github.com/sponsors/marcan is a better option.

(much lower fees present there)


There's also a GH Sponsors page: https://github.com/sponsors/marcan


I think the Patreon is the best place to donate

https://www.patreon.com/marcan


Does Apple still maintain open Darwin? Can you run it on an m1?


This is one of those things that sound interesting but only from a technical point. Why would anyone take on this level of risk? In a few years they will be complaining on HN about being kicked off Apple silicon.


Then just pop Mac OS back on it and sell it for 80% of it's new value. Really almost no risk at all, as far as I'm concerned.


However noble, the risk I see is for untold man-hours and resources that will be expended on an ill-fated adventure. This project requires tons of positive tech-community spirit, which apple isn't exactly known for.


Fair enough. But I'd counter saying that you shouldn't try something like this unless the adventure itself appeals to you.


Could I take this opportunity to ask the HN community what they use on linux for photo editing (and what they like a out it)? ... if anybody like that exists ;)


i would pay a LOT of money to have linux work on M1. This is incredible


Well then, join the Patreon. Or am I misreading your comment somehow?

https://www.patreon.com/marcan

I'm not going to use it myself, but I still joined, just to get the updates.


Asahi, Super Dry! Sorry, had to say this.


What are the odds Apple shit on this?


Why?

If they'd intended to shut this down, they would have a locked down boot loader like on iOS. Instead they deliberately built a boot loader which supported things like this.


That can be changed in a software update. Is this likely? probably not, however I can imagine scenarios (lets say a worm gets out) where it might "make sense"


It wouldn't be unprecedented. Sony released the Playstation 3 with the ability to run Linux and removed it later using a firmware update.

https://tedium.co/2020/11/27/sony-linux-otheros-geohot-histo...


The action isn’t unprecedented. But that’s a separate company. What has Apple done to make people expect this behavior when they’ve not done it before?


The engineers who did that probably don't make the decision on things like this.

When have Apple been open about anything recently?


This took time and resources to make happen. This isn't some switch a rogue engineer pulled while management wasn't looking. Not only did it take time and effort to implement, they've also documented it.

> When have Apple been open about anything recently?

Darwin, WebKit, Swift, LLVM, This effort.

Apple keeps iOS fairly tight the Mac, not so much.


Apple aren't upstreaming their backends to LLVM, for example


What happened to "When have they been open about anything?"

Wonderful moving goal post here.


Get people on board first. Lock it down once it's too late and everyone is invested.


That hasn't been their MO, historically. On macOS everything that's locked down by default can be unlocked (at least that I've encountered) regarding running software or other OSes on the hardware. They've made it "secure" by default, but not locked down, it's a simple switch to open it up.

If, say, the iPad or iPhone had gone this route (started off as open as Android and then became locked down) you might have a point. But they didn't, they started off restricted and have only (gradually, and to a limited degree) been opened up.


> Get people on board first. Lock it down once it's too late and everyone is invested.

Examples? Been using the Mac for 15 years and haven't observed this myself. iOS was more or less locked down from go, but they never did some kind of bait-and-switch.


So your opinion of Apple is just that they're pure evil, or what?


On the About page: "...requires a huge amount of work to be done, as Apple Silicon is a completely undocumented platform"

It "is" a well-documented platform. I'm hoping that Apple makes it available to the open source community to make Linux on M1 happen sooner than later.


How is it documented if there is so software developers manual for the ISA, optimisation manual for the uarch, and no documentation at all on how the subsystems like the neural accelerator works let alone how to access it.

I assume you mean that Apple have it internally, but I wouldn't assume it's any good.

I would also love to see someone (I haven't got and can't afford one) try and fuzz it for undocumented instructions.


There's no software developer's manual for the ISA? Arm don't release any documentation on their ISA?


There are currently undocumented instructions on M1, and Apple aren't a regular Arm partner so I'm kind of classing it as it's own ISA


I've seen that too! I have a lot of sympathy for what you're saying here but I think classing it as it's own ISA is a bit of a stretch! How much flexibility Apple have with the ISA is an interesting point - I suspect they are pushing the limits of what they can get away with (what's Arm going to do?) Might be different when Nvidia own Arm?


Apple exposes standard aarch64 to developers.


The GPU ISA (yes, GPUs have ISAs) is undocumented.


Even Nvidia document theirs now, and the firmware details are on GitHub to some extent for the Nouveau guys.


> Even Nvidia document theirs now

If you're talking about ptx, that's not the hardware ISA, but instead an IR for their shader compiler.


NVIDIA have this: https://docs.nvidia.com/cuda/cuda-binary-utilities/index.htm...

That doesn't operate on PTX but actual hardware binaries. Oddly, they ship disassemblers, but not assemblers.


I wonder if Apple will embrace Linux as Microsoft have done. If they are still a 'hardware' company at heart then they will.


I highly doubt it. Microsoft embraced Linux because they knew Windows couldn't compete in the developer OS space. MacOS on the other hand is built on Unix and is already a very popular OS for developers.


Linux has been taking serious dev mindshare (and market share) from Apple for several years now.

And I think Apple knows macOS can't compete with Linux as a development environment against browser, Linux, and cloud-based deployments. Witness how they made a point of demonstrating a Linux VM running on Apple silicon during the M1 introductory keynote, and how they continue to remove dev-oriented tooling, allowing third-party setups like homebrew to fill it in.

It seems their goal is increasingly to focus on their end-user platform only, which for dev tooling means only focusing on XCode/etc. and not the Mac's capabilities for other deployment targets.

... which leaves an obvious gap for Linux to fill. In fact, given how large and capable Apple is these days, I think there's a good chance they'll put a bit more effort into helping Linux integration along (especially Linux in VMs on macOS -- that's probably the main plan at the moment). They realize they only stand to gain from such efforts.


How so?




Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: