Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mikeeq/mbp-fedora-kernel
https://github.com/mikeeq/mbp-fedora-kernel
2019 2020 apple apple-t2 fedora kernel linux linux-kernel macbook macbook-pro
Last synced: about 9 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/mikeeq/mbp-fedora-kernel
- Owner: mikeeq
- Created: 2019-08-12T06:57:44.000Z (over 5 years ago)
- Default Branch: v6.4-f38
- Last Pushed: 2024-10-22T15:42:41.000Z (2 months ago)
- Last Synced: 2024-12-18T08:08:51.930Z (8 days ago)
- Topics: 2019, 2020, apple, apple-t2, fedora, kernel, linux, linux-kernel, macbook, macbook-pro
- Language: Shell
- Size: 1.58 GB
- Stars: 65
- Watchers: 8
- Forks: 12
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# mbp-fedora-kernel
Fedora kernel with Apple T2 patches built-in (Macbooks produced >= 2018).
Fedora ISO (with mbp-fedora-kernel builtin):
Kernel patches:
> Tested on: Macbook Pro 15,2 13" 2019 i5 TouchBar Z0WQ000AR MV972ZE/A/R1 && Macbook Pro 16,2 13" 2020 i5
```
Boot ROM Version: 220.270.99.0.0 (iBridge: 16.16.6571.0.0,0)
macOS Mojave: 10.14.6 (18G103)
```## CI status
GitHub Actions kernel build status
[![Build Status](https://github.com/mikeeq/mbp-fedora-kernel/actions/workflows/build-kernel.yml/badge.svg)](https://github.com/mikeeq/mbp-fedora-kernel/actions/workflows/build-kernel.yml)
Github Actions kernel publish status -
[![Publish Status](https://github.com/mikeeq/mbp-fedora-kernel/actions/workflows/yum-repo.yml/badge.svg)](https://github.com/mikeeq/mbp-fedora-kernel/actions/workflows/yum-repo.yml)
## How to update mbp-fedora-kernel
Starting from Fedora 37 `mbp-fedora` release - `mbp-fedora-kernel` should be automatically updated using builtin package manager - DNF, so simply run `dnf update --refresh`, and it should automatically fetch all required updates.
If the DNF fail, or you're updating your older `mbp-fedora`, you can still use previously used method with `update_kernel_mbp` described below.
```bash
### First run or if you want to update your copy of update_kernel_mbp script
sudo -i
curl -L https://raw.githubusercontent.com/mikeeq/mbp-fedora-kernel/v6.4-f38/update_kernel_mbp.sh -o /usr/bin/update_kernel_mbp
chmod +x /usr/bin/update_kernel_mbp
update_kernel_mbp### Next runs
sudo -i
update_kernel_mbp### Update to specific version of kernel
sudo -i
KERNEL_VERSION="6.4.16-f38" update_kernel_mbp### Update to specific version of kernel using specific version of update script
#### Usually not needed, because scripts are shared between branches, but you can use it to update your update_kernel_mbp script
##### If the script fails, try to rerun it - it's due to self-upgrading feature of this script
sudo -i
KERNEL_VERSION="6.4.16-f38" UPDATE_SCRIPT_BRANCH="v6.4-f38" update_kernel_mbp### If kernel update using dnf would file you can execute update_kernel_mbp script with `--github` argument, it will force it to use github to download kernel RPMs
sudo -i
update_kernel_mbp --github
```## Known issues
- TouchID - (@MCMrARM is working on it - https://github.com/Dunedan/mbp-2016-linux/issues/71#issuecomment-528545490)
- Audio
- Internal Microphone (it's recognized with new apple t2 sound driver, but there is a low mic volume amp)### Partially working
- Suspend - really unstable, I recommend disabling it. If you would stuck in sleep mode, try to keep pressing power off button for a while to force poweroff and then turn on the Macbook.
- Touch Bar, if you encounter any issues, I recommend reboot to MacOS/Windows to initialize TouchBar and then back to Linux - it should fix the problem.### Working with upstream stable kernel 6.0
- Display/Screen
- USB-C
- Battery/AC
- Ethernet/Video USB-C adapters
- Bluetooth
- NVMe
- Camera
- Thunderbolt### Working with mbp-fedora-kernel
- with builtin BCE driver
- Audio
- Keyboard
- Keyboard Backlight
- Touchpad (scroll, right click)
- with builtin iBridge driver
- MacBook Pro Touch Bar
- If there's an issue with Touch Bar startup on Linux I recommend installing Win10 and boot it once a while to initialize Touch Bar using BootCamp driver, it seems to fix the issue
- WiFi
- to make it working, you need to grab closed source Broadcom WiFi firmware from MacOS and put it under `/lib/firmware/brcm/` in Linux OS, see### Not tested
- eGPU
## How to build mbp-fedora-kernel
1. Make sure that Docker is installed and running correctly on your machine
2. Clone repo
3. Generate GPG key: `gpg --full-generate-key`, choose `RSA and RSA` and `Real name: mbp-fedora`
4. Change version in `build.sh`,
5. Run `./build_in_docker.sh`## Docs
- Discord:
- T2 Wiki:
- WiFi firmware:### Fedora
-
-
-### Github
- GitHub issue (RE history):
- @kekerby T2 Audio Config:
- Apple BCE repository (Apple T2 HID):
- Apple iBridge repository (TouchBar):- hid-apple-patched module for changing mappings of ctrl, fn, option keys:
- Linux T2 kernel patches:
- Ubuntu
- Kernel
- ISO
- Arch Linux
- Kernel
- Packages
- ISO### Old
- VHCI+Sound driver (Apple T2):
- AppleSMC driver (fan control):
- hid-apple keyboard backlight patch:
- TouchBar driver:### Other
- blog `Installing Fedora 31 on a 2018 Mac mini`:
- iwd:
-
-
-## Credits
- @MCMrARM - thanks for all RE work
- @ozbenh - thanks for submitting NVME patch
- @roadrunner2 - thanks for SPI (touchbar) driver
- @aunali1 - thanks for Kernel Patches
- @ppaulweber - thanks for keyboard and Macbook Air patches
- @AdityaGarg8 - thanks for support and upkeeping kernel patches
- @kekrby for T2 Audio config
- @Redecorating for Arch support