Asahi Linux: Linux on Apple Silicon project
asahilinux.org
asahilinux.org
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.
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.
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.
[1] https://en.wikipedia.org/wiki/Macintosh_clone#Jobs_ends_the_...
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.
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 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.
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.
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.
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)
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.
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.
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?
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.
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.
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.
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.
We should work on what matters: free software, open hardware.
"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."
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).
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.
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.
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.
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.
Why? There have been several success cases of reverse engineering in the past, for all sorts of popular and fringe hardware.
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.
At least, this is from my experience dealing with the Tegra X1 on a Jetson board for hobby osdev.
Nvidia PTX-level openness for GPU-compute would be nice though.
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.
Asahi Linux was founded by Hector Martin “marcan” after the launch of the first M1 devices.
What we can do is support this Patreon.
> 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!
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.
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.
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.
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.
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.
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.
And you can actually download Windows on ARM from Microsoft Insider Preview for Free. And run it on top of Parallels Desktop 16.
I'd think linux/BSD drivers would be the concern here!
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.
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.
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.
Apple gives the chance to disable these limitations to power users: "they should be disabled by default!"
Apple disables limitations: "temporary convenient oversight?"
...
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.
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?
This is not theoretical.
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.
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.
The fact that Apple documented it.
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.
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?
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.
Apple could take most of the speculation/hostility away by simply giving their word for it. But they don't ...
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.
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.
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.
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.
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.
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.
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.
Personally, I would love an M1 Mac Mini that ran Linux well. Very exciting development.
But the Pre-2015 MacBook Pro and M1? They are great. ( Although M1 still have shitty keyboard )
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.
Edit: Whoops, I broke the first rule of the Cult... Here come the downvotes.
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!
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.
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.
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...
It's been inevitable for 10+ years now.
Maybe this word doesn't mean what you think it means.
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.
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.
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.
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.
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.
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.
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...)
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'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?
Announcement post: https://www.patreon.com/posts/website-launch-45852093
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
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.
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.
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.
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".
If for no other reason than how cool and fitting this name is I hope it succeeds.
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.
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.
I wouldn’t expect them to.
For example, HP (who also makes laptops) has custom ASICs running Linux in their printers.
Source: https://www.wsj.com/market-data/quotes/HPQ/financials/annual...
Certainly enough to take a 50 million dollar risk.
They are not the first already: https://www.pine64.org/pinebook-pro/
I would love to see ARM linux hardware manufacturer who would aim to create a high-end fanless powerhorse like mac mini.
Honestly Apple could use some of those points considering how many little plastic parts they force people to buy.
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.
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.
What’s the point in having a big release every year if takes six months to sand down all the rough edges?
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?
Well, this is exciting. I suppose it was inevitable that someone would take on this challenge, but it's exciting all the same.
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.
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.
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?
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.
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!
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 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.
> i7
Surely you're joking?
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.
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.
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.
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...
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?
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:
That or Apple making CMD - tab customizable so I can fix it on my desktop ;-)
Then there's going to be new gen hardware and firmware updates for existing ones to keep up with.
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.
Is the WiFi chip in the M1 Macs a solved problem or did that need to be written from scratch as well? Just curious.
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.
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).
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.
(much lower fees present there)
https://www.patreon.com/marcan
I'm not going to use it myself, but I still joined, just to get the updates.
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.
https://tedium.co/2020/11/27/sony-linux-otheros-geohot-histo...
When have Apple been open about anything recently?
> When have Apple been open about anything recently?
Darwin, WebKit, Swift, LLVM, This effort.
Apple keeps iOS fairly tight the Mac, not so much.
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.
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.
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.
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.
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.