Laptop/Apple - ArchWiki

Jump to content

# Laptop/Apple

From ArchWiki
< Laptop

Related articles

- Mac

This article or section needs language, wiki syntax or style improvements. See Help:Style for reference.

Reason: Generic info not specific to laptops should be removed and instead of creating super long, messy entries there should be a dedicated page for the laptop. Many entries also need language improvements (Discuss in Talk:Laptop/Apple)

From Wikipedia:

  The Mac (known as Macintosh until 1999) is a family of personal computers designed and marketed by Apple Inc. The product lineup includes the MacBook Air and MacBook Pro laptops, as well as the iMac, Mac Mini, Mac Studio and Mac Pro desktops. Macs are sold with the macOS operating system.

## Model list

Model version | Date | Video | Sound | Ethernet | Wi‑Fi | Bluetooth | Power management | Other | Remarks
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
MacBookPro3,1 Mid 2007 | 2007-08 | Yes | Yes | Yes | Yes | Yes | Yes |  |
#MacBook2,1 Mid 2007 | 2009-08 | Yes | Yes | Yes | Yes | Yes | Yes |  |
MacBookPro5,2 2009 | 2009-08 | Yes | Yes | Yes | Yes | Untested | Yes |  | Might need `snd_hda_intel model=mb5`
MacBookPro5 Mid 2009 | 2016-08-01 | Yes | Yes | Yes | Yes | Yes | Untested |  | Switching to TTY does not work with NVIDIA, works with Nouveau.
#MacBookPro6,2 Mid 2010 | 2025-02-16 | Yes | Yes | Yes | Yes | Yes | Yes |  |
#MacBookPro7,1 Mid 2010 | 2021-11-04 | Yes | Yes | Yes | Yes | Yes | Yes |  |
MacBookPro8,1 Early 2011 | 2025-02-16 | Yes | Yes | Yes | Yes | Yes | Yes |  | broadcom-wl required for full speed Wi-Fi.
MacBookAir4,2 Mid 2011 | 2023-04-28 | Yes | Yes | Yes | Yes | Yes | Untested |  | broadcom-wl required for full speed Wi-Fi.
MacBookAir5,2 Mid 2012 | 2024-11-16 | Yes | Yes | Yes | Yes | Yes | Untested |  | broadcom-wl required for full speed Wi-Fi.
MacBookPro9,x | 2018-03-01 | Yes | Yes | Yes | Yes | Yes | Yes |  |
MacBookAir6 2013 | 2014-10-01 | Yes | Yes | Yes | Yes | Yes | Yes |  |
MacBookAir 7,2 Early 2015 | 2021-11-01 | Yes | Yes | External | Yes | Yes | Yes |  | Guide: https://github.com/AdhamNasr/Apple_mba-Arch-i3
MacBookPro11,2 2014 | 2025-05-06 | Yes | Yes | Untested | Yes | Yes | Yes |  | Wi-Fi works with broadcom-wl. Bluetooth audio was choppy with PipeWire but works fine with PulseAudio.
MacBookPro 12,1 2015 | 2025-04-03 | Yes | Yes | Untested | Yes | Yes | Yes |  | See Broadcom wireless#BCM43602 802.11ac Wireless LAN SoC.
MacBookPro 13,3 2016 | 2025-12-04 | Yes | Yes | Yes | Yes | Untested | Yes |  | See Broadcom wireless#BCM43602 802.11ac Wireless LAN SoC.
MacBookPro 14,1 Mid 2017 | 2025-11-21 | Yes | BT only | External | Partial | Yes | No |  | Won't wake from suspend. Sometimes the brcmfmac wifi driver fails to initialize. No luck with built-in-audio.
MacBookPro16,1 2019 | 2023-01-21 | Yes | Partial | External | Yes | Yes | No |  | Must use t2linux provided kernel

## Troubleshooting

### MacBook2,1 Mid 2007

#### Boot loader

See UEFI#UEFI firmware bitness: this machine runs a 32-bit EFI. This means you should make sure the boot loader you choose supports mixed mode booting (i.e. a 64-bit OS on a 32-bit UEFI). For GRUB, use `i386-efi` as the target.

#### Rebooting

The MacBook will not reboot properly by default. It needs the `reboot=pci` kernel parameter.

#### Microphone

This article or section is a candidate for merging with PulseAudio/Troubleshooting.

Notes: This is PulseAudio specific and was added a year ago as a workaround for this model but is not specific to it. (Discuss in Talk:Laptop/Apple)

If your microphone is not working, you have probably run into a driver bug which makes PulseAudio think the digital microphone is always plugged in, disabling the normal microphone.

To work around it, disable the PulseAudio plug detector with this patch:

    --- a/usr/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
    +++ b/usr/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
    @@ -23,6 +23,8 @@

     [Jack Mic]
     required-any = any
    +state.plugged = unknown
    +state.unplugged = unknown

     [Jack Mic Phantom]
     required-any = any
    @@ -31,6 +33,8 @@

     [Jack Mic - Input]
     required-any = any
    +state.plugged = unknown
    +state.unplugged = unknown

     [Element Capture]
     switch = mute

Note This needs to be reapplied manually after every PulseAudio upgrade. PulseAudio does not support yet local customization files that could make this patch permanent.

### MacBookAir1,1 Early 2008

Since this model has only one USB port, you may find it easiest to install Arch with a powered USB hub. Plug a USB network adapter (wireless or ethernet adapter to plug into a USB port) and your Arch installation media into the USB hub.

