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 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 7:02:26 AM 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

1 sources
I believe this is the definitive resource on the state of Linux on Intel MacBook Pros: https://github.com/Dunedan/mbp-2016-linux I recently made the move away from an out-of-support macOS 12 Monterey to Debian Stable (13 trixie), after some failed attempts to upgrade macOS using OpenCore Legacy Patcher. While Linux support will always remain far from perfect with that series of MBP, it was still much better than I expected compared to my last look many years ago. I happen to get better use out of my particular setup now compared to macOS; as it's basically a glorified streaming device that I interact with through wayvnc/vncviewer out of arm's reach across a table. This also allows me to mostly avoid using the semi-busted Butterfly keyboard. In addition to having something with security updates again, I'll now never need to think about App
Read the rest
le dropping Intel support. I'd also like to note that nix-darwin support on Intel macOS is ending very soon too - but not Linux + nix as a package manager (nixpkgs) since that combination is separate to macOS + nix-darwin.
In About the security content of macOS Tahoe 26.6

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.