Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Desktops (Apple) Linux

Linux Distro For Apple Silicon Macs Is Already Up and Running On the Brand-New M2 (arstechnica.com) 129

An anonymous reader quotes a report from Ars Technica: Unlike Intel Macs, Apple silicon Macs were designed to run only Apple's software. But the developers on the Asahi Linux team have been working to change that, painstakingly reverse-engineering support for Apple's processors and other Mac hardware and releasing it as a work-in-progress distro that can actually boot up and run on bare metal, no virtualization required. The Asahi Linux team put out a new release today with plenty of additions and improvements. Most notably, the distro now supports the M1 Ultra and the Mac Studio and has added preliminary support for the M2 MacBook Pro (which has been tested firsthand by the team) and the M2 MacBook Air (which hasn't been tested but ought to work). Preliminary Bluetooth support for all Apple silicon Macs has also been added, though the team notes that it works poorly when connected to a 2.4GHz Wi-Fi network because "Wi-Fi/Bluetooth coexistence isn't properly configured yet."

There are still many other things that aren't working properly, including the USB-A ports on the Studio, faster-than-USB-2.0 speeds from any Type-C/Thunderbolt ports, and GPU acceleration, but progress is being made on all of those fronts. GPU work in particular is coming along, with a "prototype driver" that is "good enough to run real graphics applications and benchmarks" already up and running, though it's not included in this release. The Asahi team has said in the past that it expects support for new chips to be relatively easy to add to Asahi since Apple's chip designers frequently reuse things and don't make extensive hardware changes unless there's a good reason for it. Adding basic support for the M2 to Asahi happened over the course of a single 12-hour development session, and just "a few days" of additional effort were needed to get the rest of the hardware working as well as it does with M1-based Macs.

This discussion has been archived. No new comments can be posted.

Linux Distro For Apple Silicon Macs Is Already Up and Running On the Brand-New M2

Comments Filter:
  • Well that was quick. Not quite as quick as Linux for x64. Linux for x64 was ready a few months before the hardware was produced. (Via emulators). Windows got x64 support five years later.

    • by AmiMoJo ( 196126 )

      To be fair there is running and there is everything working well enough for daily use. With x64 all the drivers simply needed to be recompiled in most cases, so with only limited exceptions it was very usable from the start.

      Linux on AS isn't so great. There is some support for the GPU, but it's far from complete or good for gaming.

      • To be fair there is running and there is everything working well enough for daily use.

        It seems Apple is providing a complete Linux solution:
        "Learn how you can use the Virtualization framework to quickly create virtual machines on your Mac. We'll show you how to create a virtual Mac and quickly test changes to your app in an isolated environment. We'll also explore how you can install and run full Linux distributions on Apple silicon, and share how you can take advantage of Rosetta 2 to run x86-64 Linux binaries."
        https://developer.apple.com/vi... [apple.com]

        • by AmiMoJo ( 196126 )

          Does stuff like GPU compute work?

          I was going to ask about raytracing but I don't think the ASS GPU supports it.

          • by drnb ( 2434720 )

            Does stuff like GPU compute work? I was going to ask about raytracing but I don't think the ASS GPU supports it.

            From the transcript it sounds like Apple is emulating a Vizia GPU to some degree. No mention of OpenCL.

            • by AmiMoJo ( 196126 )

              I suppose you can run most of that stuff on MacOS anyway, being BSD underneath...

              • by drnb ( 2434720 )

                I suppose you can run most of that stuff on MacOS anyway, being BSD underneath...

                It seems most FOSS really target *nix, posix, not so much Linux only. And for the "bigger" projects that provide precompiled binaries they may have a downloadable macOS build. Building from source seems to usually work, as you said, build configurations just see a BSD environment.

                • by AmiMoJo ( 196126 )

                  I'm not too up to date on the latest tech for this stuff, so I'll ask. What frameworks/libraries do people use for cross platform Linux/BSD/Windows networking and GUIs?

                  There is Qt for GUIs but it's quite old, and seems to be more emerged oriented. A few weeks ago I couldn't get something to load because it needed a Qt version that didn't support Windows 8.

                  • by drnb ( 2434720 )

                    I'm not too up to date on the latest tech for this stuff, so I'll ask. What frameworks/libraries do people use for cross platform Linux/BSD/Windows networking and GUIs?

                    There is Qt for GUIs but it's quite old, and seems to be more emerged oriented. A few weeks ago I couldn't get something to load because it needed a Qt version that didn't support Windows 8.

                    I have an odd perspective. For networking I use sockets, which exist on Windows, Mac and Linux and the coding is largely the same. For GUI I don't really use the cross platform stuff. I do a native GUI using whatever that platform consider's its native environment. Keep in mind that you don't have to mix the functional code with the GUI code. Don't do any real work in the platform specific GUI object handlers. Call some portable function that does the real work. So there is a Windows button with a Windows h

      • > With x64 all the drivers simply needed to be recompiled in most cases

        And and it has a different way of calling functions, a different way of returning from functions, differences in the memory model, syscalls are different ...
        So only code that uses RAM or calls functions needed updating. :)

        Here's some info on part of the work that was done before any physical processors existed:

        https://halobates.de/x86-64-2.... [halobates.de]

  • by dskoll ( 99328 ) on Tuesday July 19, 2022 @10:03AM (#62715756) Homepage

    I understand the motivation for this, and applaud the technical achievement. It's also good to give people who own Apple hardware a choice of OS.

    On the other hand, I don't like anything that might increase Apple's market share and hence revenue, even just a tiny little bit. Apple, Microsoft, Google and indeed most large tech companies are not our friends and I am not that happy to see money heading their way.

    • Which computer manufacturer is our friend?

    • Re: (Score:2, Funny)

      by OzPeter ( 195038 )

      I understand the motivation for this, and applaud the technical achievement. It's also good to give people who own Apple hardware a choice of OS.

      On the other hand, I don't like anything that might increase Apple's market share and hence revenue, even just a tiny little bit. Apple, Microsoft, Google and indeed most large tech companies are not our friends and I am not that happy to see money heading their way.

      Show me on this doll where Apple touched you

      • I understand the motivation for this, and applaud the technical achievement. It's also good to give people who own Apple hardware a choice of OS.

        On the other hand, I don't like anything that might increase Apple's market share and hence revenue, even just a tiny little bit. Apple, Microsoft, Google and indeed most large tech companies are not our friends and I am not that happy to see money heading their way.

        Show me on this doll where Apple touched you

        It must be a very lonely existence in that world of yours that has no technology past the abacus. Because that is exactly what it takes to eschew everything touched in some way by a large corporation.

        May I suggest joining an Amish cult, er, community. But that's no good. Most of them under 60 years old have some often bullshit "work reason to trade with the English" and carry a cellphone. . .

        • by dskoll ( 99328 )

          I have plenty of high-tech gadgetry. None of it from Apple or MSFT. My phone, alas, is Android because a phone untethered from Google or Apple is not really feasible right now.

          • I have plenty of high-tech gadgetry. None of it from Apple or MSFT. My phone, alas, is Android because a phone untethered from Google or Apple is not really feasible right now.

            So you pick the most ass-raping of privacy phone platform.

            Well done, sir!

      • Show me on this doll where Apple touched you

        The pocket with my wallet :-)

      • Show me on this doll where Apple touched you
        That is difficult.

        As it was in his mind.

    • I understand the motivation for this, and applaud the technical achievement. It's also good to give people who own Apple hardware a choice of OS.

      On the other hand, I don't like anything that might increase Apple's market share and hence revenue, even just a tiny little bit. Apple, Microsoft, Google and indeed most large tech companies are not our friends and I am not that happy to see money heading their way.

      You have a problem.

    • I mean, Apple deserves some credit, IMO, for advancing an ARM processor they designed in-house, rather than just re-using the existing CPUs coming from giants Intel or AMD.

      It's not that often that a company attempts to re-invent a processor for its hardware, and it's certainly not going to happen in a meaningful way from a smaller player. Only a "big tech company" would have the R&D budget for this.

      If you're going to try to take some kind of principled stand that you don't want to give any of these big

    • Apple is a hardware company.

      So no damn idea what they did to you to deserve your hate.

      Perhaps get mental help?

      • by dskoll ( 99328 )

        Wow, Apple fanbois think anyone who doesn't like Apple has a mental problem. :)

        Here are some of the things I don't like about Apple.

        Tax Evasion/Avoidance [www.cbc.ca]

        Consistently hindering repairability [grist.org]

        Non-standard charging ports that required legislation [greekreporter.com] to push Apple into switching to a standard USB-C charging port.

        Questionable at best [washingtonpost.com] labor practices.

        • Wow, Apple fanbois think anyone who doesn't like Apple has a mental problem. :)
          Obviously you have a mental problem.

          Otherwise you would not call me an "apple fanboi" - dumbass

          • by dskoll ( 99328 )

            My, oh my, you are a sensitive little creature, eh? "fanboi" bothers you that much? :)

            • If a word is used as an insult, obviously it bothers the person that feels insulted.

              So, are you gay or straight?

              A men-fanboi or a women-fanboi? Or both? Oh, that would be a bi-fanboi, I guess.

              You see? It is completely ridiculous to use the word fanboi in addressing someone else.

              Must be pretty hard for you to accept that other people have preferences you do not share. No damn reason to assault/insult them as "fanboi".

  • by Lord_Jeremy ( 1612839 ) on Tuesday July 19, 2022 @10:44AM (#62715874)

    Unlike Intel Macs, Apple silicon Macs were designed to run only Apple's software

    This is a blatantly false attention-grabbing headline. Apple Silicon Macs are in fact designed to run other OSes besides Apple’s in as secure a manner as possible. Asahi Linux’s own documentation [github.com] calls out “Open to other OSes” as a design goal of the AS Macs. The boot process intentionally includes support for alternate software to an extent that’s frankly quite novel for an Apple product. This isn’t just the product of a single engineering building in back-doors or the Herculean reverse-engineering efforts of the OSS community. Product design decisions are being made with community support in mind. Part of the reason Asahi has been able to get off the ground so quickly is that to some extent there’s a path set up for other developers to follow. Could the documentation be better? Yes of course, it’s Apple (their documentation usually sucks). However right from the beginning, its been cool to see Apple engineers giving presentations about the new platform, how it works and how you can build software on top of it. Apple Silicon is in my mind a case study on how you can build a platform that’s both extremely secure but also extensible and open!

    • The boot process intentionally includes support for alternate software to an extent thatâ(TM)s frankly quite novel for an Apple product.

      Given Boot Camp and Open Firmware it doesn't even seem all that novel. Apple was unfriendly to OS competition back in the 68k days, but since then they have largely embraced it.

    • by drnb ( 2434720 )
      FWIW, Apple is providing a Linux VM with macOS:
      https://developer.apple.com/vi... [apple.com]
      • That's the opposite of what you really want though, since Linux offers superior performance to OSX in every area, and therefore is a more logical host OS. It's like Linux on Windows. It's nominally all right for testing and development, or filling the occasional hole in a workflow, but you can't even count on the behavior being identical to running on the metal.

        • by drnb ( 2434720 )

          That's the opposite of what you really want though, since Linux offers superior performance to OSX in every area, and therefore is a more logical host OS ...

          Actually it does not, but lets ignore that for now

          ... It's like Linux on Windows. It's nominally all right for testing and development, or filling the occasional hole in a workflow, but you can't even count on the behavior being identical to running on the metal.

          You realized you undercut your own argument by indicating that the sort of stuff most people do works fine? :-)

          My PCs have dual booted Linux since the mid 90s, My Intel based Macs have always dual booted Windows. Yet normally doing things in a Windows or Linux VM on an Intel Mac works just fine and I don't bother rebooting. Especially Linux works fine in a VM. Very rarely do I need to reboot to natively run on the hardware.

          Of course I am referring to

    • The boot process intentionally includes support for alternate software to an extent thatâ(TM)s frankly quite novel for an Apple product.
      The boot process was always quite open, and other OSes like Linux or other Unix derivates ran on Macs minimum since roughly 1992 (linux a bit later, probably 1994).

  • There are still many other things that aren't working properly, including the USB-A ports on the Studio, faster-than-USB-2.0 speeds from any Type-C/Thunderbolt ports, and GPU acceleration ...

    Apple is providing a Linux VM in macOS. You create a Linux VM in about 50 lines of code. The Linux VM runs any ARM distro and has hardware accelerated graphics among other things. By letting macOS create VMs they are giving many users what they want, the ability to run Linux, without having to disclose chipset info. Note it can translate x86 binaries too.

    "Learn how you can use the Virtualization framework to quickly create virtual machines on your Mac. We'll show you how to create a virtual Mac and quick

    • Apologies, I should have changed the subject line. No Windows VM, its Linux and macOS VMs for now
      • by Bert64 ( 520050 )

        It's perfectly capable of running the arm version of windows too, but microsoft only officially licenses the arm version of windows to oems to ship with physical hardware. So while it's technically possible to run it, you are in violation of the license terms so apple can't openly promote it.

        • It's perfectly capable of running the arm version of windows too, but microsoft only officially licenses the arm version of windows to oems to ship with physical hardware. So while it's technically possible to run it, you are in violation of the license terms so apple can't openly promote it.

          If I understand things correctly Microsoft is in an exclusive deal with Qualcomm, they are only allowed to run Windows ARM on Qualcomm CPUs. However that deal is supposed to be expiring soon. I'm not surprised the macOS VM can handle Windows, they are just waiting for Microsoft to be free and clear of Qualcomm before mentioning this.

          I'm also expecting (hoping) for boot camp once the Qualcomm deal ends.

          • by King_TJ ( 85913 )

            Right... but FWIW? I've been told that ARM version of Windows is pretty limited in what it supports? I suspect there are problems like a lack of device drivers ported to that platform since to date, most makers of devices like printers or scanners have very few customers who'd want to attach one to something using that Qualcomm CPU.

            • You do not port device drivers.
              You recompile them ... (* facepalm *)

              • by drnb ( 2434720 )

                You do not port device drivers. You recompile them ... (* facepalm *)

                Lets assume no assembly language. Linux and macOS use different numeric codes for syscalls? That's one of various things that can require source code changes even if the drivers are written in C.

                • Lets assume no assembly language. Linux and macOS use different numeric codes for syscalls?
                  No, they use a C library hiding such mundane things like this call "identifiers" (* facepalm *)

                  In other words: you call "open" - and it looks exactly the same from your C program, and what happens behind the program and between the kernel is inside of the stdc library. That is why it exists.

          • That does not make any sense.

            How should a CPU vendor be able to dictate a buyer that he can run his OS only on that particular brand of CPU?

            • If I understand things correctly Microsoft is in an exclusive deal with Qualcomm, they are only allowed to run Windows ARM on Qualcomm CPUs.

              That does not make any sense.
              How should a CPU vendor be able to dictate a buyer that he can run his OS only on that particular brand of CPU?

              Who knows? How should an OS and game console vendor be able to dictate to a GPU vendor that they can't share their driver code? But nvidia has hinted that the reason they hadn't open sourced their drivers was an agreement with Microsoft over NV2A in the Xbox. It's all about what the parties involved felt was worth accepting in order to make a deal.

            • Perhaps Microsoft wanted to provide some incentive to encourage Qualcomm to undergo the expensive development process of developing a product suitable for PCs running Windows. It makes sense because Microsoft was in danger of having an efficient laptop being released that uses an ARM CPU and does not run Windows. It might use a phone SOC, but if it was sufficiently low power then it might open up a market segment for computers running Linux. Then people eventually get used to Linux and start to ditch Wi

            • It’s called a licensing agreement. It’s a legal thing.

              • You can not make a license agreement that is against the law.

                THAT is a legal thing

                On top of that: you fucking do not need a license agreement to buy 1 million ARM processors.

                You sent an order, and they futil it or not.

                • What the fuck does your incoherent rambling have to do with the LEGAL Microsoft/Qualcomm licensing agreement that I was commenting about?

                  • There is no such Microsoft/Qualcomm agreement. That is the point.

                    Qualcomm sells CPUs, the buyer of such CPUs, regardless if it's name is Microsoft: can run want ever it wants on those CPUs.

                    And the stuff he is running on CPUs purchased from Qualcomm, he can run on any other CPU as well. Even if there was a "license agreement", it would be void. That is actually a simple concept. Or do you think if you sell me gigatons of diesel you can force me to only use it in cars of your brand and not in other cars (or s

            • by drnb ( 2434720 )

              That does not make any sense How should a CPU vendor be able to dictate a buyer that he can run his OS only on that particular brand of CPU?

              Microsoft partnered with Qualcomm to create a custom ARM CPU, see the SQ1 and SQ2 used in the Surface Pro X. The Windows on ARM SDK from MS is using a Qualcomm snapdragon based box.

              For PC Desktop type performance you probably can't get away with a vanilla AArch64 system. You probably need a lot of specialized stuff to supplement the core AArch64. See the Raspberry Pi 4 for vanilla ARM. Its friggin amazing for what it is, a $35-$75 box, but its not quite desktop PC.

        • You are in violation of the license terms so apple can't openly promote it.
          You are not violating any license terms if you buy a physical copy.

          • You are not violating any license terms if you buy a physical copy.

            You literally cannot buy Windows for ARM. You can or could get a time-limited preview from the Windows Insider program. Microsoft has never, ever sold any of their operating systems for ARM to the general public. You have only ever been able to get a license as an O{D,E}M, or as a consumer, with a device. This might change in the future, and there are rumors that Microsoft will be offering a Windows ARM license for use with Apple ARM devices.

  • I'm not questioning the project itself, there are probably good reasons to do this. But was it really critical to add hardware support that quickly? Is there anyone out there saying "gee, it's such a shame I just bought this new Mac and can't run Linux on it"? I think it would just look better to wait and not issue a half-baked release that nobody really asked for, when there's a list of known issues left to be worked on. (Unless they're fishing for help with those issues, then I can understand distributing

1 + 1 = 3, for large values of 1.

Working...