See Mac/Troubleshooting#Wi-Fi. If you cannot get any result by scanning wireless network after boot, unload modules `b43` and `ssb` and load them again:

    # rmmod ssb
    # rmmod b43
    # modprobe b43

There is a good chance you will find what's wrong with DMA from the dmesg log.

Even if you can scan wireless networks after reloading the modules, it is still possible that you will only be able to connect to some networks, but not all of them. According to a more detailed discussion here: https://crunchbang.org/forums/viewtopic.php?id=17368, adding `pio=1,qos=0` options to the b43 module can solve this problem.

### MacBookAir2,1 Mid 2009

See Mac/Troubleshooting#Wi-Fi. Append `options b43 pio=1 qos=0` to `/etc/modprobe.d/b43.conf`.

### MacBookPro6,2 Mid 2010

Heat issues solved with mbpfan-gitAUR.

On this model only the nouveau driver can be installed when booting in UEFI mode, nvidia-340xx-dkmsAUR causes a black blank screen when Xorg loads.

### MacBookPro7,1 Mid 2010

Booting the installation media, you might encounter the following error:

    unable to handle kernel NULL pointer dereference at 0000000000000010" during pacpi_set_dmamode.

To fix this problem, boot with the option: `acpi=off`. After chrooting, add `MODULES=(ata_generic)` to `/etc/mkinitcpio.conf` and regenerate the initramfs, see Installation guide#Configure the system.

### MacBookAir5,1 Mid 2012

If you have issues with waking from sleep while in X11 such as a black screen or showing the console with a frozen mouse cursor then remove xf86-input-synaptics and install xf86-input-mtrack-gitAUR. This fixed errors such as

     (EE) [dix] bcm5974: unable to find touch point 0

and backtraces that causes X11 to crash. This might apply to Version 5,2 assuming they use the same trackpad.

### MacBookAir6,1 Early 2014

Unless you have a local repository on a USB disk, you need a USB to Ethernet adapter or a USB wireless adapter supported natively by the kernel to easily install Arch Linux, since you have to install the broadcom-wl-dkms package to make the internal wireless card work.

rEFInd uses 30 seconds to start booting, following Mac/Troubleshooting#Avoid long EFI wait before booting stops rEFInd from loading and it has to be re-installed.

### MacBookPro12,1/11,4+ 2015

#### Wireless

The `brcmfmac` driver is working, with newer firmware necessary for working 5GHz support (see here.)

Note On the Macbook Pro 12,1 if the `brcmfmac` driver can not be started and the following errors occur in the journal:

    brcmfmac: brcmf_chip_recognition: chip backplane type 15 is not supported
    brcmfmac: brcmf_pcie_probe: failed 14e4:43ba

Then check whether PCI runtime power management is enabled on the device, and disable it if so.

#### Keyboard and trackpad

Haptic feedback works out of the box due to the trackpad's built-in firmware.

There are several drivers available that provide multitouch support. The following have been confirmed working with the MacBookPro12,1.

For xf86-input-libinput the following configuration emulates some features from the macOS functionality. For more options see libinput(4).

    /etc/X11/xorg.conf.d/90-libinput.conf

    Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "NaturalScrolling" "true"
    EndSection

For xf86-input-synaptics the following configuration is necessary to make the touchpad work fully.

    /etc/X11/xorg.conf.d/60-magictrackpad.conf

    Section "InputClass"
        Identifier "Trackpad"
        Driver "synaptics"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
    EndSection

#### Graphics

Need apple_set_os to enable the integrated graphics. See PRIME for details on handling hybrid graphics.

If you are experiencing flickering issues with Xorg, you can set `i915.enable_rc6=0` as a kernel parameter, which will disable the power savings for the Intel graphics.

### MacBook9,1 Early 2016

- Booting from USB via EFI works fine, when giving the `intremap=nosid` kernel option. Remember to hold `Alt` on booting to enter the boot menu. In order to allow Linux boot directly from your system disk, you will first need to install rEFInd from the OSX recovery mode (hold `Cmd+r` during boot, then open terminal, run the refind-install script).
- The wireless card works out of the box with `brcmfmac`.
- Suspend / hibernate does not work. The problem seems to be the NVMe that does not wake up. A potential solution to this has been offered, at https://bbs.archlinux.org/viewtopic.php?pid=2176149#p2176149. When booting from an external drive, suspend / hibernate works out of the box.
- Audio recording works out of the box. Audio playback works out of the box for headphones, not for built-in speakers. Cirrus driver patch needed for making the speakers work: https://github.com/leifliddy/macbook12-audio-driver
- The keyboard and the touchpad do not work out of the box. There is a work-in-progress driver available that works well: macbook12-spi-driver-dkmsAUR. Sometimes the touchpad does not work after booting but this can be fixed by reloading the driver with `rmmod applespi && modprobe applespi`.
- The keyboard backlight does not work (no solution yet).
- For Bluetooth driver, see macbook12-bluetooth-driverAUR

### All Intel MacBooks since 2018

Internal keyboard, trackpad, Touch Bar (if your model has one), Wi-fi, and Bluetooth will not work unless you have necessary kernel modules and firmwares. You should follow the guide on https://wiki.t2linux.org/distributions/arch/installation/ for hardware support.

### iMac 2020

It seems the amdgpu driver has problems to set the native 5k resolution. If the display gets corrupted during boot when the amdgpu driver module is loaded, try forcing a lower resolution. Add e.g. `video=2560x1440@60` to your kernel parameters.

Category:

- Apple

Hidden categories:

- Pages or sections flagged with Template:Style
- Pages or sections flagged with Template:Merge

Laptop/Apple
Add topic