Полное руководство по установке, настройке ядра и включению Wi-Fi, Bluetooth, звука и тачпада

Меня зовут Станислав, я ИТ-специалист в компании Киберпротект в команде «Кибер Инфраструктура».
Ранее я делился своей историей:
https://proglib.io/p/put-k-mechte-kak-invalidnost-ne-pomeshala-stat-razrabotchikom-i-prodolzhit-borbu-za-zdorove-2023-11-14
https://habr.com/ru/articles/776424/ и конце статьи, расскажу хорошие новости.

MacBook Air/Pro 2018–2020 с чипом T2 — одна из самых сложных платформ для Linux, но при правильной подготовке можно получить полностью рабочую Fedora Linux: Wi-Fi, звук, тачпад, Touch Bar и управление питанием.

Эта статья — полное руководство по установке Fedora 42 на MacBook Pro 2019 с T2.


1. Подготовка Mac к установке Fedora

1.1. Отключение защиты загрузки

Перезагружаемся в Recovery Mode (⌘ + R) и открываем Startup Security Utility:

  • Secure Boot → No Security

  • External Boot → Allow booting from external media

Иначе Linux просто не загрузится.


1.2. Подготовка диска

Открываем:

Disk Utility → View → Show All Devices

Создаём раздел под Fedora.
EFI-раздел не трогаем — он будет общим.


2. Извлечение прошивки Wi-Fi/Bluetooth

Apple запрещает распространять прошивки Broadcom, поэтому их нужно извлечь вручную из macOS.

Официальный скрипт:

? https://wiki.t2linux.org/tools/firmware.sh

Он предложит 3 варианта:

  1. Копирование прошивки на EFI-раздел

  2. Создание tar-архива и перенос

  3. Создание rpm/deb/pacman-пакета ← лучший вариант для Linux


3. Установка Fedora Linux

Скачиваем официальный образ Fedora 42:

https://dl.fedoraproject.org/pub/fedora/linux/releases/42/Workstation/x86_64/iso/

Записываем на флешку:

? https://etcher.balena.io/

Загружаемся.

Важно: встроенные клавиатура и трекпад в Live Mode не работают.
Нужны внешние USB-клавиатура и мышь.


⚠️ ОЧЕНЬ ВАЖНО — ПРОЧИТАЙ ПЕРЕД УСТАНОВКОЙ ПАТЧЕЙ T2LINUX

После установки некоторых пакетов, таких как:

  • mesa-libGL

  • mesa-libGL-devel

  • dkms

  • и других компонентов графического стека или модулей ядра,

система с патчами T2Linux может перестать загружаться.
В этом случае обычно приходится использовать LiveUSB + chroot, восстанавливать конфигурацию GRUB, пересоздавать initramfs или переустанавливать ядро.

? ПОЭТОМУ ОЧЕНЬ ВАЖНО:

все настройки окружения для разработки, виртуализации, сборки проектов и установки тяжёлых библиотек должны быть выполнены до патчинга ядра T2Linux.

После установки T2-ядра обновления следующих компонентов могут привести к поломке загрузки:

  • графические библиотеки (GL/Mesa)

  • DKMS-модули

  • драйверы, требующие пересборки под ядро

  • пакеты, затрагивающие GPU-стек

Это может вызвать:

  • kernel panic

  • циклические перезагрузки

  • зависание системы на загрузке

  • повреждение initramfs

  • необходимость ручного восстановления через chroot

Чтобы этого избежать:

  1. Полностью настройте окружение до установки T2-ядра.

  2. Потом применяйте патчи T2Linux.

  3. И только после этого используйте систему в стабильном режиме.

3.1. Разметка дисков

Создаём:

  • / — ext4

  • swap

Что делать с EFI?

Есть 2 варианта:

  1. Использовать EFI от macOS (рекомендовано)

  2. Создать отдельный EFI для Linux

Я использую первый вариант — работает отлично.


4. Восстановление загрузчика после бэкапа (если потребуется)

Некоторые решения (например, Кибер Бэкап) не включают EFI в бэкап, и GRUB перестаёт загружаться.

Восстановление:

Узнаём UUID:

blkid

Монтируем систему:

sudo mount /dev/nvme0n1pX /mnt
sudo mount /dev/nvme0n1pY /mnt/boot/efi
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt

Правим /etc/fstab — прописываем новые UUID.

Создаём конфигурацию загрузчика:

grub2-mkconfig -o /boot/grub2/grub.cfg

5. Установка ядра T2Linux и патчей

Подключаем интернет (USB-tethering или USB Wi-Fi) и ставим патченное ядро:

sudo dnf copr enable sharpenedblade/t2linux
sudo dnf swap --from-repo="copr:copr.fedorainfracloud.org:sharpenedblade:t2linux" kernel kernel
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Перезагружаемся.

5.1. Устанавливаем системные патчи T2Linux

sudo dnf install t2linux-release t2linux-scripts

5.2. Устанавливаем прошивку Wi-Fi/Bluetooth

sudo dnf install --disablerepo=* /path/to/apple-firmware-15.7.1.noarch.rpm

После перезагрузки заработают:

  • Wi-Fi

  • Bluetooth

  • звук

  • клавиатура

  • тачпад

  • Touch Bar

  • управление вентиляторами


6. (Опционально) Ручная сборка kernel-headers

Проверяем версию ядра:

uname -r

Скачиваем соответствующий src.rpm:

https://download.copr.fedorainfracloud.org/results/sharpenedblade/t2linux/fedora-42-x86_64/

Готовим окружение:

rpmdev-setuptree
rpm2cpio kernel-*.src.rpm | cpio -idmv

Правим kernel.spec:

%define with_headers 1
%define with_cross_headers 1

Собираем:

rpmbuild -bb kernel.spec
sudo dnf install ./kernel-headers-*.rpm

Заключение

Надеюсь, эта инструкция поможет вам быстрее и легче запустить Fedora на Mac с чипом T2.

Немного обо мне. В 2024 и 2025 годах мне сделали операции в Казахстане, и здоровье постепенно улучшается. Заболевание остаётся сложным, поэтому в следующем году врачами запланирована ещё одна операция — уже на другом отделе мозга.

Сейчас я обучаюсь на курсе «C++-разработчик» в Яндекс-Практикуме, изучаю C++ и Qt, и открыт для проектов, стажировок и вакансий.

Если хотите поддержать меня или пообщаться — реквизиты и контакты есть в статьях с моей историей.


Полезные ссылки

Комментарии (0)