Решил тут на свой M1 Air накатить Asahi Linux, специальный проект по портированию Linux на Apple. Теперь можно накатить Arch Linux на Mac, yay.



Удивительно более менее всё работает. Не работает только GPU и со звуком повозился, тачпад адекватно работает



Из интересного: не работают всякие приложения, которые используют jemalloc (в т.ч. Rust), chromium. Почему? Apple на MacOS накатили страницы в 16кб, и в этом проекте решили сохранить это, так как иначе всё тормозило на 20%. Проблема в том, что Linux ARM с 16кб страницами памяти не очень популярен, и софт не особо ожидает этого.



Для chromium я приготовил патчик https://pastebin.com/eXaYKGZn, на эмуляторе всё работает, а вот когда перекидываешь на M1, падает прям на старте после execve с ошибкой EINVAL



Документация говорит, что

EINVAL An ELF executable had more than one PT_INTERP segment.





Но вроде глазами проверил, всё правильно стоит, одна секция .interp с правильным путём. Как дебагать дальше, хз. Буду разбираться, интересно же, мб баг в ядре где-то