HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
Dunedan
mbp-2016-linux
Shell2017–2026
Dunedan / mbp-2016-linux

mbp-2016-linux

State of Linux on the MacBook Pro 2016 & 2017

36Distinct people
56Mentions
1Explicit recommenders
2.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

State of Linux on the MacBook Pro 2016 & 2017

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

I used MacBooks with Linux starting in 2006 till the end of last year. That's when I finally gave up. I really love the hardware Apple produces, but we're at a point where I…

Dunedan used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 8:59:20 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year56 dated mentions

Observed mentions: 2017-01-23 17:41:46 UTC to 2026-07-29 01:57:36 UTC.

0510152017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 6 mentions; 1 submissions, 5 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 10 mentions; 0 submissions, 10 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 16 mentions; 0 submissions, 16 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 10 mentions; 0 submissions, 10 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC615
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC10010
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC11110
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC16016
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC10010
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC202
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC000
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC000
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
State of Linux on the MacBook Pro 2016 & 2017 The following document provides an overview about Linux support for Apple's MacBook Pro 2016 and MacBook Pro 2017 models. The MacBook Pro 2016 shares surprisingly many components with the Retina MacBook (e.g. keyboard and touchpad controller, Wi-Fi and bluetooth chipsets, ...), so figuring out how things work on one device should benefit both device families. The Apple MacBook Pro 2017 models are nearly identical to their 2016 counterparts, except for the use of newer Intels Kaby Lake processors instead of Intel Skylake processors, faster memory and updated AMD Radeon GPUs in the 15-inch models. The checks if hardware works below were done with multiple Linux distributions. To state the obvious: The newer the kernel the better. The information below assumes that you run Linux 5.4 or newer. If you don't know what the model identifier for your MacBook Pro is (as that identifier is used on several occasions below), check https://support.apple.com/en-us/HT201300 Contribution If you want to contribute to get Linux running smoothly on the MacBook Pro 2016, report all findings on how to get devices working as pull requests! All help is appreciated. There is also a chat available via gitter for discussions: Current status Device Status Audio input & output Battery Bluetooth FaceTime HD camera Graphics card (Intel) Graphics card (AMD) Keyboard & Touchpad NVMe (internal SSD) Screen Suspend & Hibernation System Management Controller Thunderbolt Touch Bar Touch ID USB Wi-Fi Audio input & output With the applied Cirrus 8409 kernel driver patch from https://github.com/davidjo/snd_hda_macbookpro the internal audio input and output has been verified to work for the MacBookPro13,1, MacBookPro13,3 and MacBookPro14,3. If you are having issues with the internal audio input, and you are using PulseAudio for your Linux distro; then try switching between the built-in audio profiles and see if it's receiving the background sound with help of the pavucontrol command, it should work on 'Analog Stereo Duplex' built-in audio profile. With the MacBookPro14,1 the internal audio output is working, however the internal audio input is not working. For the rest of the MacBook Pro models the audio via HDMI or any USB-connected audio device is working, so at least they can act as a workaround until internal audio is working. See also: https://bugzilla.kernel.org/show_bug.cgi?id=195671 https://bugzilla.kernel.org/show_bug.cgi?id=110561 http://mailman.alsa-project.org/pipermail/alsa-devel/2018-November/141942.html Battery Working fine, including the interface to get current capacity, temperature, etc. Battery life is still suboptimal, because power saving modes for several devices, like display (panel self refresh), SSD or the Thunderbolt controllers, aren't working yet. You can expect a battery life of less than 4 hours. Bluetooth Works out of the box, except for the models without Touch Bar, which still suffer from a bug and need an additional patch as noted in #29 (comment) Transmitting audio using A2DP is still choppy for unknown reasons, maybe because the Bluetooth support is limited to lower bandwidth applications so far. See also: https://bugzilla.kernel.org/show_bug.cgi?id=110901 FaceTime HD camera In the MacBookPro13,1 (without Touch Bar) the FaceTime HD camera is connected via PCIe, like in previous MacBook Pro's. It's working with the bcwc_pcie driver. The models with Touch Bar have the FaceTime HD camera connected through the iBridge device via USB. They are exposed as regular USB video devices and are supported by the uvcvideo driver out of the box. Graphics card Intel Graphical output using the Intel GPU is working out of the box on the MacBookPro 13,1 and 13,2, without dedicated AMD GPU. For the MacBookPro 13,3 with dedicated AMD GPU, only the AMD GPU is enabled when booting an OS which isn't macOS, so you have to follow the instructions in the following link to enable the integrated Intel GPU, if you want to use it: #6 (comment) Intel GPU has not yet been tested on the MacBookPro16,1. Connecting external displays via USB-C-to-DisplayPort cables works fine, including connections with daisy-chaining/MST. An actual tested and working setup includes concurrent output on the internal display and two external displays daisy-chained together with Full HD each. AMD Works out of the box for the MacBookPro13,3 and MacBookPro14,3. The MacBookPro16,1 currently requires a 5.6-RC kernel and the latest amdgpu drivers. Keyboard & Touchpad Works out of the box for the MacBookPro13,* and MacBookPro14,*. For models with a T2 chip (MacBookPro15,* MacBookPro16,1) you'll need the BCE drivers from https://github.com/MCMrARM/mbp2018-bridge-drv and the touchpad and keyboard patches from https://github.com/aunali1/linux-mbp-arch. For earlier Linux versions you can get the driver from https://github.com/roadrunner2/macbook12-spi-driver. The Esc and function keys are part of the Touch Bar in all Touch Bar-models, so follow the instructions for the Touch Bar to get it working. Beside the actual keyboard, the power button and the lid close event work out of the box. Palm rejection based on touch-sizes and disable-touchpad-while-typing are working with this patch to libinput (master branch). See also: https://bugzilla.kernel.org/show_bug.cgi?id=99891 https://bugzilla.kernel.org/show_bug.cgi?id=108331 NVMe Works out of the box. The SSDs used in the MacBook Pros don't seem to support APST. As it's currently unknown how power saving works for those SSDs it's likely they consume way more power than they need to, therefore reducing the battery life. Screen Works out of the box. Adjustable screen brightness only works out of the box for the models without additional AMD Radeon GPU (MacBookPro13,1 and MacBookPro1
Read the full README on GitHub

