Software:Asahi Linux

From HandWiki
Short description: Linux distribution for Apple CPUs
Asahi Linux
AsahiLinux logo svg.svg
Arch Linux ARM-Asahi Linux Desktop English 07-2023.png
Screenshot of Arch Linux ARM of Asahi Linux with KDE Plasma 5
Developer
  • Hector Martin
  • Alyssa Rosenzweig
  • Asahi Lina[Note 1]
  • Dougall Johnson
  • Sven Peter
  • Mark Kettenis
  • Martin Povišer
  • Janne Grunau[1]
OS familyLinux (Unix-like)
Working stateOfficial Stable (Fedora 39)
Source modelOpen source
Repositorygithub.com/AsahiLinux
PlatformsApple silicon (AArch64)
Official websiteasahilinux.org

Asahi Linux is a project that ports the Linux kernel and related software to Apple silicon-powered Macs. The software design project was started and is led by Hector Martin. Work began in early 2021, a few months after Apple formally announced the transition to Apple silicon. An initial alpha release followed in 2022. The project has been made challenging by the lack of publicly available documentation of Apple's proprietary firmware.[2][3]

History

Shortly after Apple announced their transition away from Intel x86 processors in late 2020, Linux creator Linus Torvalds expressed interest in Linux support for the Apple M1 Mac, but thought that the work to make this happen was too time-consuming for him to personally take on the necessary software development tasks.[4]

Martin announced the project in December 2020 and formally started work a month later, after securing crowd-sourced funding. Alyssa Rosenzweig, who developed the open-source graphics driver stack Panfrost, joined the project to help support the Apple silicon graphics processing unit (GPU).[5]

The developers quickly realised that just attempting to boot the Linux kernel compiled for Apple silicon's processor architecture (AArch64) would be challenging, as it involved working out the functionality of proprietary Apple code used in the boot process. The work was time-consuming and took most of the year, including submitting pull requests to the main Linux kernel developers to keep development in sync and avoid regressions. However, it subsequently led to a thorough and comprehensive explanation of the previously undocumented boot process, which Martin and others published on GitHub.[2][6]

The project released an experimental alpha version of the Asahi Linux installer on March 18, 2022. The installer offers the choice of a desktop based on Arch Linux ARM (expected to change),[7] a minimal environment, or a basic UEFI environment for installing OpenBSD or alternate Linux distributions with support for Apple silicon via a bootable USB drive.[3] Despite being able to launch a UEFI shell, booting Microsoft Windows is not supported, and there are no plans to do so, as it would involve modifying the proprietary Windows kernel.[8] While other projects that are attempting to study a possible port of Windows to these systems specified challenging roadblocks related to Windows handling the proprietary Apple Interrupt Controller (AIC), and the 16K pages only found on the IOMMU.

Full support for all Apple silicon-supported Macs is not expected for another year or two following the first alpha release.[9] In July 2022, the Asahi Linux team released an update with support for the M1 Ultra, Mac Studio, and early initial support for the M2 MacBook Pro.[10]

In August 2023, it was announced that Asahi was partnering with the Fedora Project to release the Fedora Asahi Remix, which would supersede the original Arch-based distribution as Asahi's flagship OS.[11] The effort began in late 2021, and is an upstream-first project.

On October 21, 2023, Asahi updated the front page to direct users to Fedora Asahi Remix, posted on official Mastodon account. At that time, Fedora Asahi Remix was at Beta release.[12]

On Dec 19, 2023, the first official stable release of Fedora Asahi Remix is announced.[13]

Hardware and Driver Support

Asahi Linux is currently considered alpha software. It has a display for a graphical user interface and has early support for graphics acceleration, with initial OpenGL support being implemented for all GPUs across Apple's M-series chips. While initially using the panfrost driver implementation, the Asahi Linux Project also made use of Gallium-3D and Rust based APIs for driver development. Vulkan and OpenCL support, as of Early-Mid 2023, are still being worked on.[14] On June 6, 2023, OpenGL support was further expanded when support for OpenGL ES 3.0 and OpenGL 3.1 was released, and once more on August 22 when a fully-compliant driver for OpenGL ES 3.1 was released, introducing support for compute shaders and atomics.[15][16] This driver is currently the only fully-compliant graphics driver for any widespread graphics standard. The process has involved creating device drivers for Apple silicon's proprietary GPU from scratch due to the lack of documentation.[17][18][14] HDMI video output is only supported on the Apple silicon Mac mini, and there is no support for Thunderbolt video output on Apple Silicon MacBooks and iMacs.[17]

The Asahi Linux kernel has been configured with support for 16 kB pages, which may result in some problems with existing software. This was ultimately, and initially, done to address the Apple GPU only supporting 16k page outputs, but eventually, support for 4k pages was added in March 2023 to the GPU driver, which was mentioned in a blog post regarding explicit sync by Asahi Lina.[19][20] Despite this, the operating system's kernel is still 16kB pages, and programs that were to expect 4k pages, or have improper/missing support for 16kB pages, will still experience problems with alignment when being mapped to memory.[21] Marcan stated that the page sizes set by Linux were global, and that there isn't a native mechanism in place to have individual page sizes.[22]

