Hacker News new | past | comments | ask | show | jobs | submit login
Asahi Linux: Linux on Apple Silicon project (asahilinux.org)
654 points by jackhalford 11 months ago | 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 )


> 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.


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

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.


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

Search: