I'd rather help funding the port to a 10 times slower but open platform, rather to a technically superior but proprietary close one whose owner would make it incompatible two seconds after they would smell competition from Linux in any of their core business fields. No thanks, I'll send my small quid to whomever appears to be really in favor of openness, no strings attached, which is neither the case with Apple as it is not with Google or Microsoft.
https://www.washingtonpost.com/technology/2019/09/05/how-app...
A million thousand times no.
As some one else said, every spare dollar I have is going to fund a company that values open source hardware, open source software, right to repair and own.
A company that doesn't purposefully force manufactured obsolescence as a business model, privacy intrusions, lip service to OSS, bullying right to repair in courts, tax evasions doesn't deserve any free work from the skilled people in the community. All of this, just so that they can make more billions when people around the world are suffering just to give their restrictive supply chain their blood, lives and tears.
You know why open source hardware is expensive for lower quality? Because Apple pays the premium on the premium quality stuff. But I'm that process they also drive up the prices.
Hardware manufacturers want the Apple cash, so they wait for the Apple contract and when they get that, any other contracts that you might have will get delayed and sidelined with lower quality stuff. Essentially, a monopoly in the supply chain
Also the cognitive dissonance is deafening. The company with industry leading device lifetimes and premium long lasting second hand market value is, er, guilty of built-in obsolescence. How does that work exactly?
I mean Ive got to think you must know both those points are true. The fact that Apple has nothing to do with the vast majority of the PC supply chain, and the fact that Apple devices have industry leading lifetimes and service and support is just overwhelmingly supported by the evidence. I just don't see how you can not know those things. Yet here you are making this argument. I just find it really puzzling. Are you really not aware of these things, or deny that they are true? Are these things we actually need to dig into and discuss?
I'll concede on the repairability point, yes that's a valid argument. I would contend that it's mostly just a tradeoff between compactness and simplicity of design, versus repairability and it's up to customers to choose which they value most, but Apple has sometimes gone too far in unnecessarily obstructing repairability.
Hardware relating Comments on HN has always been fairly low quality to say the least, comparatively speaking to many other subjects. But Apple M1 sort of brings the worst out of it. My current counting right now over 10K comment suggest most have very limited understanding of Hardware tech, little on Hardware business, and quite literally zero on supply chain.
So I would not be suspired If many doesn't know.
I could count people with one hand who have to constantly comment and correcting all the wrong assumption, TSMC capacity limitation, NAND and DRAM price fixing etc etc. And now we have Apple's supply chain monopoly.
The world currently ships approx ~1.2B Smartphone every year, and Apple represent less than 20% of it. And if you include Tablet, PC and Laptop ( Which shares the same supply chain ) Apple is much closer to 10%. The premium Apple pays is not leading edge ( apart from 5nm TSMC ) but very strict quality control and capacity guarantee.
My observation into this issue, is that most software developers and tech workers are so far removed from old model ( non-tech ) of business they have very little understanding of Logistics, Supply Chain, Lead Time, Sales Channel, Distribution and Discovery ( Marketing ). And ironically enough the world best company at doing all of the above is also a tech Company called Apple.
It has been releasing faulty keyboards on it's macbooks for years. They knew. They didn't care. They just continued to release new ones every year with the same faulty keyboard.
Not to mention staingate (which affected me personally).
Those 2700$+ macbooks with ghosting screens. The stupid chip that does a weird sound when you stop your music.
The list just goes on and on.
And this is the stuff on the surface. Go open a macbook and analyze every single component quality...
"pays the premium on the premium quality stuff" reads very weird to me. Isn't that how generally the world is supposed to work? You pay a premium for premium stuff? If not Apple, somebody is anyways going to do it right...
> You know why open source hardware is expensive for lower quality? Because Apple pays the premium on the premium quality stuff. But I'm that process they also drive up the prices.
Hardware is hard. Some Atmel or whatever low brain microcontroller can be had on a board with hand-painted selfmade-etched circuits or shoddy breadboard stuff, at the frequencies these things operate signal integrity doesn't really matter.
But anything with a brain powerful enough to run Linux? Then you're delving into differential signalling at extremely high frequencies - which means you have to precisely account for trace widths, trace thickness and trace length matching simply to ensure that the signal from your CPU arrives at your RAM chip intact. You'll ned an awful lot of awfully precise voltage levels other than 3v3/5v, with equally precise requirements on timing in getting them up. You also won't be able to get away with a two layer board, you'll need three or more layers and a lot of vias - and now, you can't manufacture your own prototypes any more but need to order at a PCB shop which means you either pay through your nose for speedy turnaround and low volume or wait for weeks for pool orders.
And once you have the PCB you'll need to populate and solder it - where you will run into such nasty things as minimum order quantities and the need for a pick-and-place machine if you don't want to go nuts. And if that's not enough, have fun with NDAs and no support for hobbyists by big SoC vendors due to small volumes (I have extensively written about that topic here: https://news.ycombinator.com/item?id=25208056).
The best solution if you needs smarts is to look into either adopting a Raspberry Pi 4 Compute Module if you can get away with its performance, or look into COMexpress if you need serious, up to Intel Xeon scale levels performance - but be warned, designing for that ain't exactly easy either.
Apple's mobile devices, laptops, and desktops have some of the best longevity and the best resale values in the market.
What is this whimsical company, and how exactly does it make money?
> You know why open source hardware is expensive for lower quality? Because Apple pays the premium on the premium quality stuff. But I'm that process they also drive up the prices.
Apple is not even in contention over the same stuff. Nothing open sourced can fund the development process of a 5nm IC, as the tooling alone would be tens of millions if not more. The total cost of an IC would be in the hundreds of millions (making something of the M1 class is billions).
Open source is lower quality unless there is a commercial sponsor. This is almost universally true for software and hardware. This is because people, naturally, have less resources to invest in something with zero to no financial return.
I mean, Olimex isn't exactly poor. https://www.olimex.com/
This. Apple doesn't even care about Hackintoshes, which are (theoretically) orders of magnitude more threatening to Apple's business model since they (theoretically) cannibalize Mac sales.
> Although about 3 million computers get sold every year in China, people don't pay for the software. Someday they will, though," Gates told an audience at the University of Washington. "And as long as they're going to steal it, we want them to steal ours. They'll get sort of addicted, and then we'll somehow figure out how to collect sometime in the next decade.
I am sure Apple loves that Hackintosh users are in the Apple ecosystem (often developing software for Apple machines), and many will eventually start buying real Apple hardware.
Apple will turn a blind eye to Hackintosh as long as the process stays too difficult to ever cannibalize sales.
That's because their numbers are so low that they don't represent a threat, but still contribute to keep users hooked to the Apple ecosystem, which is vital for them; of 10 people with a Hackintosh there may be no real Mac users, but many of them are likely to own an iPhone and use other Apple services; Apple need to keep those customers so they close both eyes on Hackintoshes. Also, since they offer no warranty for non original Apple hardware, it wouldn't impact much their corporate users base, which often are forced to use the real thing.
One side effect of making their own line of CPUs, and a system that as for now, runs only on them, however, could also be seen as a way to kill the Hackintoshes "competition", or it may be just a nice side effect for them. Time will tell.
You can see services revenue is up to 14 billion compared to iPhone's 26 billion.
Imagine thinking macOS is threatened by Linux. Guys like this will never understand the appeal of the Apple ecosystem, it is beyond their comprehension. There are some good reasons to run Linux, but shouldn't you at least be capable of seeing why Apple makes the kind of money they do, beyond the "well those customers must obviously be stupid and less enlightened than myself, a true warrior of the Free Software tribe"? Why are people like this.
Sort of.
For most MacBook users, a chromebook will be more sensible choice.
And iphones sell because fashion.
iOS is locked down, and Mac app Store is also a candy shop. Because there are stupid people to spend money on shit mobile games, apple makes quite a lot of money.
And they do lot of deceitful marketing. Apple software is getting shit year by year.
Most people buy apple because "brand", and get accustomed to it and don't like slightest change.
- First, having good hardware support even on x86_64, a known platform with vendor support, can be problematic.
Even on a standard laptop where Linux works just fine, it's still a struggle for the community to get all the peripherals working after a new laptop has been released. Usually new computers can take a year or two before everything is sorted out. For example, on my Lenovo tablet, it took a whole year before every driver has stabilized, yet the integrated audio still didn't work (even when two company employees were actively supporting it on Linux), and I had to take an USB soundcard on-the-go, a really frustrating experience. Eventually I found the problem in the source code, fixed it, and submitted it to LKML - happy end. But it's not the only problem I had, and not everyone is lucky to have an easy problem - the more non-standard the platform is, the more problematic it is, just ask Microsoft Surface Book users for confirmation.
- Second, power management is already a somewhat unsolvable problem on x86_64, again, it's a known platform, and often with vendor support.
It's increasingly difficult to do power saving in modern laptops with highly integrated SoC - a single component can prevent the entire system from entering a deeper power saving state. In the old days, CPU and graphics were basically everything, but nowadays there can be an endless number of traps - a SATA driver or an audio driver can be the culprit. And even when developers have gone through the trouble of supporting power saving in a device driver based on the existing documentation, it's often plagued with mysterious bugs that baffles everyone (the Window driver often includes nonstandard workarounds that is difficult to be discovered without familiarity with the hardware and systematic testing). And not to mention that many subsystems are poorly documented that prevents the implementation of power management. On many machines, it's already safe to say that nobody knows how power management really works, and nobody knows how to fix it.
- Third, reverse engineering the GPU driver is hard, GPU driver is still a disaster on Nvidia x86_64 and ARM SoCs.
In the past decade, it's well known that Nvidia had done a successful job to destroy Nouveau, the free and open source driver for Nvidia graphics, by simply not providing documentation and tech support. It took years of reverse engineering to get basic 3D rendering, and another few years for reclocking support. And the introduction of signed firmware for hardware initialization and control essentially rendered Nouveau unusable on the last few generations. The problem is GPU is not limited to complex hardware like Nvidia graphics, even the graphics on relatively simple ARM SoCs have this problem, documentation is nonexistent and reverse engineering is slow. The Mali GPU commonly found on ARM single board computers is still having problem on performance, stability and hardware support.
Even on an extremely popular platform, with known documentation (after requests from the community) and strong community support - the Raspberry Pi, it still takes 3 years or so before the 3D graphics driver, VC4, is developed into a usable state.
---
Porting Linux to Apple Silicon is a challenge that requires developers to accomplish a similar task, but under the conditions of (1) to a brand new platform, (2) with unknown, new and non-standard peripherals, including the GPU, (3) without adequate documentation. It's easy to make the kernel boot, but making it usable is the sum of all nightmares.
You'll find none of the peripherals works, and the community reverse engineering efforts will take years before getting basic functionality, and even then, the battery will only last for 2 hours and will forever be broken. Graphics acceleration will be nonexistent or just borderline usable. And only Apple knows the technical details, nobody can fix it.
Unless the circumstances change and indicate otherwise, I think the Apple Silicon port will be a serious waste of community time, talents, and resources. It's better to spend time on a platform where vendor support and documentation exists...
However, the conclusion assumes that a serious competitor of Apple Silicon will eventually emerge and more supportive to the community, but it won't necessarily happen. I'm somewhat afraid that biting the bullet and reverse engineering the Apple Silicon could be the only way to have a high-performance Linux desktop on ARM - I hope not.
First they ignore you
Then they laugh at you
Yet.
However, considering Apple's behavior around iPhones and iPads, I don't expect those hopes to come to much fruition.
They also make hardware that to take advantage of the new software features need to become obsolete
Linux extends the life of any hardware it runs on
This new hardware is awesome!
I could care less overall though.
Frankly, open computing can be done fast enough to not be a worry. I will stick with all that and see where this new path leads.
And my mind is open. Who knows? Maybe it all ends up in a good place.
I am quite happy to run FOSS on the many devices that will do that reasonably for the foreseeable future.
How will the GPU driver support arrive unless Apple opens up the specs to it? Either these open it up like AMD and the community writes a driver, or they keep it closed and people try to reverse engineer something that is a poor second best (hello Nouveau).
What do you realistically think will happen?
It's just not worth it.
When is driver support coming?
When will audio on Mac's work on Linux?
When will the touchbar drivers be made available?
Apple doesn't give a shit about Linux, but they also don't make it easy to use their hardware.
And to answer the question posed, no, I would never give this company money.
I remember the days of very little Apple compatible software on the shelf at retailers, and no games. I was probably one of the first students to use a MacBook with OSX for CSCI 101 because many classes required Windows. That was lack of freedom. The App Store has more software than any other distribution channel at any point in my life.
Edit: I also love freedom from malware, which I understand is probably a temporary situation. But it’s been a good run so far.
Apple does not, but the GPL does.
We're talking about Apple, right? The company that made an entire software platform called Bootcamp, specifically to enable a competitor's OS to run on their hardware? A company who custom-developed drivers specifically to be compatible with a competitor's OS on their own hardware? You're talking about that Apple? The one who said they would be open to allowing Windows to run on M1 if Microsoft developed a compatible version of Windows?
I just want to make sure we're talking about the same company, because you seem to think we're talking about a company who runs in the face of competition, where the Apple I know confronts it head-on and goes out of their way to be compatible with the competitors.
We are talking about that Apple which sued a recycling vendor in Canada because they recycled devices instead of trashing them.
We are talking about that Apple which bribed judges in the US to deny its endusers the right to repair.
We are talking about that Apple which removed even the audio port of a device to prevent its competition to breakout of the locked hardware with their "upgrades" like better cameras, or even payment systems that wont be supported by Apple.
We are talking about that Apple which even changed their goddamn shell from the BSD fork because they didnt want to "open source" (Apple thinks this is zip file dumping) their own bash, which was the only reason bash was outdated for decades.
Yes, we are talking about that Apple.
Once anything is a competition, it will be extinguished by Apple. They only care about profits, and nothing else.
Care to expand on that?
> We are talking about that Apple which sued a recycling vendor in Canada because they recycled devices instead of trashing them.
That's incorrect. They sued the company because they were supposed to take the devices apart and recycle/recover the parts. Not resell them as manufacturer refurbished.
> We are talking about that Apple which bribed judges in the US to deny its endusers the right to repair.
Again, please expand on that.
> We are talking about that Apple which removed even the audio port of a device to prevent its competition to breakout of the locked hardware with their "upgrades" like better cameras, or even payment systems that wont be supported by Apple.
Arguably, for the 2 things you have mentioned, the Lightening port would be much better suited. They took out the headphone jack because wires are a pain in the ass and the state of the art for wireless headsets is good enough for the majority.
> We are talking about that Apple which even changed their goddamn shell from the BSD fork because they didnt want to "open source" (Apple thinks this is zip file dumping) their own bash, which was the only reason bash was outdated for decades.
So brief history of the defaults shells in macOS. First 3 releases it was tcsh (BSD - inherited from NeXTStep), then for a while, it was the GPLv2 version of bash (last version to be released under GPLv2 was 3.2), more recently they moved to zsh (MIT). The critical part to get here is licensing. The GPLv3, like it or not, is a controversial license. Apple have an issue with GPLv3, so they avoid software that uses it. Frankly, when bash transitioned to GPLv3 is when Apple should've made the change, but that is a different discussion.
...
Say more...?
If they see a similar use for Linux support, they'll do the same. If they think it will hurt them in some way, they won't.
But I think it's fair to at least consider the "undermine" possibility considering that on iPhones they've consistently blocked attempts to jailbreak or open that platform in the way an alternate OS does on their Macs. We've already seen incremental moves to make MacOS app distribution more centrally controlled. So I honestly don't know where Apple believes their long-term interested to be on the topic of facilitating, or at least not actively blocking Linux.
It's just business: Apple won't intentionally remove features that makes their hardware more attractive. It's where they make most of their money.
Let's rephrase that: The company that made a generic X86 computer and intentionally created a non-standard way to boot operating systems on their run-of-the-mill X86 hardware, so that other X86-compatible operating-systems running on the same hardware would have issues and make OSX look better by comparison.
Yeah, that company. I don't expect them to do jack shit for compatibility.
How generous of them. And will they provide microsoft with the specs needed to do so?
I already pay for closed source Intel and AMD, I wouldn't mind being able to use M1s, but, I just don't like Apple laptop hardware.
This is an idealism vs. pragmatism debate. Ideally, we’d have a solid hardware stack for Linux. Pragmatically, we have top-of-the-line metal for which there will or will not be Linux. I know which one I would fight for if I still believed in consumer-grade Linux.
I am just as in favor of fully open source hardware, software, the whole stack (heck, I'm a huge RISC-V nut), but I won't stick my head under the sand and pretend that I'd rather have a 10x slower, but FOS, machine.
I applaud Purism and other companies that strive to make a fully open source full stack, but I won't always have the financial freedom to purchase products that are either slower or less ergonomic than a closed alternative. It's sad, but it's pragmatism.
That would be these guys then: https://www.sifive.com/boards/hifive-unmatched
https://mntre.com/media/reform_md/2020-05-08-the-much-more-p...
Edit: and here I was, thinking a smiley would clarify things. For the record, I'm of course not arguing against supporting sifive. I just think that in the context of this thread, what MNT are doing is much more directly comparable to porting Linux to M1
> a 10 times slower but open platform
With the mindset like this they will never smell any competition from Linux.I don’t think you or Apple or anyone else has to worry about that
Unix command line driven tools are a big part of my work and the native OS unix does everything I need it do. It seems a lot of people became committed to Linux coming from Windows with no unix system under the hood. I suspect if Windows had been unix based like Mac OS, Linux would not have become quite so popular. I'm sure avid Linux users will disagree, but for me the unix model command line interaction is what matters. Go easy, I'm not trying to make an argument for one unix over another. Just arguing that the need for a capable unix is already met by the native OS.
I mean I still prefer it over windows, but it is not the same experience as linux.
[0] https://gist.github.com/skyzyx/3438280b18e4f7c490db8a2a2ca0b...
Yeah, you can alias all utilities called g<something> to <something>, but you can't reasonably expect all users of your scripts to do so as well.
Using macOS is PITA.
"Oh just use Macports!"
"No macports is trash, use Homebrew!"
"Homebrew sucks, use Gentoo/kMacOSX!"
Of course none of them were particularly interoperable at the time and all had extremely arcane invocations and setups. It was very lipstick on a pig
The value of being able to open the lid on a brand new machine and just run a terminal is significant. It’s compelling.
It sounds so silly but it’s the same silly that makes us buy the same beer and the same coffee and shop in the same stores all the time.
I migrated off macOS for good during the pandemic though. I yearned for rc.local and xinitrc too much. I live a somewhat (ahem) humbler life now with i3, Firefox, python, vim, and Notable: they were all I really needed, but I miss the shiny.
- modifier keys varied by application (was it alt-shift-left, CMD-shift or ctrl-shift-left I should use to select one word back in this app..?)
- CMD-tab only switching between applications is probably nice if you have good time to ponder your next move. When I only want to go back to whatever application-or-window I came from and I end up a completely different place because the last place I were was another window of the same application it breaks my flow and it is infuriating.
So yes. I'd very much want a Linux distro on it.
I fully agree with you. Microsoft's biggest mistake was not giving the POSIX subsystem the same level of relevance than Win32 and just carrying it around to fill check boxes.
Had they been serious about it, it would have been more than enough for UNIX like workflows.
- it shouldn't be the community's (or a crowd-funded dev's) responsibility to provide software support for hardware produced by one of the largest companies out there (bonus: with zero hardware specs);
- Apple could make all this futile with a push of a button (SecureBoot can be disabled for now, but what guarantees are there this won't change?);
- other arm64 machines will be available soon enough, most if not all of them with publicly available specs;
- I do not own an M1 machine, nor do I plan on buying one;
From a technical perspective, it's doable. Looks like it has UEFI and can run Windows. But we know nothing about possible silicon errata and required driver changes (or at least I don't).
Anyway, I'm sure others would like to see this happening and would actually pay - hopefully the Twitter poll will reveal whether this is actually worth it.
Disclaimer: I ported things to arm64 for a couple of years as a contractor.
There's no clear guarantee that there will be other performance-competitive arm64 CPUs in laptops anytime soon. I don't think anyone has as much incentive as Apple does. Who else is as incentivized to make a laptop/desktop-class arm64 chip? Maybe ARM themselves ... but without a mainstream OS to run it on (with mainstream software available for it), I don't see it happening in the next 5 years. Its a chicken-and-egg problem that Apple is uniquely suited to address with their vertical control over the Mac ecosystem (hardware/dev tools/OS/competitive software).
Server chips, maybe - but we can already see with Azure that competitive x86 chips from AMD have killed Microsoft's plans to deploy arm64 on their cloud service.
But this:
- Apple could make all this futile with a push of a button (SecureBoot can be disabled for now, but what guarantees are there this won't change?);
This is huge. We could all contribute to getting Linux ported to M1, and then Apple could shut us down with little or no effort. And ... maybe they won't? They probably won't? But who knows? Why build an ecosystem around a hostile hardware vendor?
I have heard a theory that ARM Servers have a difficult time because there aren't really many developer machines that run ARM. With Apple changing that, there is a chance that the next round of ARM server chips will have better success.
But my point stands - 3 years ago Microsoft was talking about deploying arm64 to Azure, and those plans were cancelled with Zen 2. Given that GCP will be gone by 2023, that leaves half of the cloud titans with arm64, and the other half without. Will AMZN sell Annapurna chips to other services? My guess is they won't.
Someone has to make arm64 chips for other data centers and cloud providers, and Cavium/Marvell and Ampere have failed trying. It's a huge investment for an uncertain payoff. Annapurna had buy-in from the rest of Amazon.
What I’m really curious about is how the ISA for the M1 is different from the CPUs Windows for ARM already supports. And as others have mentioned — I think GPU support will be more difficult, but I don’t have any data to support that.
But, it’s not like alternative (and mainstream) OSs don’t exist for ARM64. Maybe with some faster ARM64 CPUs, this could be the push to really make ARM a viable architecture for more than just Macs.
You do know that there's no software available for it, right? Without software, arm64 Windows is not a viable operating system for an arm64 laptop. ARM Windows is as relevant as MIPS Windows or Itanium Windows without the huge ecosystem of software you get on x86.
And who goes bankrupt first to build this platform? Is it the laptops makers who lose millions investing in laptops that almost no one will buy because there's no software for them (actually, they already did that). Or is it the software devs who lose millions porting their software to laptops that no one owns? When Apple says the future is ARM, everyone knows the hardware will be coming and they'd better fire up their IDEs. There's no such confidence in ARM Windows.
https://gs.statcounter.com/os-market-share/desktop/worldwide
As you say, Qualcomm is probably the closest to being competitive, but there is a lot of work to do to catch up. Nvidia is trying to acquire ARM, so they seem to be interested in moving into the space. Samsung and AMD are now working together in ARM processors, so they are another player. Intel used to have an ARM presence via their DEC acquisition, but that was sold to Marvell about 10 years ago. Marvell might move into the space. There are also some ARM startups, some of which were founded by Apple engineers. Lots of activity. Intel is probably the biggest loser in all of this. Sad to see that. They will respond, but it will take time.
At any rate, in terms of desktop market size, Windows is the biggest (76%) and getting a chunk of that processor revenue is a big enough payoff to warrant the required investment. Doubling or even tripling Linux desktop share is comparatively small potatoes. Microsoft is mostly agnostic so they will encourage cannibalizing X86 Windows in favor or ARM Windows rather than lose market share. I think we are going to see a big uptick in ARM Windows investment and product announcements.
Perhaps - if it makes sense, cost/performance/power-wise to put a core like that in an Android mobile phone. I guess it would? But in the next 5 years?
Remember that anything Qualcomm makes will be optimized for mobile phones and only mobile phones. They won't waste any die-area at all on anything that isn't required by the Android phone market. The Android phone market is the only market for these chips that sells enough units to pay for their design, and it's fiercely competitive.
Especially with ARM's own designs improving so much and Samsung abandoning their own under-performing designs in favour of ARM's, Qualcomm is going to get a lot more competition in the next few years.
Anything they put on those chips that makes them more expensive or use more power than competitive chips is going to cost them design wins. No way will they sacrifice 10% of their mobile market for some pie-in-the-sky, maybe-maybe-not ARM laptop market that doesn't exist and will depend on lots of theoretical buy-in from Microsoft/Redhat/Canonical/Adobe/Lenovo/Dell/etc.
The legacy support of closed source software windows has is working against them atm.
That's pretty outlandish. Try saying that to someone who uses Excel or After Effects or Photoshop for their work. A performance linux-based arm64 laptop has everything working against it that a windows arm64 laptop does, and arguably even more.
You must be thinking of a different Open Source community than I am, because the Open Source community I know thrives off of providing community support for software on major vendor's hardware.
All my contributions required some support or at least confirmation from the hardware vendor that my assumptions were correct - e.g. I submitted a patch for a GICv3 errata on a specific chipset; I had to confirm with the vendor that my findings were correct - sure, the patch "worked", but was it doing the right thing or just hiding the real issue? (e.g. why did writing zeros to some magic register fixed the problem we observed? was it a hardware issue or a software issue in the kernel? without feedback from the vendor, such things are a lot harder to isolate and fix properly).
I agree about OSS thriving on major vendor hardware, it's just that Apple is special in this case and intentionally makes it hard for the OSS community to provide support for their hardware.
And that's too bad, UEFI would have been easier to deal with imo.
This is the Sputnik moment for open source. Should ACPI (and its associated lassiez-faire mindset) become obsolete as a standard, then general purpose computing on consumer devices would become history.
All the comments about how Apple's Macs are not worth it are entirely missing the point. There is nothing comparable to Apple's M1 right now. Your Purism/Lambda labs/Starlabs/System76/Pine64 usual Clevo shell machine with Linux pre-installed would never be able to compete with a M1 powered system. This isn't about 16:10/3:2 display ratios, machined aluminium, or HN's favorite complaint: "build quality". Even a well-funded premium laptop company like Razer would not be able produce something to compete with the MBP if they don't have a similarly efficient chip. Forget about the bigger players like Lenovo and Dell. Intel and AMD dropped the ball big time, and if the open source community doesn't step up, then the future will be locked-down ARM systems. RISC-V will not be competitive for another half a decade and there is no guarantee that it won't be locked down if the community does not push back against the embedded hardware culture (where VHDL/Verilog libraries are referred to as "intellectual property") which pervades ARM's heritage.
I think you might be two orders of magnitude off here. A class leading general purpose compute chip on a cutting edge process? I don’t think $5 billion to produce working chips is unreasonable. If it were only $50M to produce A14/M1 level chips, Qualcomm would already have done so.
Cerebras is cool, but they are not on TSMC 5nm and don’t have to design general purpose silicon, where you have pesky things like huge reorder buffers or 8-wide decode blocks, which are not seen in any other production CPU right now.
A competitor also needs 10 years experience designing higher and higher performance ARM cpus in tremendously heat/power constrained systems (phones). There are a lot of long term threads that have come together in the M1 chip.
For a long time, we’ve been told that the nasty x86 ISA is no big deal and that a good CPU can cache decoded instructions and play other tricks to make the ISA irrelevant. But x86 really does have fundamental problems. The length of an instruction can’t be determined until the instruction is almost fully decoded, which makes deciding in parallel quite nasty. And the x86 memory model is fundamentally more expensive than ARM’s.
M1 is the first serious attempt to make a competitive high-performance non-x86 CPU. Perhaps the real lesson from M1 will be that x86 can’t compete.
Sure its the best laptop/ipad(other pad) chip out there. And it (and it's next versions) will likely remain best for quite a while.
But it's not that the rest of the chips out there turned into garbage. They are still very usable.
Personally I have gone away from laptops back to desktops. Having desktop and a phone/tablet combination for me is better than just laptop or laptop + phone/tablet. I still have my laptop, but I very rarely use it now. (mostly if I travel, which I don't because of covid :) ) But having latest gratest laptop is not anywhere near the top of my purchasing priority.
And on desktops, latest AMD chips and lots of fast ram, are quite decent.
Bottom line even if OS never has anything that matches M1, it will still be fine.
Most people - unlike you - don't care that much about desktops, they either have laptops or tablets.
There are many hundred billion dollar companies motivated to close the gap. It may not be this year.
Absolutely
Apple has the performance edge now because it purchased ALL of the 5nm chip fabrication capacity of TSMC. This does not mean:
- they will be able to do so forever
- someone else won't be doing 5nm in the next couple of years
So, the same sort of performance will come to other devices in the near future. The best Apple can hope to do at this time is to get enough attention to get some new users and hopefully lock them in into their cozy eco-system.
Most importantly, most users don't care about an expensive powerful devices. Highest selling consumer devices are still budget devices and will continue to be so for the foreseeable future. Servers on the other hand will continue to demand powerful hardware, and Apple isn't doing anything there.
Personally I would have been happier with Atari or Amiga instead, targeted mobile dev back in the J2ME/Symbian days, I did had access to console devkits for a while, so for what I care everything is good as it is.
Would you expound on this in greater detail? I am interested in your thoughts.
That is not to say the computing landscape was fundamentally better fifteen years ago. I think it is almost the same. What has really improved is the general usability and stability of drivers (no more rebooting, random freezes and if you run linux your X server not working every other update), which is definitely something to be proud of. What has not improved is basically everything else and I'm really not sure why.
If I had to guess I would say it has something to do with managers the world over just not giving a shit about delivering something good, as long as it sells. As platforms have started having more headroom for bad software, "as long as it sells" has started to have a wider and wider performance profile. Landing us where we are today: with many of the same features, much less privacy and every other app packed with an entire browser "because it makes it easier to develop".
Even as recently as last year I had a more relaxed stance about this but I guess it has just been bothering me now that I have more time to think about the state of my work (and everyone else's).
Edit: I see now I responded to something slightly different than what was requested.
Modern (AAA) videogames should not be bought or played because they are produced by a sick and exploitative industry that really needs to die. Instead, we can prefer the indie games that work well with what they have: Generally a lower graphical budget that runs significantly better on hardware that is "out of date".
For office-type processing and messaging, there are generally application choices and tradeoffs that can be made for more performance instead of more eye candy. The average office worker (which I guess includes most people here) will not materially care that it doesn't look quite as good. Another upside is that as a company you don't need such an enormous budget for office hardware.
I'm not following. Compiling and media editing depend on a fast platform, are you really suggesting people should avoid doing those tasks?
Edit: You mentioned compiling, which is not an incredibly salient point. If you're not doing linux kernel development (and even then...) you do not need a fast machine for this. Even the linux kernel compiles within a few minutes (maybe 5? It has been a few months since I tried this) on a raspberry pi 3b. For more contained projects (e.g. something you might write in lisp, rust or go) it'll take somewhere between one to twenty seconds.
Does it need to be? x86 had every opportunity to become a locked-down, exclusive standard too, and it grew the way it did, into a cross-vendor standard, for a reason. Why will a similar trajectory not apply to the M1?
Way different roots in mobile when compared to PC
Also Intel is a very different entity than Apple. They produce commodity hardware, where Apple creates consumer experiences. Apple's incentive is to keep M1 closed to give their software ecosystem an edge vs. competitors.
Linux on Mac is not worth the effort. I ran Ubuntu on a 2011 MacBook Air and now run Fedora on a 2014 MacBook Air. There were several papercuts even with these relatively open models where it took a while to get suspend, trackpad, fan, webcam, wifi, etc. working properly. You will need to use binary drivers for the latter two features and some strange EFI bootloader. It seems that newer MacBook compatibility is worse:
https://github.com/Dunedan/mbp-2016-linux
I use Debian on ThinkPad at work and plan to buy this or a Dell XPS for my next laptop.
Apple's m1 computers have no PC analogue and may not for some time. I've not used one but it appears they really are different, and better, than anything else in their class.
And they don't need to. There's hardware available that works just as well, the buzzy marketing space around M1 is just that: marketing. Nobody needs this.
Get yourself a laptop with an nvidia card and Ubuntu. Even today it's a garbage experience that takes up hours/days of debugging to get right, and then it's still way worse than the mac/windows experience.
If you take FOSS to mean only GPL, then yes, I get your point.
Federici has said in one of his interviews that Apple wants people to hack on the M1 machines so I’m hopeful that they will be more open than on IOS.
All of that said, I won’t hold my breath.
The remaining problems on Ubuntu 20.04:
1. The brightness control keys don't work. They generate the event they are supposed to generate then I see an error in syslog. Workaround: two hotkeys bound to windows+fn+brightness up/down to run a bash script that increases / reduces the backlight level.
2. The screen works at 40 Hz since Ubuntu 18.04. I expected to be unusable but actually I can't notice the difference with 60 Hz. Noveau works at 60 Hz but it's unusable for other reasons (I don't remember the details, I checked months ago)
Problems I had because of the NVIDIA driver: the laptop didn't shutdown, only restart. Workaround: I press the power button right after the restart, when the BIOS shows up. Not a big deal because I shutdown a couple of times per year.
> The brightness control keys don't work.
> The screen works at 40 Hz
I think you need to use a laptop (with factory OS) produced within the last 2 decades, because your garbage detector seems to be broken.
This. Writing this from a laptop running Ubuntu with an nvidia card and I can feel my body tense up just reading it.
I remember several nights in college just struggling to get the drivers to work and finding the right cuda spec from the repository, after combing through multiple sources.
It's still a nightmare and I always dread that the StackOverflow and Ask Ubuntu posts in the bookmarks folder that I've reserved for this arduous process will be obsolete when the GPU card crashes again for the umteenth time.
>Apple's implementation will always be ahead, better, less bugs...
No, it's not and really hasn't ever been. Every platform has a shortcoming and claiming it's ahead of the game is a biased stance. The M1 specs may be impressive now, but the same can be said of every "new" SoC chip.
>... linux port will always be a shitty experience...
People who really love Linux and FOSS actually prefer to tune their environment to their expectations. The weeks of tinkering is part of the hacker mindset that is slowly eroding, and I'll take the weeks long config experience over a locked environment.
To sum it all, Linux and consumer open systems have a different target audience from Apple. Apple users are like car lessees, they just want to hop in and drive their car until the lease is up. Linux users are like the mechanic working out of their garage who drives a hodgepodge vehicle they pieced together. To say that the Apple experience is better is just hype, and calling the personalization/optimization process "shitty" is closed-source/closed-minded view.
Linux is like the cockroach of the OS world, it can do just fine in any environment. After the apocalypse, I'm pretty sure the OS the cockroaches are going to use.
If it hadn't been for reverse engineered proprietary drivers, Linux would have never gotten to the point it is now.
(I won't trust myself to speculate on what is making GPU drivers so difficult to get right)
In my experience, there are not many ARM SoCs that have mainline support, even some of the Raspberry Pi boards don't, and they're some of the most popular ARM SoCs used for Linux.
A lot of these projects get to the stage where a forked kernel will run on the SoC, but then support and attention peters out when it comes upgrading the fork or getting the work into mainline Linux because a new and better ARM SoC will be released, and then that requires the same amount of work on a new Linux fork. Since each ARM SoC released is a unique hardware configuration, a lot of this work will be for naught when Apple releases new SoCs that require the same amount of work, or even more work, to get Linux running on them.
All that horrible forked kernel stuff is the realm of companies with closed development teams who don't care and just want a product out the door.
The PS4 Linux stuff I did was not upstreamed for lack of time/interest, but I absolutely considered it being decent enough to upstream when writing it. PS3 Linux running under GameOS mode patches were indeed upstreamed (though there was a bit of a lawsuit along the way so all of my code ended up attributed to a friend instead since I was keeping a lower profile at the time...).
Or people who gave upstreaming an honest try but got fed up. It's not the easiest project to contribute to.
1. There will be far more interest in being able to run Linux on that hardware, and in being able to keep it up to date (since it'll be a daily driver).
2. Apple are probably less likely to regularly make drastic changes between hardware revisions because they will need to support multiple hardware revisions themselves (Apple are typically pretty good with supporting old hardware). Their only strong motivator would be to actively prevent people running other OSes but I don't think Apple care that much about screwing over that niche demographic - especially when they're already paying for the hardware.
As for #2, perhaps, but we've already seen what happens when Apple adds their proprietary hardware to existing x86 systems with things like the T2 chip or the Touchbar. Support for either on Linux is still poor and nonexistent. Full integration with hardware and software on Apple's end means that they don't have to worry about compatibility like 3rd party hardware manufacturers do.
Why would ARM Macs, which seem quite a bit more locked down, ever become a better supported and more popular Linux hardware platform?
I wish they would become one, but I don't see how we can make this leap.
(I've got fixing up amdgpu to work on this 2015 iMac on my TODO list too... might even do that as a bonus warm-up if this takes off, while I get my hands on an M1 mac)
I still use my late 2013 MBP running nixos. That machine was a great piece of hardware at the time and still works fantastically well even today. (Its really sad how terrible most most non-Apple speakers are in laptops).
I would buy an M1 Macbook Air if it could run linux and had good power management. (I'll say the same about an M1 MBP in the generation where they give up on the touchbar and go back to hardware buttons.)
You have a point, but the pmOS project among others is working on upstreaming mainline support for these devices. This involves a lot of effort, to be sure but meaningful progress is being made.
At least AMD is supporting upstream Linux development for GPU support, if you care about Free software and control over your computers, throw your money at companies better aligned with those goals. Don't reward Apple for being assholes.
<=5nm AMD Zen SoCs will be fantastic as well
https://www.anandtech.com/show/15603/the-samsung-galaxy-s20-...
I don't know how some of these tech writers made it out of 6th grade science class with those charting skills.
When Zen 2 came out, IPC became a serious issue for Intel. I imagine that M1 makes it a lot more urgent.
Also keep in mind that, in a sense, M1 is a dead end. Integrated fast memory is great when the size fits, but it's terrible if it doesn't.
I haven’t the foggiest idea if any of this could make it to competing ARM chips, but given how many years Snapdragons have been lagging relative to the iPhone “A” chips, I don’t feel too optimistic.
The only thing it does is remove a branch in arm64 where the various JITs have to do:
Int value = (int)some double;
If (flags) value = x86 sentinel
Whereas x86 systems don’t have a branch by definition.That is all the “special instruction” does.
Until then I'll be enjoying the M1 because even if they're assholes, they're assholes who can make a computer I actually like using.
It's many things working together, 5nm is not "most of it".
Not to mention TSMC is already working on 3nm.
The reason for this is they have the scale to book all of TSMC's processing capacity for a new node. The AMDs of the world have to wait a year to receive the scraps while Apple move to the next TSMC node.
I’d expect it to be difficult for amd/intel to match performance without similar software capabilities.
Considering Apple has been so adamant about misrepresenting what's really TSMC silicon as "Apple Silicon", I'm viewing everything they say through "PR oozing with insecurity about not actually controlling access to their chip's manufacturing process, and desperate to convince consumers (and investors) of this being a uniquely Apple advantage" glasses.
The market has changed, and most CPU vendors don't fab their own chips anymore. The IP is in the chip design. Are you saying TSMC designed the M1?
Most M1 vs. PC comparisons are being made against Intel's ancient process, for obvious Apple-favoring reasons.
0: https://www.extremetech.com/computing/315186-apple-books-tsm...
People replying "no" seem to be doing so for ideological reasons with no regard to practicality. Obviously it'd be better if it was an open platform, but it isn't, and that's fine. Whatever you think of Apple, you have a very simple option of not using their products. I don't use a Mac for that reason. But with the performance and price of new M1 machines, I can definitely see a usecase, probably not as a daily driver, but I'd still need it to run linux natively. Anyway, people who will take on such an effort (with the appropriate funding) aren't necessarily going to be working on something else if this doesn't materialize.
I don't think that asking this kind of question on twitter/hackernews is representative. Start with something and open up some way to fund it, then either continue or stop if it makes sense.
I wouldn't expect Apple to write or finance any code, but I could certainly see them providing documentation, and making an engineer available to answer questions, if the request came from a suitably professional source.
1: https://www.macrumors.com/2020/11/20/craig-federighi-on-wind...
Give it 2 years and a competitor will beat it, Apple will be behind yet again and the price will be higher than ever.
And again, this is only for single thread. My computer is already blazing fast and intense programs will use multi threads.
Will a competitor beat them in two years? It's possible, but I expect Apple to keep their lead for a while. CPU-wise, the iPhone has been well ahead of competitors for several years (even as other specs like memory lag behind), and no one else appears to be making serious inroads in this space.
The iPhone is a good example because supposedly it's the fastest, but it doesn't feel like it. Maybe it's the animations, maybe it's the annoying Apple popups to sign in and update. Whatever the case, it doesn't make for a great device. (My experience is from 2018)
Since my job was developing a Linux distribution from scratch, I was going to be running Linux on whatever I got. I (naively) assumed that since I saw a lot of MacBook Pro's at open source conferences and other places where open source software is written, and the MacBook Pro was x86-based that Linux would just work -- but it was a disaster.
Trying to take a laptop designed for macOS and turn it into a Linux laptop is going to be a painful and frustrating experience. It's like buying a Tesla and trying to put the Toyota navigation operating system on it. If you like Toyota's system then just buy a Toyota.
Hypothetically if one-day the performance gap between Apple's chips and the rest of the industry cannot be ignored (contrary to Apple's marketing, it's not there yet) then having Linux well-supported will allow third-party vendors to provide on-going Linux support (because the daunting heavy lifting has been completed by marcan).
And the M1 GPU is Apple's full custom GPU. Even if someone tried to reverse engineer a driver, it would take decades.
I don't think it'd take decades. Nouveau was pretty ok after like 5 years, wasn't it?
(Especially not to the point of having a composited desktop; long tail game compatibility is less of a critical thing since, well, there are next to no games for ARM Linux...)
I don't know how successful that project was, but it might provide some ideas around crowdfunding improved hardware support.
So I'm sure it's cool and people will like it but no, I'm not paying $5 month for a crappy computer experience. Good luck though!
Or is the fact that the physical distance is so close with the newer process that a small timing delay doesn't matter any more.
If the firestorm cores are laid out correctly, those make sense to be symmetrical.
Apple could port Linux without much trouble. It's just Linux drivers -- they are very capable of the work.
Something like a less beautiful Mac Mini M1 would probably suit their server needs decently.
I wish they would sell the chips and boards as XServe again though, and perhaps offer some cloud computing too. I don't see it happening though -- they are going all in on the consumer market.
It’s a pretty safe bet that up until now the Qualcomm team hasn’t been given the freedom or the resources to make their best effort on a general-purpose desktop-class chip. Now that Apple has shown what is possible, you might think that the gloves are coming off. Especially if Microsoft and/or Samsung* indicate that they would buy such a chip at the price it would have to be sold at.
* Microsoft and Samsung currently sell ARM-based laptops, with the Microsoft version being a slight modification of the Qualcomm chip in the Samsung.
Having Linux natively run on the M1 would bring more Linux devs to the platform. Linus himself would be one of them. Also it means that if Apple deprecates older machines, there is a second life, even if one preferred MacOS in the first life of the machine. Especially, as Linux for most tasks can be run well on older hardware, just look how much is done with the PIs.
Yes, this seems to be an uphill battle, but that is the reason funding is needed. And while there are many obstacles, there is a chance that it can be done and I am willing to take it with some of the funding.
Apple supports Bootcamp on their Intel hardware. They don't seem to be fundamentally opposed to people running an other OS on their hardware. The best way to get any support from Apple for this, be it some documentation or some binary drivers, would to show clear interest and an existing community.
P.S.: Any larger motion on running Linux on the M1 also would help pushing other vendors towards offering ARM-based systems for running Linux, as it shows a fundamental interest in such a platform.
I asked a friend who used to work in chip design at IBM and was blown away by the design of the M1. according to my friend, the design is extremely custom and most likely hand laid out for their specific optimizations. Also they were stumped by how apple could be getting consistent timings between cores when the design isn't totally symmetric for a particular cluster.
I am not going to spend time on anything to that company tax every developer, takes 100$ yearly, virtue signals that they focus on privacy but phones home every time when binary is executed.
I am sorry but I don't like to build home inside walls.
Successful Linux on Apple Silicon start as something almost completely useless that only hackers want to use (gets you a Bash prompt with GCC kind of thing), not that anyone wants to use. This is perfectly fine.
Imagine if, in 1990-ish, Torvalds had announced, "I'm taking donations for making a Unix clone for 80386 PC's that everyone will want to use in production".
https://support.apple.com/en-gb/guide/mac-help/mchl82829c17/...
I can't find a primary source for the comment in the tweet, but it seems widely regarded as true at this point, so fingers crossed it pans out that way.
This tweet https://twitter.com/never_released/status/133243677102043545... from the same author suggests M1 is "not any more locked down than [...] Intel", so I'm not fully sure about the technical details, but in the end you should be able to boot your own code.
Reduced security allows you to run any version of macOS, including the versions that are no longer signed by Apple.
With these M1 chips, you're gonna take a long time to get to that level of understanding. I think Apple would likely need to provide Linux driver support to get this to a complete model.
I'm sure the chip can be reverse engineered as they got Linux running on the T2 chip when it was jail broken.
/me exits the room.
The Pinewood Pro, an ARM based Linux laptop, is currently pretty poor but it costs $US 200. For $US 400-600 perhaps someone could make a good Linux based ARM laptop.
Amazon's Graviton 2 processors are meant to be pretty good. Perhaps they could do it. Or someone else.
Ars has a review or the Pinebook Pro : https://arstechnica.com/gadgets/2020/06/pinebook-pro-review-...
No idea how that happens from a business perspective, but Raspberry Pi seems to be a great model.
Perhaps a Pi Pro could be designed that meets some of those needs. The Zero is almost too mobile for a laptop to be usable, but who knows, maybe someone will come up with a unique design around it.
But if we don’t control the hardware, the. It’s always going to be a second or third class citizen on mobile (laptops or tablets).
A distro targetting just apple would greatly simplify what needs to be done and overall lead to a better user experience.
The goods obtained (Linux on MabBookAirX,Y) are very much non-recurring by nature...
Even if it is the former, updates & improvements take work. And they seem likely to be necessary here.
There is also the ongoing work. Apple currently releases a new iOS AX chipset every year. It’s reasonable to expect something similar for the M series. That means additional work to reverse-engineer. I’m not trying to be negative, but the amount of money required for that kind of ongoing work really doesn’t seem ideal for crowdfunding. Someone downthread made a point that most of the good Linux hardware support in recent years has come from Intel. That’s a great point. For the work this would need to be really viable and not just a fun toy, this needs to be backed by a corporation or by Apple itself.
If this were explicitly stated to be a toy/proof of concept goal, I might chuck $50 as a one time thing at it. Because why not. But for an ongoing thing with real support, I’m sorry, I don’t think this is feasible to undertake. I would love to be wrong about this, but I’ll add that expectations are a lot higher when you start out charging.
And here’s the real thing: As happy as I am that people want to explore this and as open as I will be to experimenting with this stuff when people inevitably reverse-engineer the M1 enough to get X11 running (because that will happen without any crowdfunding campaign — we’ve had people successfully get Android and other versions of Linux running/booting on older iOS devices), the real future of Linux on M1 and macOS will continue to be through virtualization. QEMU and other hypervisors (including the native HyperKit) are how most Mac users interact with Linux anyway — and QEMU is quite performant.
I get the appeal of doing something because you can. I get the appeal of wanting to use really nice hardware for other purposes. I don’t necessarily understand the appeal of running a Linux distro on bare-metal in a hacky way when running it virtualized is likely going to offer better performance than a reverse-engineer job funded by the potentially small Venn diagram of people who both care enough about Linux on the desktop to fund this sort of project AND who don’t have a problem buying hardware from a company that really gives zero fucks about FOSS ideals and is literally the antithesis of open hardware. (For the record, I’m not in that union because I personally don’t care about Linux on the desktop on modern Apple hardware (I do actively support people building PPC Linux distros for obsolete hardware).) Especially when macOS IS Unix and will be able to run most of the same userland packages as Linux once they are ported to ARM, albeit with a much prettier windowing system and much better commercial software support.
If you’re someone who really loves KDE or GNOME or Xfce or whatever DE, well, you do you bro — happy for you. But you’re likely going to be way happier on a machine that doesn’t cost $1500 and isn’t designed in ways that actively discourage you from replacing that DE or make booting to another kernel more difficult.
Between VMs and other cheaper hardware this feels very silly to put it lightly
And why is that? Instead of maintaining an entire PC OS themselves they could build macOS XI as a desktop environment on Linux and benefit from the vast ecosystem. But they don't, because...? Presumably because they value total control.
The world went mad.
Especially since such reverse engineering will require constant chasing after changes to stay relevant.
From the thread Apple have actively left the door open so other (currently non existent) OS could be booted, but as the author said, they’ve left it open but have not provided documentation.
From the thread:
“Linus himself has said he'd love to see Linux running on M1 macs, but doesn't think it'll happen. Not because they're locked down, but because Apple won't help us with documentation.
But they at least did this:
https://mobile.twitter.com/marcan42/status/13331260180689551...
The fact that Apple allows this in their secureboot policy is critical. Linux ports to game consoles / iPhones / etc are all fun and games, but you're always at the mercy of exploits, and the resulting cat and mouse game.
That means all effort is wasted unless exploits keep up, and regular users would never want to do this and severely limit their access to official upgrades and such. But this isn't an issue with M1 macs.”
Continues to discussions of limitations..
No documentation is being hostile to other OSes running on their hardware.
As a long time mac user, the idea of them supporting other operating systems seems really un-Appley to me. What happens if I put linux on my (still under warranty) macbook and then have to take it in to an Apple store for some reason?
Are they? Apple isn't only iOS. Macs have always had unlockable bootloaders.