Reception

The project has been well received. A review in The Register said that it ran surprisingly well for alpha software that is still in development.[18] Similarly, a review in Ars Technica was impressed by the amount of hardware that was already supported early in the project lifecycle.[9]

See also

Notes

  1. A pseudonymous developer only known by their VTuber identity.

References

  1. "About Asahi Linux". https://asahilinux.org/about/. 
  2. 2.0 2.1 Sharma, Mayank (March 15, 2021). "Porting Linux to Apple M1 Macs is proving trickier than previously imagined". https://www.techradar.com/news/porting-linux-to-apple-m1-macs-is-proving-trickier-than-previously-imagined. 
  3. 3.0 3.1 Martin, Hector. "The first Asahi Linux Alpha Release is here! – Asahi Linux" (in en). https://asahilinux.org/2022/03/asahi-linux-alpha-release/. 
  4. "Linus Torvalds would like to use an M1 Mac for Linux, but ...". ZDNet. November 24, 2020. https://www.zdnet.com/article/linus-torvalds-would-like-to-use-an-m1-mac-for-linux-but/. Retrieved April 5, 2022. 
  5. Tung, Liam (8 Jan 2021). "Linux on Apple's Arm silicon Macs? This crowdfunded project wants to give it a try". https://www.zdnet.com/article/linux-on-apple-arm-silicon-macs-this-crowdfunded-project-wants-to-give-it-a-try/. 
  6. Calligeros, James. "Apple Silicon Subsystems - Platform Initialisation and Boot" (in en). https://github.com/AsahiLinux/docs/wiki/Apple-Silicon-Subsystems#platform-initialisation-and-boot. 
  7. "Hector Martin (@marcan@treehouse.systems)" (in en). 2023-03-05. https://social.treehouse.systems/@marcan/109971521711413167. 
  8. "Windows support?". May 21, 2021. https://github.com/AsahiLinux/m1n1/issues/63. Retrieved April 5, 2022. 
  9. 9.0 9.1 "Asahi Linux is reverse-engineering support for Apple Silicon, including M1 Ultra". Ars Technica. March 25, 2022. https://arstechnica.com/gadgets/2022/03/asahi-linux-is-already-running-on-the-mac-studios-new-m1-ultra-chip/. Retrieved April 5, 2022. 
  10. Cunningham, Andrew (July 18, 2022). "Linux distro for Apple silicon Macs is already up and running on the brand-new M2". https://arstechnica.com/gadgets/2022/07/linux-distro-for-apple-silicon-macs-is-already-up-and-running-on-the-brand-new-m2/. 
  11. Proven, Liam (7 August 2023). "Asahi Linux project hooks up with Fedora: Remix that's not a remix coming soon". https://www.theregister.com/2023/08/07/asahi_linux_partners_with_fedora. 
  12. "We've updated our front page to direct new users to Fedora Asahi!". 21 Oct 2023. https://social.treehouse.systems/@AsahiLinux/111269282451818185. 
  13. "We've updated our front page to direct new users to Fedora Asahi!". 19 Dec 2023. https://asahilinux.org/fedora/. 
  14. 14.0 14.1 Purdy, Kevin (December 7, 2022). "Four-person dev team gets Apple's M-series GPU working in Linux". https://arstechnica.com/gadgets/2022/12/four-person-dev-team-gets-apples-m-series-gpu-working-in-linux/. 
  15. "OpenGL 3.1 on Asahi Linux" (in en). https://rosenzweig.io/blog/opengl3-on-asahi-linux.html. 
  16. "The first conformant M1 GPU driver" (in en). https://rosenzweig.io/blog/first-conformant-m1-gpu-driver.html. 
  17. 17.0 17.1 Crume, Jacob (March 21, 2022). "Asahi Linux Distro Improves Apple M1 Support With First Alpha Release". It's FOSS. https://news.itsfoss.com/asahi-linux-alpha/. Retrieved April 5, 2022. 
  18. 18.0 18.1 "We take Asahi Linux alpha for a spin on an M1 Mac Mini". The Register. March 22, 2022. https://www.theregister.com/2022/03/22/asahi_hands_on/. Retrieved April 5, 2022. 
  19. "Progress Report: September 2021 - Asahi Linux" (in en). https://asahilinux.org/2021/10/progress-report-september-2021/. 
  20. "Paving the Road to Vulkan on Asahi Linux - Asahi Linux" (in en). https://asahilinux.org/2023/03/road-to-vulkan/. 
  21. "Broken Software" (in en). https://github.com/AsahiLinux/docs/wiki/Broken-Software. 
  22. "Linux does support mixed page sizes (that's how huge pages work) and the page si... | Hacker News". https://news.ycombinator.com/item?id=30731383. 

External links