Skip to the content.

2015 MacBook Pro (MacBookPro11,5) on Linux

File What’s in it
hardware.md Start here. Distro-agnostic: kernel parameters and why, radeon vs amdgpu, sleep/hibernate results with measured power, Bluetooth, camera, fans/SMC, troubleshooting
omarchy.md Current install: Limine/UKI config files, Omarchy-owned files, lid/logind, decisions, open items
linux-mint.md Previous install: GRUB/initramfs-tools, recovery, Ubuntu MTRR kernel build, Cinnamon extras
sleep-test.sh Measures battery drain of s2idle / deep / awake (any systemd distro)
bluetooth/bt-fix.sh Fixes the Bluetooth chip hanging at boot (any systemd distro)
wifi/ Sleep hook that unloads Wi-Fi before deep sleep and hibernate (needed for hibernate); recovery script for when Wi-Fi dies anyway
kernel/ amdgpu patch for deep sleep + module build/install scripts + a guard that falls back to s2idle and notifies you after a kernel update; MTRR resume patch (fixes the slow wake from deep sleep) + Ubuntu kernel build script
fans/ Smoothed fan daemon: a fallback only, since the SMC’s own fan control was fine on Omarchy

In short: always use intel_iommu=off and nvme_core.default_ps_max_latency_us=0. Then choose:

Apply bluetooth/bt-fix.sh either way.

Licence

Scripts are MIT, the notes are CC BY 4.0, and the kernel patches (kernel/*.patch) are GPL-2.0 kernel code. See LICENSE. Everything here is provided as-is: kernel parameters, MSR writes and kernel patches can leave a machine unbootable, so test with a fallback boot entry.