What Hacker News says

6 sources
> Can I install Debian on it and have stuff working? Depends on the kind of Mac you buy. I can only comment on their mobile offerings: - Best supported are the current MacBook Airs. Everything except the Webcam should work out-of-the-box. The webcam needs the out-of-tree bcwc_pcie driver (https://github.com/patjak/bcwc_pcie)). - The Retina MacBooks need some manual work before being usable (e.g. need to compile out-of-tree keyboard & touchpad driver (https://github.com/cb22/macbook12-spi-driver)), but should work fine as well. - The MacBook Pros before October 2016 are also quite good supported, the support for newer ones is still quite incomplete (check out https://github.com/Dunedan/mbp-2016-linux for details), although it's possible to use them as daily driver if you're aware of the limitations.
In “We have obtained fully functional JTAG for Intel CSME via USB DCI”
Linux runs pretty poorly on Apple Hardware. I have tried 2 times and the rule of thumb is 2 generations back has the best support since it takes a while to iron out the bugs. I laugh at people when they say they use Linux on their new Macbooks and they say they have a partition but don't really use it due to something. Macbook 2016-2017 Not Working - Input and Output Sound - Doesn't Work - Suspend - Doesn't Work - Bluetooth - Doesn't Work - Touch Id - Doesn't Work (Not surprising) - Wifi on 13.2.and 13.3; 14.2 and 14.3 - Doesn't Work https://gist.github.com/roadrunner2/1289542a748d9a104e7baec6... https://github.com/Dunedan/mbp-2016-linux
In Linux Foundation director runs Mac OS? [video]

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.