In an important update from the battle to tame the Apple M1 chip into running Linux natively, as noticed by The Register, graphics developer Alyssa Rosenzweig, along with her Asahi Linux colleagues, has managed to get the Gnome Shell running on the bare metal, albeit without GPU acceleration.
LLVMPipe, my shoddy display controller, and hours of @svenpeter42's patience presents....GNOME Shell on the Apple M1, bare metal.No, it's not GPU accelerated. Yes, I'm sending this tweet from it. pic.twitter.com/P4YuPEnbvpAugust 22, 2021
The display driver may be a work in progress, but Rosenzweig was able to send a tweet from the system, including a screenshot that reveals she’s using the pre-release version of the 5.14 Linux kernel, Debian, and GNOME 3.38.4. The kernel includes patches for the pin control subsystem and PCIe, with display, USB and ethernet also working. A unique feature of the Apple Silicon SOC is its DCP, a Display Co-Processor that sits alongside the GPU and requires a driver before GPU acceleration can be unlocked. Rosenzweig described the team’s breakthrough as a "nice milestone on the way to a DCP driver".
She added: "Honestly, it's usable. Not great, but usable, on a near mainline kernel. If 'missing most drivers' is this snappy, when everything is done @AsahiLinux will run like a dream on these machines."
The M1 reverse-engineering effort has been going on since before initial M1 support was added to Linux kernel 5.13. The first hints came out in January this year, and by the middle of summer Debian was running bare-metal, though with much in the way of screen tearing thanks to its single-buffered display driver. The latest work includes double buffering, greatly reducing the artefacts.
M1, which changes the Apple CPU architecture from X86 to ARM, has seen many attempts to run operating systems such as Linux and Windows on it since its launch in 2020. Rumors of a replacement M1X chip are swirling, however, which may complicate such attempts.