Linux MacBook

Fedora Linux on Macbook Pro 2013

fedora linux

Apple’s MacBook Pro with retina screen appears to be equipped with an excellent screen that, due to its high resolution, gives a sharp image, combined with high color fidelity. The battery life is more than nine hours long compared to the competition and the build quality is high because a sturdy aluminum housing is used. Components in the MacBook Pro are not self-replaceable or upgradeable, so the decision for additional speed or storage should be made at the time of purchase.

Model used

MacBook Pro late 2013 – a1398 emc2674

What works

  • Boot
  • Recognizes disk
  • Keyboard, touchpad
  • HiDPI detection
  • Accelerated video
  • Screen brightness control
  • Keyboard backlight
  • USB
  • Camera
  • Bluetooth
  • WiFi – Broadcom-WL
  • Audio
  • Suspend/Resume

Get WiFi working

This MacBook model uses a Broadcom wireless board which is not great but at least we’ll get decent wifi. There’s an issue with the Broadcom module used by the kernel. Here’s how to fix it.

In Terminal

  • Install Fedora RPM FUSION Free and Not Free.
  • Sudo DNF Update / Upgrade
  • Sudo Reboot
  • Sudo DNF install broadcom-wl
  • Sudo Reboot

Suspend/Resume

Create a file called: fix-macbook-wakeup

Place this code into the file:

#!/bin/sh

switch_cpu () {
for cpu in $(ls /sys/devices/system/cpu | egrep -i ‘cpu[1-9][0-9]?’); do
echo $1 > /sys/devices/system/cpu/$cpu/online;
done
}

echo “fix macbook wakeup”
case “$1/$2” in
pre/*)
echo “going to $2…”
switch_cpu 0
;;
post/*)
echo “waking up from $2…”
switch_cpu 1
;;
esac

Copy this file to: /usr/lib/systemd/system-sleep/

Then:

  • chmod +x /usr/lib/systemd/system-sleep/fix-macbook-wakeup
  • systemctl daemon-reload