apple-bce-drv/INSTALL-UBUNTU.md at aur · mozekin/apple-bce-drv · GitHub
//blob/show" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
//blob/show;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
mozekin
apple-bce-drv
Public
forked from t2linux/apple-bce-drv
Notifications<br>You must be signed in to change notification settings
Fork
Star
FilesExpand file tree
aur
/INSTALL-UBUNTU.md
Copy path
Blame<br>More file actions
Blame<br>More file actions
Latest commit
History<br>History<br>History
executable file<br>·79 lines (61 loc) · 3.49 KB
aur
/INSTALL-UBUNTU.md
Copy path
Top
File metadata and controls<br>Preview
Code
Blame
executable file<br>·79 lines (61 loc) · 3.49 KB
Raw<br>Copy raw file<br>Download raw file
OutlineEdit and raw actions
Installing apple-bce on Ubuntu 26.04 LTS (T2 Macs, e.g. MacBook 2018–2019)
This driver provides the internal keyboard, trackpad and audio on T2 Macs.
Note on Wi-Fi: Wi-Fi is NOT provided by this driver. Wi-Fi/Bluetooth on T2<br>Macs uses the in-kernel brcmfmac driver plus firmware files that must be<br>copied from macOS. See the "Wi-Fi" section at the end.
Verified: this source tree compiles cleanly against Ubuntu 26.04's kernel<br>7.0.0-27-generic (it already contains all upstream t2linux compatibility<br>fixes through kernel 6.18+/7.0).
Fully offline install (recommended — everything is on this USB)
This folder is a self-contained offline bundle. It includes:
install-offline.sh — one-shot installer, run this and you're done
offline-deps/ — the exact .deb build dependencies (dkms, gcc, make, …)<br>matching a fresh, un-updated Ubuntu 26.04 GA desktop install
firmware/firmware-renamed.tar — Wi-Fi + Bluetooth firmware for all<br>T2 Macs, extracted from an Apple macOS Sonoma recovery image and renamed by<br>the official t2linux firmware script (firmware/firmware.sh, included for<br>reference)
the apple-bce driver source (this directory)
On the Ubuntu machine:
/apple-bce-drv-aur ~/t2<br>cd ~/t2<br>sudo bash install-offline.sh"># copy the folder off the USB first (the installer writes into it via dkms)<br>cp -r /media/$USER/usb-label>/apple-bce-drv-aur ~/t2<br>cd ~/t2<br>sudo bash install-offline.sh
That's it. The script installs the build tools, builds and installs the<br>apple-bce module with DKMS (auto-rebuilds on kernel updates), installs the<br>Wi-Fi/Bluetooth firmware, configures the module to load at boot (including<br>the initramfs, so the internal keyboard works at a LUKS prompt), and reloads<br>the drivers. Reboot afterwards for good measure.
Notes:
The bundled debs match Ubuntu 26.04 GA (kernel 7.0.0-14-generic). If you<br>have already updated the system online, just use apt instead:<br>sudo apt install build-essential dkms and rerun the script — it skips<br>the deb step gracefully if you delete offline-deps/.
This whole flow was verified end-to-end on Ubuntu 26.04 with kernel<br>7.0.0-14-generic (GA) and 7.0.0-27-generic (updates).
Audio
The module exposes the T2 audio device (playback). For proper speaker/mic<br>profiles you may also want the T2 ALSA/UCM config from the t2linux project:<br>https://wiki.t2linux.org/guides/audio-config/
Wi-Fi and Bluetooth details
The bundled firmware/firmware-renamed.tar was produced with the official<br>t2linux tooling (https://wiki.t2linux.org/guides/wifi-bluetooth/) from Apple's<br>macOS Sonoma recovery image and contains firmware for every T2 board — the<br>brcmfmac driver picks the right files for your model automatically. If you<br>ever need to redo this (e.g. a future board needs newer firmware), run<br>bash firmware/firmware.sh on Linux with internet, or on macOS.
Known limitations
Suspend/resume support on this branch is limited (see README.md).
If dkms install warns about Secure Boot / module signing: on T2 Macs you<br>already disabled Secure Boot in the Startup Security Utility to boot Linux,<br>so unsigned modules load fine. If mokutil --sb-state reports enabled,<br>enroll the MOK key DKMS offers, then reboot.
Troubleshooting
modprobe apple-bce → "Operation not permitted / key rejected": Secure Boot<br>signing issue, see above.
No device found: check lspci -nn | grep 106b:1801 — the BCE PCI device<br>must be visible.
Build failure on a future kernel: check for updated compatibility fixes at<br>https://github.com/t2linux/apple-bce-drv (branch...